/* *======================================================================================= * Name : MecBase.c * Author : J Thénoz Date : 01/05/98 * Description : Mechanic functions for Base model *======================================================================================= */ #ifndef _MECBASE_H_ #define _MECBASE_H_ #ifdef __cplusplus extern "C" { #endif /*XB 05/05/99*/ struct DNM_stParsingDatas; /*End XB 05/05/99*/ extern MTH_tdxReal MEC_g_xClimbSpeedLimit; struct DNM_stDynamics *MEC_p_stDynamicsBaseMechanics ( struct DNM_stDynamics *p_stDynamic, HIE_tdxHandleToSuperObject hSupObj, struct DNM_stParsingDatas *p_stParsingDatas, DNM_tdxHandleToMecIdentityCard h_MecIdCard, MTH_tdxReal _xDT ); void MEC_vImposeRotationMatrix ( struct DNM_stDynamics *p_stDynamic, POS_tdxHandleToPosition hRotationMatrix ); void MEC_vImposeRotationVector ( struct DNM_stDynamics *p_stDynamic, MTH3D_tdstVector *p_stX, MTH3D_tdstVector *p_stY, MTH3D_tdstVector *p_stZ ); void MEC_vImposeRelativeRotation ( struct DNM_stDynamics *p_stDynamic, MTH3D_tdstMatrix *p_stRotationMatrix ); void MEC_vImposeTranslation ( struct DNM_stDynamics *p_stDynamic, MTH3D_tdstVector* p_stVector ); void MEC_vInitTranslation ( struct DNM_stDynamics *p_stDynamic, HIE_tdxHandleToSuperObject hSupObj, MTH3D_tdstVector* p_stVector ); void MEC_fn_vImposeActorMatrix ( HIE_tdxHandleToSuperObject hSupObj ); void MEC_vTurnAroundZAxis ( struct DNM_stDynamics *p_stDynamic, MTH_tdxReal xAngle ); void MEC_vTurnAbsolute ( struct DNM_stDynamics *p_stDynamic, MTH3D_tdstVector* p_stVector ); void DNM_fn_vSetHangingLimit ( struct DNM_stDynamics *p_stDynamic, MTH_tdxReal xValue ); void MEC_fn_vUpdateSpeed (HIE_tdxHandleToSuperObject hSupObj); INLINE void MEC_fn_vSetClimbSpeedLimit ( MTH_tdxReal xSpeedLimit ) { MEC_g_xClimbSpeedLimit = xSpeedLimit; } #ifdef __cplusplus } #endif #endif /*_MECBASE_H_*/