/* /////////////////////////////////////////////////////////////////////////////////////////////////// // Description : Link2D.hpp // // Definition of links defined in a 2D plane // /////////////////////////////////////////////////////////////////////////////////////////////////// // inherit from : Link /////////////////////////////////////////////////////////////////////////////////////////////////// // Creation date: 30 jan 1997 Author: J Thénoz /////////////////////////////////////////////////////////////////////////////////////////////////// // Modification date: Author: // // // // /////////////////////////////////////////////////////////////////////////////////////////////////// */ //ANNECY Shaitan Nettoyage (12/05/98) { /* #ifndef __Link2D_HPP__ #define __Link2D_HPP__ class Link2D : public Link { protected : MTH3D_tdstVector m_stPlaneVertex; // Only use to rotate the plane MTH3D_tdstVector m_stNormalVertex; // Use to keep the same normal when move CPA_SuperObject* m_poGraphic; // graphic object of the plane GLI_tdxValue m_xe; // e of the plane public: Link2D ( CPA_ObjectDLLBase *p_oDLL, CPA_BaseObject *p_oOwner, WP_tdhLink hLink ); Link2D ( CPA_ObjectDLLBase *p_oDLL, CPA_BaseObject *p_oOwner ); void fn_vInitPlane (MTH3D_tdstVector* pstVertex) { m_stNormalVertex=*pstVertex; } void fn_vDrawPlane (void); void fn_vConstructPlane (void); void fn_vDestroyPlane (void); // moves void fn_vStartMove ( MTH3D_tdstVector* pstStartVertex ); void fn_vMove ( MTH3D_tdstVector* pstTranslation ); void fn_vEndMove (void); BOOL fn_bIsPlane (void) { return TRUE; } void fn_vSetPlaneHorizontal (void); void fn_vSetPlaneVertical (void); void fn_vProjVertex ( MTH3D_tdstVector* pstVertex ); protected : // compute the matrix of the plane ( VertexLink1, VertexLink2, pstVertex ) void fn_vComputePlaneAxis (MTH3D_tdstVector* pstVertex=NULL); }; #endif //__Link2D_HPP__ */ //ENDANNECY Shaitan Nettoyage }