/*
///////////////////////////////////////////////////////////////////////////////////////////////////
// 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 }
