A 3D Dynamic Geometry Software

Calques 3D C++



CPlan3D Class Reference
[Calques 3D - Geometrical Objects]

Inheritance diagram for CPlan3D:

Inheritance graph
Collaboration diagram for CPlan3D:

Collaboration graph

List of all members.


Detailed Description

Construction/Destruction.

Public Member Functions

virtual CObject3DCopyObject ()
 Create a clone of this object.
virtual CxObject3DSetGetParents ()
 Get all the parents of this object from the dependence graph.
virtual void Serialize (CArchive &ar)
 Store and load the object into and from an archive.
virtual BOOL ChangeParent (CObject3D *pOld, CObject3D *pNew, BOOL bUpGraph=FALSE)
 Change one of the parents of the object.
virtual int SetDepth ()
 Update the depth of this object in the dependence graph.
virtual void GetRange (CVector4 &min, CVector4 &max)
 Recompute the definition range (in terms of spatial coordinates) of the 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 CString GetObjectDef ()
 Get the definition of the object.
virtual DWORD isA () const
 Get the identifier representing the type of the object.
virtual BOOL IsEqual (CObject3D &other)
 Verify if this object is analytically identical to another one.
virtual BOOL IsInActiveArea (CPoint)
 Verify if the cursor lies within the active region of this object.
virtual CRgn * InvalideRect ()
 Create a GDI region covering this object.
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 *, CVisualParam *vp, BOOL bSm=FALSE)
 Method CObject3D::Draw.
virtual void DrawRetro (CDC *, CVisualParam *vp)
 Method CObject3D::DrawRetro.
virtual void Draw3DRendering (int nVolMode)
 Method CObject3D::Draw3DRendering.
virtual CString ExportSymbolic (int nFormat)
 Method CObject3D::ExportSymbolic.
virtual UINT IsParallelTo (CObject3D *pObj)
 Verify if this object is analytically parallel to another one.
virtual UINT IsPerpendicularTo (CObject3D *pObj)
 Verify if this object is analytically perpendicular to another one.
CVector4 GetNormalForm ()
virtual void HandleObjectError (int, BOOL)
 
Parameters:
errNo The error code generated by previous function calls.


Static Public Member Functions

static void GetProjectedMinMax (CObject3D *pObj, CVector4 P1, CVector4 I, CVector4 J, CVector4 K, CVector4 &minmax)
 Method CPlan3D::GetProjectedMinMax.

Member Function Documentation

CObject3D * CopyObject (  )  [virtual]

Create a clone of this object.

Returns:
A pointer to the clone of this object.

Reimplemented from CObject3D.

Reimplemented in CPlanPerp3D, and CPolygon3D.

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.

Reimplemented in CPlanPerp3D, and CPolygon3D.

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.

Reimplemented in CPlanPerp3D, and CPolygon3D.

BOOL ChangeParent ( CObject3D pOld,
CObject3D pNew,
BOOL  bUpGraph = FALSE 
) [virtual]

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.

Reimplemented in CPolygon3D.

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.

Reimplemented in CPlanPerp3D, and CPolygon3D.

void GetRange ( CVector4 min,
CVector4 max 
) [virtual]

Recompute the definition range (in terms of spatial coordinates) of the object.

Parameters:
min The minimum coordinates of the objects in the X, Y and Z axis.
max The maximum coordinates of the objects in the X, Y and Z axis.

Reimplemented from CObject3D.

Reimplemented in CPolygon3D.

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.

Reimplemented in CPolygon3D.

virtual UINT GetDefID (  )  const [inline, virtual]

Get the resource ID of the string containing the definition of the object.

Reimplemented from CObject3D.

Reimplemented in CPlanPerp3D, and CPolygon3D.

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.

Reimplemented in CPlanPerp3D, and CPolygon3D.

virtual DWORD isA (  )  const [inline, virtual]

Get the identifier representing the type of the object.

See TObject3DClass and others identifiers

Reimplemented from CObject3D.

Reimplemented in CPlanPerp3D, and CPolygon3D.

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.

Reimplemented in CPolygon3D.

CRgn * InvalideRect (  )  [virtual]

Create a GDI region covering this object.

Returns:
A new instance of an encompassing region.

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.

Reimplemented in CPlanPerp3D, and CPolygon3D.

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.

Reimplemented in CPolygon3D.

void Draw ( CDC *  pDC,
CVisualParam vp,
BOOL  bSm = FALSE 
) [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.

Reimplemented in CPlanPerp3D, and CPolygon3D.

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.

Reimplemented in CPolygon3D.

void Draw3DRendering ( int  nVolMode  )  [virtual]

Method CObject3D::Draw3DRendering.

Todo:
Add the OpenGL representation for all objects

Reimplemented from CObject3D.

Reimplemented in CPolygon3D.

CString ExportSymbolic ( int  nFormat  )  [virtual]

Method CObject3D::ExportSymbolic.

Parameters:
nFormat The format to use for exporting the object (see CObject3D::TGraphType)
Returns:
A String containing the symbolic representation of the object

Reimplemented from CObject3D.

Reimplemented in CPlanPerp3D, and CPolygon3D.

UINT IsParallelTo ( CObject3D pObj  )  [virtual]

Verify if this object is analytically parallel to another one.

Parameters:
pObj A pointer to the object to compare with this one.
Returns:
The code for the property verification
See also:
Relation Verification Codes

Reimplemented from CObject3D.

UINT IsPerpendicularTo ( CObject3D pObj  )  [virtual]

Verify if this object is analytically perpendicular to another one.

Parameters:
pObj A pointer to the object to compare with this one.
Returns:
The code for the property verification
See also:
Relation Verification Codes

Reimplemented from CObject3D.

CVector4 GetNormalForm (  ) 

equation du plan Ax+By+Cz+D=0

void HandleObjectError ( int  errNo,
BOOL  bShow 
) [virtual]

Parameters:
errNo The error code generated by previous function calls.

Parameters:
bShow TRUE if the error message is to be displayed, FALSE otherwise
See also:
Description of all Error Codes

Reimplemented from CObject3D.

void GetProjectedMinMax ( CObject3D pObj,
CVector4  P1,
CVector4  I,
CVector4  J,
CVector4  K,
CVector4 minmax 
) [static]

Method CPlan3D::GetProjectedMinMax.

Parameters:
pObj (CObject3D) The object to project to the plan
P1 (CVector4) The center of the plan
I (CVector4) The I-axis of the plan local rep
J (CVector4) The J-axis of the plan local rep
K (CVector4) The K-axis of the plan local rep
minmax (CVector4) Contains the min on (x,y) and max on (x,y)