1 #ifndef __SceneGraphNode_h 2 #define __SceneGraphNode_h 12 #ifndef __PolygonMesh_h 16 #ifndef __PhotonCrossSection_h 27 class SceneGraphBinder;
42 const VEC3& aPosition,
48 const VEC3& aPosition,
108 void addChild(
const std::string& aLabel);
119 const VEC3& aRayOrigin,
120 const VEC3& aRayDirection);
136 const VEC3& aRayOrigin,
137 const VEC3& aRayDirection,
138 const MATRIX4& aTransformationMatrix);
171 #endif // __SceneGraphNode_h
void applyLocalTransformation(const MATRIX4 &aMatrix)
SceneGraphNode & operator=(const SceneGraphNode &aNode)
gVirtualXRay::SceneGraphNode & getChild(unsigned int i)
MATRIX4 m_local_transformation
VEC3 getNodeAndChildrenWorldMaxCorner()
std::vector< gVirtualXRay::SceneGraphNode * > m_p_children
std::map< RATIONAL_NUMBER, VEC3 > rayIntersect(const VEC3 &aRayOrigin, const VEC3 &aRayDirection, const MATRIX4 &aTransformationMatrix)
MATRIX4 m_global_transformation
bool m_world_properties_up_to_date
SceneGraphNode(const std::string &aLabel="", SceneGraphNode *apParent=0)
PolygonMesh is a class to handle polygon (triangles) meshes.
const SceneGraphNode * getParent() const
gVirtualXRay::SceneGraphNode * m_p_parent
void addChild(const std::string &aLabel)
Vec3< RATIONAL_NUMBER > VEC3
Type of data used to store 3D vectors.
MATRIX4 getWorldTransformationMatrix()
Class to manage photon cross sections of elements, compounds and mixtures.
PhotonCrossSection is a class to manage photon cross sections of elements, compounds and mixtures...
std::map< RATIONAL_NUMBER, VEC3 > rayIntersectAABB(const VEC3 &aRayOrigin, const VEC3 &aRayDirection)
const std::string & getLabel() const
unsigned int getNumberOfChildren() const
PolygonMesh & getPolygonMesh()
VEC3 getNodeOnlyWorldMinCorner()
PolygonMesh m_local_geometry
void setLocalTransformation(const MATRIX4 &aMatrix)
VEC3 getNodeAndChildrenWorldMinCorner()
VEC3 getNodeOnlyWorldMaxCorner()
Class to handle polygon (triangles) meshes.
void setGeometry(const PolygonMesh &aPolygonMesh)
MATRIX4 getLocalTransformationMatrix() const
PolygonMesh * m_p_geometry
const PhotonCrossSection & getPhotonCrossSection() const