65 lines
2.0 KiB
C++
65 lines
2.0 KiB
C++
/*
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// 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 }
|