88 const double& a_outerRadius,
103 const bool a_duplicateTextureData =
false,
104 const bool a_duplicateMeshData =
false,
105 const bool a_buildCollisionDetector =
false);
108 void setSize(
const double& a_innerRadius,
109 const double& a_outerRadius);
131 virtual void scaleObject(
const double& a_scaleFactor);
136 const unsigned int a_IDN);
153 const bool a_duplicateMaterialData,
154 const bool a_duplicateTextureData,
155 const bool a_duplicateMeshData,
156 const bool a_buildCollisionDetector);
This class implements a 3D vector.
Definition: CVector3d.h:88
This structures provide a containers for storing rendering options that are passed through the sceneg...
Definition: CRenderOptions.h:82
cShapeTorus * copy(const bool a_duplicateMaterialData=false, const bool a_duplicateTextureData=false, const bool a_duplicateMeshData=false, const bool a_buildCollisionDetector=false)
This method creates a copy of itself.
Definition: CShapeTorus.cpp:103
double getInnerRadius() const
This method returns the inner radius of the torus.
Definition: CShapeTorus.h:112
cShapeTorus(const double &a_innerRadius, const double &a_outerRadius, cMaterialPtr a_material=cMaterialPtr())
Constructor of cShapeTorus.
Definition: CShapeTorus.cpp:61
virtual void render(cRenderOptions &a_options)
This method renders this object graphically using OpenGL.
Definition: CShapeTorus.cpp:184
double m_outerRadius
Outside radius of the torus.
Definition: CShapeTorus.h:169
virtual void scaleObject(const double &a_scaleFactor)
This method scales the size of this object with given scale factor.
Definition: CShapeTorus.cpp:344
std::shared_ptr< cMaterial > cMaterialPtr
Definition: CMaterial.h:67
This class implements a base class for all 2D or 3D objects in CHAI3D.
Definition: CGenericObject.h:112
This class implements a collision detection recorder that stores all collision events that are report...
Definition: CCollisionBasics.h:185
This structure stores the collision settings that are passed to a collision detector when querying fo...
Definition: CCollisionBasics.h:242
double m_innerRadius
Inside radius of the torus.
Definition: CShapeTorus.h:166
double getOuterRadius() const
This method returns the outer radius of the torus.
Definition: CShapeTorus.h:115
Implements a base class for all objects.
virtual void updateBoundaryBox()
This method updates the boundary box of this object.
Definition: CShapeTorus.cpp:329
void copyShapeTorusProperties(cShapeTorus *a_obj, const bool a_duplicateMaterialData, const bool a_duplicateTextureData, const bool a_duplicateMeshData, const bool a_buildCollisionDetector)
This method copies all properties of this object to another.
Definition: CShapeTorus.cpp:134
void setSize(const double &a_innerRadius, const double &a_outerRadius)
This method sets the inner and outer radii of the torus.
Definition: CShapeTorus.cpp:162
virtual ~cShapeTorus()
Destructor of cShapeTorus.
Definition: CShapeTorus.h:92
This class implements a 3D shape torus.
Definition: CShapeTorus.h:78
Implements material properties.
Definition: CAudioBuffer.cpp:56
virtual bool computeOtherCollisionDetection(cVector3d &a_segmentPointA, cVector3d &a_segmentPointB, cCollisionRecorder &a_recorder, cCollisionSettings &a_settings)
This method computes collisions between a segment and this object.
Definition: CShapeTorus.cpp:376
virtual void computeLocalInteraction(const cVector3d &a_toolPos, const cVector3d &a_toolVel, const unsigned int a_IDN)
This method updates the geometric relationship between the tool and the current object.
Definition: CShapeTorus.cpp:270
unsigned int m_resolution
Resolution of the graphical model.
Definition: CShapeTorus.h:172