HDK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
WIRE_CollisionItemIterator.h
Go to the documentation of this file.
1
/*
2
* PROPRIETARY INFORMATION. This software is proprietary to
3
* Side Effects Software Inc., and is not to be reproduced,
4
* transmitted, or disclosed in any way without written permission.
5
*
6
* NAME: WIRE_CollisionItemIterator.h
7
*
8
* COMMENTS:
9
*/
10
11
#ifndef __WIRE_CollisionItemIterator_h__
12
#define __WIRE_CollisionItemIterator_h__
13
14
#include "
WIRE_API.h
"
15
#include "
WIRE_SimpleDetailReader.h
"
16
#include <
SIM/SIM_Object.h
>
17
#include <
SIM/SIM_Time.h
>
18
#include <
UT/UT_IntArray.h
>
19
#include <
UT/UT_Vector3.h
>
20
21
// class to explore the collision elements for a wire object
22
class
WIRE_API
WIRE_CollisionItemIterator
23
{
24
public
:
25
explicit
WIRE_CollisionItemIterator
(
const
SIM_Object
&
object
,
26
const
SIM_Time
×tep);
27
28
bool
isValid
()
const
{
return
myReader.isValid(); }
29
30
// methods to iterate over the collision elements
31
bool
atEnd()
const
;
32
fpreal
getRadius()
const
;
33
void
advance();
34
void
rewind();
35
36
// methods to iterate over the vertices making up the current collision
37
// element being explored
38
bool
atEndVertex()
const
;
39
UT_Vector3
getVertexPosition()
const
;
40
UT_Vector3
getVertexVelocity()
const
;
41
void
advanceVertex();
42
void
rewindVertex();
43
44
// returns true if the geometry from the i0th and i1th elements reference
45
// a common point
46
bool
hasCommonPoint(
exint
i0,
exint
i1
)
const
;
47
48
// retrieves the primitive and first vertex for a given collision element
49
void
getEdge(
exint
i,
exint
&prim,
exint
&vtx)
const
;
50
51
private
:
52
const
WIRE_SimpleDetailReader
myReader;
53
SIM_Time
myTimestep;
54
UT_IntArray
myIdMapping;
55
exint
myVertexId;
56
exint
myPrim;
57
exint
myEdge;
58
};
59
60
#endif
UT_IntArray.h
SIM_Time
Definition:
SIM_Time.h:19
WIRE_CollisionItemIterator
Definition:
WIRE_CollisionItemIterator.h:22
SIM_Time.h
WIRE_SimpleDetailReader.h
WIRE_API
#define WIRE_API
Definition:
WIRE_API.h:10
UT_Vector3.h
exint
int64 exint
Definition:
SYS_Types.h:125
WIRE_CollisionItemIterator::isValid
bool isValid() const
Definition:
WIRE_CollisionItemIterator.h:28
UT_Vector3T< float >
UT_ValArray< int >
SIM_Object.h
i1
GLint i1
Definition:
glad.h:2724
WIRE_API.h
WIRE_SimpleDetailReader
Definition:
WIRE_SimpleDetailReader.h:96
fpreal
fpreal64 fpreal
Definition:
SYS_Types.h:277
SIM_Object
Definition:
SIM_Object.h:33
WIRE
WIRE_CollisionItemIterator.h
Generated on Tue Dec 17 2024 03:42:54 for HDK by
1.8.6