#include <OSGPolygon.h>
Inheritance diagram for OSGPolygon:
Public Types | |
enum | edgeProjection { XY, YZ, XZ, NONE_PROJ } |
typedef unsigned | OID |
Public Member Functions | |
OSGPolygon (GLint, GLint, osg::PrimitiveSet::Type, osg::PrimitiveSet::Mode, osg::Vec3Array *, osg::PrimitiveSet *, osg::Vec3Array *, osg::Geometry::AttributeBinding) | |
virtual SceneGraphObject * | clone () const |
virtual Geometry * | clone (const Matrix4 *) const |
virtual Vector3 | getVertex (unsigned) const |
virtual Vector3 | getVertNormal (unsigned) const |
virtual Vector2 | getVertUVCoord (unsigned) const |
virtual bool | haveVertNormals (void) const |
virtual bool | haveVertUVCoords (void) const |
osg::Vec3Array * | globalVertexArray (void) |
GLint | firstVertex (void) const |
GLint | firstVertexOfPrimitive (void) const |
osg::PrimitiveSet::Mode | vertexMode (void) const |
osg::PrimitiveSet * | drawArray (void) const |
osg::PrimitiveSet::Type | primitiveType (void) const |
osg::Vec3Array * | globalNormalArray (void) |
osg::Geometry::AttributeBinding | normalBinding (void) const |
virtual void | setSharedGeometry (AutoPtr< Geometry > *) |
virtual void | setPrivateGeometry (Geometry *) |
virtual void | setSharedEmittance (AutoPtr< Emittance > *) |
virtual void | setPrivateEmittance (Emittance *) |
virtual void | setSharedBRDF (AutoPtr< BRDF > *) |
virtual void | setPrivateBRDF (BRDF *) |
virtual void | setSharedTransformation (AutoPtr< Transform > *) |
virtual void | setPrivateTransformation (Transform *) |
virtual void | appendSharedMaterial (AutoPtr< Material > *) |
virtual void | appendPrivateMaterial (Material *) |
virtual void | appendSharedAttribute (AutoPtr< SGAttribute > *) |
virtual void | appendPrivateAttribute (SGAttribute *) |
virtual Geometry * | geometry (void) |
virtual const Geometry * | geometry (void) const |
virtual Emittance * | emittance (void) |
virtual const Emittance * | emittance (void) const |
virtual BRDF * | brdf (void) |
virtual const BRDF * | brdf (void) const |
virtual Transform * | transformation (void) |
virtual const Transform * | transformation (void) const |
virtual Texture * | texture (void) |
virtual const Texture * | texture (void) const |
virtual void | dump (const char *, const char *) |
virtual void | __debug (void) |
virtual void | rayIntersection (PointEnv *pPE, int mask, const Vector3 &origin, const Vector3 &direction, float maxD=MAXFLOAT) |
virtual bool | mapToUV (const Vector3 &v, Vector2 &uv) |
virtual void | randomSample (int mask, PointEnv &pe, double *pdf) |
virtual bool | randomDirection (const Vector3 &pov, Vector3 &dir, double *pdf) |
virtual Interval | extent (const Vector3 &direction) const |
Interval | extent (float x, float y, float z) const |
virtual Vector3 | centroid (void) const |
virtual double | radius (const Vector3 ¢roid) const |
virtual double | radius (void) const |
virtual bool | separation (Geometry &geom, Vector3 *pDir) |
virtual double | distance (const Geometry &geom, Vector3 *pDir) |
bool | pointInsidePolygon (const Vector3 &p, Vector3 *n, Vector2 *u) |
virtual Vector3 | getFacetNormal (void) const |
virtual bool | haveFixedNormal (void) const |
virtual unsigned | numVertices (void) const |
virtual double | getFXYZ (void) const |
virtual edgeProjection | getEdgeProjection (void) const |
bool | setVertices (const Vector3 *va, unsigned n) |
bool | setNormals (const Vector3 *na) |
bool | setUVCoords (const Vector2 *uva) |
void | setFacetNormal (const Vector3 &norm, bool fixedn) |
void | insideOut (bool b) |
Mesh * | mesh (int density=0) const |
virtual bool | hasSubnodes (void) const |
virtual IteratorSDS * | traverseSubnodes (void) const |
void | setOID (OID oid=0) |
OID | getOID () const |
void | setName (const char *name="") |
const char * | getName (void) const |
virtual void | setSharedDiffuseBRDF (AutoPtr< DiffuseBRDF > *) |
virtual void | setPrivateDiffuseBRDF (DiffuseBRDF *) |
virtual void | setSharedSpecularBRDF (AutoPtr< SpecularBRDF > *) |
virtual void | setPrivateSpecularBRDF (SpecularBRDF *) |
virtual void | setSharedTexture (AutoPtr< Texture > *) |
virtual void | setPrivateTexture (Texture *) |
virtual DiffuseBRDF * | diffuseBRDF (void) |
virtual const DiffuseBRDF * | diffuseBRDF (void) const |
virtual SpecularBRDF * | specularBRDF (void) |
virtual const SpecularBRDF * | specularBRDF (void) const |
void | inspectMaterials (Visitor &) |
void | inspectAttributes (Visitor &) |
virtual bool | supportsEnergy (void) |
virtual AutoPtr< EnergyCoat > * | getEnergyState (void) |
virtual void | setEnergyState (AutoPtr< EnergyCoat > *e) |
virtual bool | tangible (void) const |
Static Public Attributes | |
static const float | EPS = 1e-03 |
epsilon variation (tolerance) of zero | |
Protected Member Functions | |
virtual void | _duplicate_attributes (const Geometry &) |
virtual Vector3 | _get_vertex (unsigned) const |
virtual Vector3 | _get_vert_normal (unsigned) const |
OSGPolygon () | |
virtual Mesh * | _mesh (int) const |
virtual void | _duplicate_attributes (const SceneGraphObject &) |
virtual Vector2 | _get_vert_uv_coord (unsigned) const |
virtual void | _rotateX (float) |
virtual void | _rotateY (float) |
virtual void | _rotateZ (float) |
virtual void | _rotate (float, const Vector3 &) |
virtual void | _rotate (const Matrix3 &) |
virtual void | _translate (float, float, float) |
void | _translate (const Vector3 &v) |
virtual void | _transform (const Matrix4 &) |
virtual void | _scale (float) |
virtual Vector3 | _get_facet_normal (void) const |
void | _set_edge_projection (void) |
double * | _precompute_proj (void))[6];bool_separation_by_plane(const Geometry &) const ;bool_separation_by_edges(Geometry &) const ;bool_point_inside_polygon(const Vector3 &, Vector3 *, Vector2 * |
bool | _coplanar_tri_collision (Polygon &, const Vector3 &v0, const Vector3 &v1, const Vector3 &v2, const Vector3 &u0, const Vector3 &u1, const Vector3 &u2) |
int | _triTriCollision (Polygon &) |
bool | _have_private_geometry (void) const |
bool | _have_shared_geometry (void) const |
bool | _have_geometry (void) const |
bool | _have_private_emittance (void) const |
bool | _have_shared_emittance (void) const |
bool | _have_emittance (void) const |
bool | _have_private_diff_brdf (void) const |
bool | _have_shared_diff_brdf (void) const |
bool | _have_private_spec_brdf (void) const |
bool | _have_shared_spec_brdf (void) const |
bool | _have_diff_brdf (void) const |
bool | _have_spec_brdf (void) const |
bool | _have_private_transformation (void) const |
bool | _have_shared_transformation (void) const |
bool | _have_transformation (void) const |
bool | _have_private_texture (void) const |
bool | _have_shared_texture (void) const |
bool | _have_texture (void) const |
Protected Attributes | |
GLint | _firstVertexOfPrimitive |
GLint | _firstVertex |
osg::PrimitiveSet::Type | _primitiveType |
osg::PrimitiveSet::Mode | _vertexMode |
osg::Vec3Array * | _globalVertexArray |
osg::PrimitiveSet * | _pDrawArray |
osg::Vec3Array * | _globalNormalArray |
osg::Geometry::AttributeBinding | _normal_binding |
unsigned * | _vindices |
Array of indices to (global) array of vertices. | |
unsigned * | _nindices |
Array of indices to (global) array of normals. | |
unsigned * | _uvindices |
Array of indices to (global) array of UV coords. | |
Vector3 * | _vertices |
array of vertices | |
Vector3 * | _normals |
vertex normals, can be NULL | |
Vector2 * | _uvCoords |
UV coordinates (e.g. texture coords.). | |
unsigned | _nVert |
number of polygon's vertices | |
Vector3 | _normal |
facet normal, NEVER ACCESS DIRECTLY BUT THROUGH THE _get_facet_normal() | |
bool | _normalFixed |
fixed/random orientation of facet normal | |
double | _fxyz |
edgeProjection | _edgeProjection |
best projection plane | |
double | _area |
double(* | _proj )[6] |
speed up of ray intersection calculations | |
bool | _insideOut |
OID | _oid |
(unique) object identificator | |
char * | _name |
object name | |
bool | _tangible |
tangible object has geometry or is composed of at least one tangible object | |
AutoPtr< Geometry > * | _pAutoGeometry |
Geometry * | _pGeometry |
AutoPtr< Emittance > * | _pAutoEmittance |
Emittance * | _pEmittance |
AutoPtr< DiffuseBRDF > * | _pAutoDiffuseBRDF |
DiffuseBRDF * | _pDiffuseBRDF |
AutoPtr< SpecularBRDF > * | _pAutoSpecularBRDF |
SpecularBRDF * | _pSpecularBRDF |
AutoPtr< Transform > * | _pAutoTransformation |
Transform * | _pTransformation |
AutoPtr< Texture > * | _pAutoTexture |
Texture * | _pTexture |
List< Material > | _privateMaterials |
List< AutoPtr< Material > > | _sharedMaterials |
List< SGAttribute > | _privateAttributes |
List< AutoPtr< SGAttribute > > | _sharedAttributes |
Definition at line 22 of file OSGPolygon.h.
|
Definition at line 38 of file SceneGraphObject.h. |
|
|
|
Definition at line 38 of file OSGPolygon.h. Referenced by OSGPolygon::clone(). |
|
|
for debugging purposes. Reimplemented from Polygon. Definition at line 322 of file _Surface.cc. References _Surface::_get_vertex(). |
|
Definition at line 302 of file Polygon.cc. References ESG_EDGE_AGAINST_TRI_EDGES. |
|
Definition at line 11 of file _Surface.cc. Referenced by _Surface::clone(). |
|
Reimplemented from _Surface. Definition at line 5 of file OSGPolygon.cc. References Geometry::_duplicate_attributes(), Polygon::_edgeProjection, OSGPolygon::_firstVertex, OSGPolygon::_firstVertexOfPrimitive, Polygon::_fxyz, OSGPolygon::_globalVertexArray, _Surface::_nindices, Polygon::_normal, Polygon::_normalFixed, Polygon::_normals, Polygon::_nVert, OSGPolygon::_pDrawArray, Polygon::_proj, SceneGraphObject::_tangible, OSGPolygon::_vertexMode, Polygon::_vertices, and _Surface::_vindices. Referenced by OSGPolygon::clone(). |
|
Definition at line 80 of file Polygon.cc. References Polygon::_get_vertex(), and Polygon::_nVert. Referenced by _Surface::_Surface(), OSGPolygon::OSGPolygon(), Rectangle::Rectangle(), and Polygon::setVertices(). |
|
Reimplemented from _Surface. Definition at line 113 of file OSGPolygon.cc. References OSGPolygon::_firstVertex, OSGPolygon::_firstVertexOfPrimitive, OSGPolygon::_globalNormalArray, OSGPolygon::_normal_binding, OSGPolygon::_pDrawArray, OSGPolygon::_primitiveType, and OSGPolygon::_vertexMode. Referenced by OSGPolygon::getVertNormal(). |
|
Reimplemented from Polygon. Definition at line 80 of file _Surface.cc. References _Surface::_uvindices. Referenced by _Surface::getVertUVCoord(). |
|
Reimplemented from _Surface. Definition at line 36 of file OSGPolygon.cc. References OSGPolygon::_firstVertex, OSGPolygon::_firstVertexOfPrimitive, OSGPolygon::_globalVertexArray, OSGPolygon::_pDrawArray, OSGPolygon::_primitiveType, and OSGPolygon::_vertexMode. Referenced by OSGPolygon::getVertex(), and OSGPolygon::OSGPolygon(). |
|
Definition at line 55 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoDiffuseBRDF, and SceneGraphObject::_pDiffuseBRDF. |
|
Definition at line 30 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoEmittance, and SceneGraphObject::_pEmittance. |
|
Definition at line 15 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoGeometry, and SceneGraphObject::_pGeometry. |
|
Definition at line 35 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoDiffuseBRDF, and SceneGraphObject::_pDiffuseBRDF. Referenced by SceneGraphObject::setPrivateDiffuseBRDF(), SceneGraphObject::setSharedDiffuseBRDF(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 20 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoEmittance, and SceneGraphObject::_pEmittance. Referenced by SceneGraphObject::setPrivateEmittance(), SceneGraphObject::setSharedEmittance(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 5 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoGeometry, and SceneGraphObject::_pGeometry. Referenced by SceneGraphObject::setPrivateGeometry(), SceneGraphObject::setSharedGeometry(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 45 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoSpecularBRDF, and SceneGraphObject::_pSpecularBRDF. Referenced by SceneGraphObject::setPrivateSpecularBRDF(), SceneGraphObject::setSharedSpecularBRDF(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 80 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoTexture, and SceneGraphObject::_pTexture. Referenced by SceneGraphObject::setPrivateTexture(), SceneGraphObject::setSharedTexture(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 65 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoTransformation, and SceneGraphObject::_pTransformation. Referenced by SceneGraphObject::setPrivateTransformation(), SceneGraphObject::setSharedTransformation(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 40 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoDiffuseBRDF, and SceneGraphObject::_pDiffuseBRDF. Referenced by SceneGraphObject::setPrivateDiffuseBRDF(), SceneGraphObject::setSharedDiffuseBRDF(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 25 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoEmittance, and SceneGraphObject::_pEmittance. Referenced by SceneGraphObject::setPrivateEmittance(), SceneGraphObject::setSharedEmittance(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 10 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoGeometry, and SceneGraphObject::_pGeometry. Referenced by SceneGraphObject::setPrivateGeometry(), SceneGraphObject::setSharedGeometry(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 50 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoSpecularBRDF, and SceneGraphObject::_pSpecularBRDF. Referenced by SceneGraphObject::setPrivateSpecularBRDF(), SceneGraphObject::setSharedSpecularBRDF(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 85 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoTexture, and SceneGraphObject::_pTexture. Referenced by SceneGraphObject::setPrivateTexture(), SceneGraphObject::setSharedTexture(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 70 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoTransformation, and SceneGraphObject::_pTransformation. Referenced by SceneGraphObject::setPrivateTransformation(), SceneGraphObject::setSharedTransformation(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 60 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoSpecularBRDF, and SceneGraphObject::_pSpecularBRDF. |
|
Definition at line 90 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoTexture, and SceneGraphObject::_pTexture. |
|
Definition at line 75 of file SceneGraphObject.cc. References SceneGraphObject::_pAutoTransformation, and SceneGraphObject::_pTransformation. |
|
Reimplemented from Polygon. Definition at line 6 of file _Surface.cc. |
|
Referenced by Rectangle::_scale(). |
|
Reimplemented from Polygon. Definition at line 127 of file _Surface.cc. References Polygon::_fxyz, Polygon::_normal, Polygon::_proj, Polygon::_set_edge_projection(), and _Surface::getVertex(). |
|
Reimplemented from Polygon. Definition at line 115 of file _Surface.cc. References Polygon::_fxyz, Polygon::_normal, Polygon::_proj, Polygon::_set_edge_projection(), and _Surface::getVertex(). Referenced by Surface::_rotate(), Surface::_rotateX(), Surface::_rotateY(), and Surface::_rotateZ(). |
|
Reimplemented from Polygon. Definition at line 85 of file _Surface.cc. References Polygon::_fxyz, Polygon::_normal, Polygon::_proj, Polygon::_set_edge_projection(), and _Surface::getVertex(). |
|
Reimplemented from Polygon. Definition at line 95 of file _Surface.cc. References Polygon::_fxyz, Polygon::_normal, Polygon::_proj, Polygon::_set_edge_projection(), and _Surface::getVertex(). |
|
Reimplemented from Polygon. Definition at line 105 of file _Surface.cc. References Polygon::_fxyz, Polygon::_normal, Polygon::_proj, Polygon::_set_edge_projection(), and _Surface::getVertex(). |
|
Reimplemented from Polygon. Definition at line 150 of file _Surface.cc. References Polygon::_fxyz, and Polygon::_proj. Referenced by Surface::_scale(). |
|
Definition at line 104 of file Polygon.cc. References Polygon::_edgeProjection, Polygon::_normal, Polygon::XY, Polygon::XZ, and Polygon::YZ. Referenced by _Surface::_rotate(), _Surface::_rotateX(), _Surface::_rotateY(), _Surface::_rotateZ(), _Surface::_transform(), OSGPolygon::OSGPolygon(), Rectangle::Rectangle(), Polygon::setFacetNormal(), and Polygon::setVertices(). |
|
Reimplemented from Polygon. Definition at line 140 of file _Surface.cc. References Polygon::_fxyz, Polygon::_normal, Polygon::_proj, Polygon::_set_edge_projection(), and _Surface::getVertex(). Referenced by Surface::_rotate(), OSGPolygon::clone(), and _Surface::clone(). |
|
Definition at line 38 of file Geometry.h. |
|
Reimplemented from Polygon. Definition at line 135 of file _Surface.cc. References Polygon::_fxyz, Polygon::_normal, and _Surface::getVertex(). |
|
Triangle-triangle intersection test. Reference: Tomas Moller, 1997. "A Fast Triangle-Triangle Intersection Test", Journal of Graphics Tools, 2(2), 1997 Although the input parametters are polygons, collision works with only triangles. That is, only the first three coordinates of both polygons are used! Returns: -1 = detection failed (not triangles?) 0 = separation 1 = collision Definition at line 351 of file Polygon.cc. References Polygon::_fxyz, Polygon::_get_vertex(), Polygon::_normal, Geometry::EPS, ESG_COMPUTE_INTERVALS, ESG_SORT, and Polygon::numVertices(). Referenced by Polygon::separation(). |
|
Reimplemented from SceneGraphObject. Definition at line 89 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 87 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 88 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 86 of file _Surface.h. |
|
Definition at line 99 of file _Surface.h. |
|
Definition at line 93 of file _Surface.h. |
|
Implements Geometry. Definition at line 795 of file Polygon.cc. References Polygon::_get_vertex(). Referenced by SurfaceMesh::getActPlaneCentroid(). |
|
Duplicates and transforms geometry
Reimplemented from _Surface. Definition at line 216 of file OSGPolygon.cc. References OSGPolygon::_duplicate_attributes(), _Surface::_transform(), and OSGPolygon::OSGPolygon(). |
|
Duplicates geometry
Reimplemented from _Surface. Definition at line 209 of file OSGPolygon.cc. References OSGPolygon::_duplicate_attributes(), and OSGPolygon::OSGPolygon(). |
|
Definition at line 146 of file SceneGraphObject.h. |
|
Definition at line 139 of file SceneGraphObject.h. |
|
Computes approximate distance between this and given geometries (lower bound of distance)
Implements Geometry. Definition at line 841 of file Polygon.cc. References MINDOUBLE. |
|
Definition at line 66 of file OSGPolygon.h. |
|
Writes information about this geometry to std. out.
Reimplemented from Polygon. Definition at line 264 of file _Surface.cc. References _Surface::_nindices, Polygon::_normal, Polygon::_normalFixed, _Surface::_uvindices, _Surface::_vindices, _Surface::haveVertNormals(), and _Surface::haveVertUVCoords(). |
|
Reimplemented from SceneGraphObject. Definition at line 98 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 92 of file _Surface.h. |
|
Returns extent occupied by the geometry in given direction
Definition at line 124 of file Geometry.h. |
|
Returns extent occupied by the geometry in given direction
Implements Geometry. Definition at line 769 of file Polygon.cc. References Polygon::_get_vertex(), Interval::max, MAXFLOAT, and Interval::min. |
|
Definition at line 63 of file OSGPolygon.h. |
|
Definition at line 64 of file OSGPolygon.h. |
|
Reimplemented from SceneGraphObject. Definition at line 97 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 91 of file _Surface.h. |
|
Definition at line 922 of file Polygon.cc. |
|
Reimplemented in Shape. Definition at line 168 of file SceneGraphObject.h. |
|
Definition at line 873 of file Polygon.cc. References Polygon::_normal. Referenced by Surface::_mesh(), SurfaceMesh::getActPlane(), and SurfaceMesh::getActPlaneNormal(). |
|
Definition at line 917 of file Polygon.cc. References Polygon::_fxyz. Referenced by SurfaceMesh::getActPlane(). |
|
Definition at line 107 of file SceneGraphObject.h. Referenced by NodesByNameExpl::_explore(). |
|
Definition at line 97 of file SceneGraphObject.h. Referenced by LightsExplorer::_process_leaf(). |
|
Reimplemented from _Surface. Definition at line 224 of file OSGPolygon.cc. References OSGPolygon::_get_vertex(), OSGPolygon::_globalVertexArray, and OSGPolygon::_pDrawArray. Referenced by OSGAdapter::getVertices(). |
|
Reimplemented from _Surface. Definition at line 231 of file OSGPolygon.cc. References OSGPolygon::_get_vert_normal(), and OSGPolygon::haveVertNormals(). |
|
Reimplemented from _Surface. Definition at line 55 of file OSGPolygon.h. |
|
Definition at line 68 of file OSGPolygon.h. |
|
Definition at line 62 of file OSGPolygon.h. |
|
Determines whether the node has children
Implements SceneGraphObject. |
|
Definition at line 878 of file Polygon.cc. References Polygon::_normalFixed. Referenced by Surface::_mesh(). |
|
Reimplemented from _Surface. Definition at line 236 of file OSGPolygon.cc. References OSGPolygon::_globalNormalArray, OSGPolygon::_normal_binding, and OSGPolygon::_pDrawArray. Referenced by OSGPolygon::getVertNormal(). |
|
Reimplemented from _Surface. Definition at line 57 of file OSGPolygon.h. |
|
Inverts facet normals (turns the object inside-out)
Definition at line 56 of file Geometry.h. |
|
Definition at line 389 of file SceneGraphObject.cc. References SceneGraphObject::_privateAttributes, SceneGraphObject::_sharedAttributes, List::firstItem(), and List::nextItem(). |
|
Definition at line 378 of file SceneGraphObject.cc. References SceneGraphObject::_privateMaterials, SceneGraphObject::_sharedMaterials, List::firstItem(), and List::nextItem(). Referenced by POVRayExporter::_process_leaf(). |
|
Maps 3D point from surface to the UV surface representation
Implements Geometry. Definition at line 687 of file Polygon.cc. |
|
Returns polygonal mesh computed from this geometry
Definition at line 24 of file Geometry.cc. References Geometry::_insideOut, Geometry::_mesh(), and Mesh::turnInsideOut(). Referenced by BVH::__get_edges(), BVH::__get_meshes(), NurbsSurface::_mesh(), and POVRayExporter::_process_leaf(). |
|
Definition at line 69 of file OSGPolygon.h. |
|
Definition at line 912 of file Polygon.cc. Referenced by Surface::_mesh(), Polygon::_triTriCollision(), SurfaceMesh::getActVert2(), SurfaceMesh::getActVertNormal2(), SurfaceMesh::goToNextEdge(), and Surface::numEdges(). |
|
|
|
Definition at line 67 of file OSGPolygon.h. |
|
Returns radius of minimal packing sphere with center in the ceontroid of the geometry
Reimplemented in Cylinder, NurbsSurface, Point3D, Sphere, and Surface. Definition at line 148 of file Geometry.h. |
|
Returns radius of minimal packing sphere having given center
Implements Geometry. Definition at line 806 of file Polygon.cc. References Polygon::_get_vertex(), and MAXDOUBLE. |
|
Computes random direction towards the surface in accord to the point of view.
Implements Geometry. Definition at line 762 of file Polygon.cc. References Polygon::_fxyz, Polygon::_normal, and Polygon::_normalFixed. Referenced by Surface::randomDirection(). |
|
Computes random point on the surface
Implements Geometry. Reimplemented in Rectangle, and Triangle. Definition at line 692 of file Polygon.cc. References Polygon::_get_vertex(), Polygon::_normal, ENV_HAVE_NOTHING, ENV_WANT_NORMAL, ENV_WANT_SURFACE_POINT, ENV_WANT_UV_COORD, PointEnv::mask, Interval::max, and Interval::min. Referenced by Surface::randomSample(). |
|
Computes point of intersection of ray with this geometry
Implements Geometry. Definition at line 624 of file Polygon.cc. References Polygon::_fxyz, Polygon::_normal, Polygon::_normalFixed, PointEnv::distance, ENV_HAVE_DISTANCE, ENV_HAVE_INTERFERENCE, ENV_HAVE_INTERSECTION, ENV_HAVE_N_DOT_D, ENV_HAVE_N_DOT_O, ENV_HAVE_NORMAL, ENV_HAVE_NOTHING, ENV_HAVE_UV_COORD, ENV_WANT_NORMAL, ENV_WANT_UV_COORD, Geometry::EPS, Polygon::haveVertNormals(), Polygon::haveVertUVCoords(), PointEnv::intersection, PointEnv::mask, PointEnv::nd, PointEnv::no, PointEnv::normal, PointEnv::normalOrientation, PointEnv::OUTWARDS_NORMAL, PointEnv::RANDOM_NORMAL, and PointEnv::uvCoord. |
|
Checks if there is separation between this and given geometries
Implements Geometry. Definition at line 820 of file Polygon.cc. References Polygon::_normal, and Polygon::_triTriCollision(). |
|
Sets energy state (replaces energy coat).
Reimplemented in LightSource, and Shape. Definition at line 175 of file SceneGraphObject.h. |
|
Sets facet normal.
Definition at line 1000 of file Polygon.cc. References Polygon::_fxyz, Polygon::_get_vertex(), Polygon::_normal, Polygon::_normalFixed, and Polygon::_set_edge_projection(). Referenced by Polygon::Polygon(). |
|
Definition at line 99 of file SceneGraphObject.h. |
|
Sets normals of polygon's vertices. Old normals are deleted, if any.
Definition at line 960 of file Polygon.cc. References Polygon::_normals. Referenced by Polygon::Polygon(). |
|
Definition at line 96 of file SceneGraphObject.h. |
|
Definition at line 82 of file _Surface.h. |
|
Definition at line 259 of file SceneGraphObject.cc. References SceneGraphObject::_have_private_diff_brdf(), SceneGraphObject::_have_shared_diff_brdf(), SceneGraphObject::_pAutoDiffuseBRDF, and SceneGraphObject::_pDiffuseBRDF. |
|
Reimplemented from SceneGraphObject. Definition at line 80 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 78 of file _Surface.h. |
|
Definition at line 286 of file SceneGraphObject.cc. References SceneGraphObject::_have_private_spec_brdf(), SceneGraphObject::_have_shared_spec_brdf(), SceneGraphObject::_pAutoSpecularBRDF, and SceneGraphObject::_pSpecularBRDF. |
|
Definition at line 342 of file SceneGraphObject.cc. References SceneGraphObject::_have_private_texture(), SceneGraphObject::_have_shared_texture(), SceneGraphObject::_pAutoTexture, and SceneGraphObject::_pTexture. |
|
Reimplemented from SceneGraphObject. Definition at line 84 of file _Surface.h. |
|
Definition at line 81 of file _Surface.h. |
|
Definition at line 242 of file SceneGraphObject.cc. References SceneGraphObject::_have_private_diff_brdf(), SceneGraphObject::_have_shared_diff_brdf(), SceneGraphObject::_pAutoDiffuseBRDF, SceneGraphObject::_pDiffuseBRDF, AutoPtr::origObject(), and AutoPtr::registerReferer(). |
|
Reimplemented from SceneGraphObject. Definition at line 79 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 77 of file _Surface.h. |
|
Definition at line 269 of file SceneGraphObject.cc. References SceneGraphObject::_have_private_spec_brdf(), SceneGraphObject::_have_shared_spec_brdf(), SceneGraphObject::_pAutoSpecularBRDF, SceneGraphObject::_pSpecularBRDF, AutoPtr::origObject(), and AutoPtr::registerReferer(). |
|
Definition at line 325 of file SceneGraphObject.cc. References SceneGraphObject::_have_private_texture(), SceneGraphObject::_have_shared_texture(), SceneGraphObject::_pAutoTexture, SceneGraphObject::_pTexture, AutoPtr::origObject(), and AutoPtr::registerReferer(). |
|
Reimplemented from SceneGraphObject. Definition at line 83 of file _Surface.h. |
|
Sets UV coordinates of polygon's vertices. Old coords are deleted, if any.
Definition at line 980 of file Polygon.cc. References Polygon::_uvCoords. Referenced by Polygon::Polygon(). |
|
Sets polygon's vertices. Old vertices, their normals and UV coordinates are deleted. Facet normal is computed from vertices.
Definition at line 927 of file Polygon.cc. References Polygon::_area, Polygon::_fxyz, Polygon::_get_facet_normal(), Polygon::_get_vertex(), Polygon::_normal, Polygon::_normalFixed, Polygon::_normals, Polygon::_proj, Polygon::_set_edge_projection(), Polygon::_uvCoords, and Polygon::_vertices. Referenced by Polygon::Polygon(). |
|
Definition at line 147 of file SceneGraphObject.h. |
|
Definition at line 140 of file SceneGraphObject.h. |
|
Determines whether this SG node supports energy coats
Reimplemented in LightSource, and Shape. Definition at line 163 of file SceneGraphObject.h. |
|
Determines whether the SG node is tangible (usefull mainly for Spatial Data Structures - SDS)
Definition at line 197 of file SceneGraphObject.h. Referenced by OctTree::append(), Heap::append(), and BVH::append(). |
|
Reimplemented from SceneGraphObject. Definition at line 101 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 95 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 100 of file _Surface.h. |
|
Reimplemented from SceneGraphObject. Definition at line 94 of file _Surface.h. |
|
Method that allows to inspect subnodes
Implements SceneGraphObject. |
|
Definition at line 65 of file OSGPolygon.h. |
|
Definition at line 27 of file Polygon.h. Referenced by Polygon::Polygon(), Triangle::randomSample(), and Polygon::setVertices(). |
|
best projection plane
Definition at line 26 of file Polygon.h. Referenced by OSGPolygon::_duplicate_attributes(), _Surface::_duplicate_attributes(), and Polygon::_set_edge_projection(). |
|
Definition at line 25 of file OSGPolygon.h. Referenced by OSGPolygon::_duplicate_attributes(), OSGPolygon::_get_vert_normal(), and OSGPolygon::_get_vertex(). |
|
Definition at line 24 of file OSGPolygon.h. Referenced by OSGPolygon::_duplicate_attributes(), OSGPolygon::_get_vert_normal(), and OSGPolygon::_get_vertex(). |
|
|
Definition at line 30 of file OSGPolygon.h. Referenced by OSGPolygon::_get_vert_normal(), and OSGPolygon::haveVertNormals(). |
|
Definition at line 28 of file OSGPolygon.h. Referenced by OSGPolygon::_duplicate_attributes(), OSGPolygon::_get_vertex(), and OSGPolygon::getVertex(). |
|
Definition at line 23 of file Geometry.h. Referenced by Geometry::_duplicate_attributes(), and Geometry::mesh(). |
|
object name
Definition at line 42 of file SceneGraphObject.h. Referenced by SceneGraphObject::SceneGraphObject(), and SceneGraphObject::~SceneGraphObject(). |
|
Array of indices to (global) array of normals.
Definition at line 28 of file _Surface.h. Referenced by OSGPolygon::_duplicate_attributes(), _Surface::_duplicate_attributes(), _Surface::_get_vert_normal(), _Surface::_Surface(), _Surface::dump(), _Surface::getVertNormal(), _Surface::haveVertNormals(), OSGPolygon::OSGPolygon(), and _Surface::~_Surface(). |
|
|
Definition at line 31 of file OSGPolygon.h. Referenced by OSGPolygon::_get_vert_normal(), and OSGPolygon::haveVertNormals(). |
|
fixed/random orientation of facet normal
Definition at line 24 of file Polygon.h. Referenced by OSGPolygon::_duplicate_attributes(), _Surface::_duplicate_attributes(), _Surface::_Surface(), Polygon::dump(), _Surface::dump(), Polygon::haveFixedNormal(), OSGPolygon::OSGPolygon(), Polygon::randomDirection(), Triangle::randomSample(), Rectangle::randomSample(), Polygon::rayIntersection(), Rectangle::Rectangle(), Polygon::setFacetNormal(), and Polygon::setVertices(). |
|
|
number of polygon's vertices
Definition at line 22 of file Polygon.h. Referenced by Polygon::_duplicate_attributes(), OSGPolygon::_duplicate_attributes(), _Surface::_duplicate_attributes(), Polygon::_get_facet_normal(), Polygon::_mesh(), Rectangle::_rotate(), Rectangle::_rotateX(), Rectangle::_rotateY(), Rectangle::_rotateZ(), Rectangle::_scale(), Rectangle::_transform(), Rectangle::_translate(), OSGPolygon::OSGPolygon(), and Rectangle::Rectangle(). |
|
(unique) object identificator
Definition at line 41 of file SceneGraphObject.h. |
|
|
|
|
|
|
|
|
Definition at line 29 of file OSGPolygon.h. Referenced by OSGPolygon::_duplicate_attributes(), OSGPolygon::_get_vert_normal(), OSGPolygon::_get_vertex(), OSGPolygon::getVertex(), and OSGPolygon::haveVertNormals(). |
|
|
|
Definition at line 26 of file OSGPolygon.h. Referenced by OSGPolygon::_get_vert_normal(), and OSGPolygon::_get_vertex(). |
|
Definition at line 59 of file SceneGraphObject.h. Referenced by SceneGraphObject::appendPrivateAttribute(), SceneGraphObject::inspectAttributes(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 57 of file SceneGraphObject.h. Referenced by SceneGraphObject::appendPrivateMaterial(), SceneGraphObject::inspectMaterials(), and SceneGraphObject::~SceneGraphObject(). |
|
speed up of ray intersection calculations
Definition at line 29 of file Polygon.h. Referenced by OSGPolygon::_duplicate_attributes(), _Surface::_rotate(), _Surface::_rotateX(), _Surface::_rotateY(), _Surface::_rotateZ(), Polygon::_scale(), _Surface::_scale(), _Surface::_Surface(), _Surface::_transform(), Polygon::Polygon(), Rectangle::Rectangle(), Polygon::setVertices(), and Polygon::~Polygon(). |
|
|
|
|
Definition at line 60 of file SceneGraphObject.h. Referenced by SceneGraphObject::appendSharedAttribute(), SceneGraphObject::inspectAttributes(), and SceneGraphObject::~SceneGraphObject(). |
|
Definition at line 58 of file SceneGraphObject.h. Referenced by SceneGraphObject::appendSharedMaterial(), SceneGraphObject::inspectMaterials(), and SceneGraphObject::~SceneGraphObject(). |
|
tangible object has geometry or is composed of at least one tangible object
Definition at line 43 of file SceneGraphObject.h. Referenced by OSGPolygon::_duplicate_attributes(), OSGPolygon::OSGPolygon(), LightSource::setEnergyState(), SceneGraphObject::setPrivateGeometry(), SceneGraphObject::setSharedGeometry(), and LightSource::supportsEnergy(). |
|
UV coordinates (e.g. texture coords.).
Definition at line 21 of file Polygon.h. Referenced by Polygon::_duplicate_attributes(), Polygon::_get_vert_uv_coord(), Polygon::dump(), Polygon::haveVertUVCoords(), Polygon::Polygon(), Triangle::randomSample(), Rectangle::Rectangle(), Polygon::setUVCoords(), Polygon::setVertices(), and Polygon::~Polygon(). |
|
Array of indices to (global) array of UV coords.
Definition at line 29 of file _Surface.h. Referenced by _Surface::_get_vert_uv_coord(), _Surface::_Surface(), _Surface::dump(), _Surface::getVertUVCoord(), _Surface::haveVertUVCoords(), and _Surface::~_Surface(). |
|
Definition at line 27 of file OSGPolygon.h. Referenced by OSGPolygon::_duplicate_attributes(), OSGPolygon::_get_vert_normal(), OSGPolygon::_get_vertex(), and OSGPolygon::OSGPolygon(). |
|
|
Array of indices to (global) array of vertices.
Definition at line 27 of file _Surface.h. Referenced by OSGPolygon::_duplicate_attributes(), _Surface::_duplicate_attributes(), _Surface::_get_vertex(), Surface::_mesh(), _Surface::_Surface(), _Surface::dump(), _Surface::getVertex(), OSGPolygon::OSGPolygon(), and _Surface::~_Surface(). |
|
epsilon variation (tolerance) of zero
Definition at line 20 of file Geometry.h. Referenced by FDH::_cut_line(), Sphere::_duplicate_attributes(), FDH::_get_corners(), FDH::_mesh(), Sphere::_scale(), Polygon::_triTriCollision(), Sphere::rayIntersection(), Polygon::rayIntersection(), Point3D::rayIntersection(), Hemisphere::rayIntersection(), Sphere::setRadius(), and Sphere::Sphere(). |