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
SIM_GeoVisitor.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
*/
7
8
#ifndef __SIM_GeoVisitor_h__
9
#define __SIM_GeoVisitor_h__
10
11
#include "
SIMZ_API.h
"
12
13
#include <
UT/UT_VectorTypes.h
>
14
15
class
GA_PointGroup
;
16
class
GEO_Quadric
;
17
class
GU_Detail
;
18
19
class
SIMZ_API
SIM_GeoVisitor
20
{
21
public
:
22
virtual
~
SIM_GeoVisitor
();
23
24
/// Called for each sphere or tube primitive in the geometry.
25
virtual
void
onPrimQuadric(
const
GEO_Quadric
*quadric) = 0;
26
27
/// Called for each convex hull shape in the geometry.
28
virtual
void
onConvexHull(
const
GU_Detail
&gdp,
29
const
GA_PointGroup
*
points
) = 0;
30
31
/// Called for each box shape that is found in the geometry.
32
virtual
void
onBox(
const
UT_Vector3
&
center
,
const
UT_Vector3
&
size
,
33
const
UT_Matrix3
&
rot
,
34
const
GU_Detail
&gdp,
35
const
GA_PointGroup
*points) = 0;
36
37
/// Get the refiner user to refine to polygons to computer the
38
/// the convex hulls.
39
virtual
void
refine(
const
GU_Detail
*
src
,
GU_Detail
&dest,
40
const
UT_Matrix4D
&xform) = 0;
41
};
42
43
/// If group_by_connectivity is false, a single shape will be created for the
44
/// entire geometry. Otherwise, a separate shape will be created for each
45
/// connected component in the geometry.
46
void
SIMZ_API
SIMvisitGeometry
(
const
GU_Detail
&gdp,
SIM_GeoVisitor
&visitor,
47
bool
group_by_connectivity);
48
49
#endif
GEO_Quadric
Definition:
GEO_Quadric.h:30
SIMvisitGeometry
void SIMZ_API SIMvisitGeometry(const GU_Detail &gdp, SIM_GeoVisitor &visitor, bool group_by_connectivity)
SIMZ_API
#define SIMZ_API
Definition:
SIMZ_API.h:10
UT_Matrix3T< float >
UT_Matrix4T< fpreal64 >
points
GLdouble GLdouble GLint GLint const GLdouble * points
Definition:
glad.h:2676
GA_Names::rot
GA_API const UT_StringHolder rot
UT_Vector3T< float >
GA_PointGroup
Definition:
GA_ElementGroup.h:33
UT_VectorTypes.h
size
GLsizeiptr size
Definition:
glcorearb.h:664
SIMZ_API.h
GU_Detail
Definition:
GU_Detail.h:154
align::center
Definition:
core.h:1870
SIM_GeoVisitor
Definition:
SIM_GeoVisitor.h:19
src
GLenum src
Definition:
glcorearb.h:1793
SIMZ
SIM_GeoVisitor.h
Generated on Tue Dec 17 2024 03:41:46 for HDK by
1.8.6