CCylinder3D Class Reference
[Calques 3D - Geometrical Objects]


Detailed Description
Construction/Destruction.Public Member Functions | |
| virtual int | SetDepth () |
| Update the depth of this object in the dependence graph. | |
| virtual CObject3D * | CopyObject () |
| Create a clone of this object. | |
| virtual CxObject3DSet * | GetParents () |
| Get all the parents of this object from the dependence graph. | |
| virtual BOOL | ChangeParent (CObject3D *pOld, CObject3D *pNew, BOOL bUpGraph=FALSE) |
| Change one of the parents of the object. | |
| virtual void | Serialize (CArchive &ar) |
| Store and load the object into and from an archive. | |
| virtual BOOL | IsEqual (CObject3D &other) |
| Verify if this object is analytically identical to another one. | |
| virtual BOOL | IsInActiveArea (CPoint pt) |
| Verify if the cursor lies within the active region of this object. | |
| virtual UINT | GetNameID () const |
| Get the resource ID of the string containing the default name of the object. | |
| virtual UINT | GetHelpID () const |
| Get the resource ID of the string containing the designation of the object. | |
| virtual UINT | GetDefID () const |
| Get the resource ID of the string containing the definition of the object. | |
| virtual DWORD | isA () const |
| Get the identifier representing the type of the object. | |
| virtual CString | GetObjectDef () |
| Get the definition of the object. | |
| virtual int | SetProperties (CxObject3DSet *pSet=NULL) |
| Call the property dialog box and modify the object's attributes. | |
| virtual UINT | CalculConceptuel () |
| Recompute the analytical representation of the object. | |
| virtual void | CalculVisuel (CVisualParam *) |
| Recompute the graphical representation of the object (in the universe or tracing view). | |
| virtual void | Draw (CDC *pDC, CVisualParam *vp, BOOL bSm=0) |
| Method CObject3D::Draw. | |
| virtual void | DrawRetro (CDC *, CVisualParam *vp) |
| Method CObject3D::DrawRetro. | |
| virtual void | Draw3DRendering (int nVolMode) |
| Method CObject3D::Draw3DRendering. | |
Static Public Member Functions | |
| static BOOL | InterCylLine (CVector4 raybase, CVector4 raycos, CVector4 base, CVector4 axis, FCoord radius, FCoord *in, FCoord *out) |
| Determine the intersection of a ray with a cylinder. | |
Member Function Documentation
| int SetDepth | ( | ) | [virtual] |
Update the depth of this object in the dependence graph.
Basically, the depth of an object is either 0 if it has no parents or the maximum of its parents' depth +1.
- Returns:
- The current depth of this object
Reimplemented from CObject3D.
| CObject3D * CopyObject | ( | ) | [virtual] |
Create a clone of this object.
- Returns:
- A pointer to the clone of this object.
Reimplemented from CObject3D.
| CxObject3DSet * GetParents | ( | ) | [virtual] |
Get all the parents of this object from the dependence graph.
- Returns:
- A pointer to a list containing the parents, NULL if no parents.
Reimplemented from CObject3D.
Change one of the parents of the object.
- Parameters:
-
pOld A pointer to the parent object to change. pNew A pointer to the object to replace the current parent with. bUpGraph TRUE if the dependence graph needs to be updated, FALSE otherwise
- Returns:
- TRUE is the parent has been properly changed, FALSE otherwise
Reimplemented from CObject3D.
| void Serialize | ( | CArchive & | ar | ) | [virtual] |
Store and load the object into and from an archive.
- Parameters:
-
ar A CArchive object to serialize to or from.
Reimplemented from CObject3D.
| BOOL IsEqual | ( | CObject3D & | other | ) | [virtual] |
Verify if this object is analytically identical to another one.
- Parameters:
-
other A reference to the object to compare with this one.
- Returns:
- TRUE if both object are analytically the same, FALSE otherwise
Reimplemented from CObject3D.
| BOOL IsInActiveArea | ( | CPoint | pt | ) | [virtual] |
Verify if the cursor lies within the active region of this object.
- Parameters:
-
pt The location - in view's coordinates - of the cursor.
- Returns:
- TRUE if the cursor is hovering the object, FALSE otherwise.
Reimplemented from CObject3D.
| virtual UINT GetNameID | ( | ) | const [inline, virtual] |
Get the resource ID of the string containing the default name of the object.
Reimplemented from CObject3D.
| virtual UINT GetHelpID | ( | ) | const [inline, virtual] |
Get the resource ID of the string containing the designation of the object.
Reimplemented from CObject3D.
| virtual UINT GetDefID | ( | ) | const [inline, virtual] |
Get the resource ID of the string containing the definition of the object.
Reimplemented from CObject3D.
| virtual DWORD isA | ( | ) | const [inline, virtual] |
Get the identifier representing the type of the object.
See TObject3DClass and others identifiers
Reimplemented from CObject3D.
| CString GetObjectDef | ( | ) | [virtual] |
Get the definition of the object.
The definition of an object is a string containing a complete description of the object, including references to the objects to which it depends for its construction. Names of the objects and its parents are automatically updated. For example, a segment will be defined by "S is a segment line going through A and B". This definition is mainly used to populate the History view (see CViewHisto) and the status bar when an object is designated (see CViewUniv::OnUpdateObjTooltip).
Reimplemented from CObject3D.
| int SetProperties | ( | CxObject3DSet * | pSet = NULL |
) | [virtual] |
Call the property dialog box and modify the object's attributes.
- Parameters:
-
pSet A pointer to the list of all objects in the construction.
- Returns:
- TRUE if attributes have been modified, FALSE otherwise
Reimplemented from CObject3D.
| UINT CalculConceptuel | ( | ) | [virtual] |
Recompute the analytical representation of the object.
- Returns:
- 0 if the computation is correct, an error code otherwise.
- See also:
- Description of all Error Codes
Reimplemented from CObject3D.
| void CalculVisuel | ( | CVisualParam * | pVisParam | ) | [virtual] |
Recompute the graphical representation of the object (in the universe or tracing view).
- Parameters:
-
pVisParam The visual parameters associated with the view.
Reimplemented from CObject3D.
| void Draw | ( | CDC * | pDC, | |
| CVisualParam * | vp, | |||
| BOOL | bSm = 0 | |||
| ) | [virtual] |
Method CObject3D::Draw.
- Parameters:
-
pDC A pointer to the device-context associated with the drawing view vp A pointer to the visual parameters of the view bSm TRUE if the object is displayed in a reduced form, FALSE otherwise
Reimplemented from CObject3D.
| void DrawRetro | ( | CDC * | pDC, | |
| CVisualParam * | vp | |||
| ) | [virtual] |
Method CObject3D::DrawRetro.
- Parameters:
-
pDC A pointer to the device-context associated with the drawing view vp A pointer to the visual parameters of the view
Reimplemented from CObject3D.
| void Draw3DRendering | ( | int | nVolMode | ) | [virtual] |
Method CObject3D::Draw3DRendering.
- Todo:
- Add the OpenGL representation for all objects
Reimplemented from CObject3D.
| BOOL InterCylLine | ( | CVector4 | raybase, | |
| CVector4 | raycos, | |||
| CVector4 | base, | |||
| CVector4 | axis, | |||
| FCoord | radius, | |||
| FCoord * | in, | |||
| FCoord * | out | |||
| ) | [static] |
Determine the intersection of a ray with a cylinder.
Note that in and/or out may be negative indicating the cylinder is located behind the origin of the ray. ANSI C code from the article "Intersecting a Ray with a Cylinder" by Joseph M. Cychosz and Warren N. Waggenspack, Jr. "Graphics Gems IV", Academic Press, 1994
- Parameters:
-
raybase Base of the intersection ray raycos Direction cosines of the ray base Base of the cylinder axis Axis of the cylinder radius Radius of the cylinder in Entering distance out Leaving distance
- Returns:
- TRUE if the ray intersects the cylinder, FALSE otherwise



