#include "basetype.h"Go to the source code of this file.
Compounds | |
| struct | geVec3d |
Functions | |
| GENESISAPI geFloat GENESISCC | geVec3d_GetElement (geVec3d *V, int Index) |
| GENESISAPI void GENESISCC | geVec3d_Set (geVec3d *V, geFloat X, geFloat Y, geFloat Z) |
| GENESISAPI void GENESISCC | geVec3d_Get (const geVec3d *V, geFloat *X, geFloat *Y, geFloat *Z) |
| GENESISAPI geFloat GENESISCC | geVec3d_DotProduct (const geVec3d *V1, const geVec3d *V2) |
| GENESISAPI void GENESISCC | geVec3d_CrossProduct (const geVec3d *V1, const geVec3d *V2, geVec3d *VResult) |
| GENESISAPI geBoolean GENESISCC | geVec3d_Compare (const geVec3d *V1, const geVec3d *V2, geFloat tolarance) |
| GENESISAPI geFloat GENESISCC | geVec3d_Normalize (geVec3d *V1) |
| GENESISAPI geBoolean GENESISCC | geVec3d_IsNormalized (const geVec3d *V) |
| GENESISAPI void GENESISCC | geVec3d_Scale (const geVec3d *VSrc, geFloat Scale, geVec3d *VDst) |
| GENESISAPI geFloat GENESISCC | geVec3d_Length (const geVec3d *V1) |
| GENESISAPI geFloat GENESISCC | geVec3d_LengthSquared (const geVec3d *V1) |
| GENESISAPI void GENESISCC | geVec3d_Subtract (const geVec3d *V1, const geVec3d *V2, geVec3d *V1MinusV2) |
| GENESISAPI void GENESISCC | geVec3d_Add (const geVec3d *V1, const geVec3d *V2, geVec3d *VSum) |
| GENESISAPI void GENESISCC | geVec3d_Copy (const geVec3d *Vsrc, geVec3d *Vdst) |
| GENESISAPI void GENESISCC | geVec3d_Clear (geVec3d *V) |
| GENESISAPI void GENESISCC | geVec3d_Inverse (geVec3d *V) |
| GENESISAPI void GENESISCC | geVec3d_MA (geVec3d *V1, geFloat Scale, const geVec3d *V2, geVec3d *V1PlusV2Scaled) |
| GENESISAPI void GENESISCC | geVec3d_AddScaled (const geVec3d *V1, const geVec3d *V2, geFloat Scale, geVec3d *V1PlusV2Scaled) |
| GENESISAPI geFloat GENESISCC | geVec3d_DistanceBetween (const geVec3d *V1, const geVec3d *V2) |
| GENESISAPI geBoolean GENESISCC | geVec3d_IsValid (const geVec3d *V) |
|
||||||||||||||||
|
||||||||||||||||||||
|
|
||||||||||||||||
|
Definition at line 107 of file VEC3D.C. References GE_FALSE, GE_TRUE, geBoolean, GENESISAPI, GENESISCC, geVec3d_IsValid(), NULL, V1, and V2. Referenced by BuildSkyBox(), CheckClientPlayerChanges(), Frustum_SetFromPoly(), geBody_AddNormal(), geBody_XSkinVertexCompare(), gePuppet_DrawShadow(), geQKFrame_PathIsHinged(), GetPlayerSendFlags(), geXForm3d_IsOrthogonal(), geXForm3d_IsOrthonormal(), ParseClientMove(), and XFormFromVector().
00108 {
00109 assert ( V1 != NULL );
00110 assert ( V2 != NULL );
00111 assert ( Tolerance >= 0.0 );
00112 assert( geVec3d_IsValid(V1) != GE_FALSE );
00113 assert( geVec3d_IsValid(V2) != GE_FALSE );
00114
00115 if (fabs(V2->X - V1->X) > Tolerance) //VCOMPARE_EPSILON)
00116 return GE_FALSE;
00117 if (fabs(V2->Y - V1->Y) > Tolerance) //VCOMPARE_EPSILON)
00118 return GE_FALSE;
00119 if (fabs(V2->Z - V1->Z) > Tolerance) //VCOMPARE_EPSILON)
00120 return GE_FALSE;
00121
00122 return GE_TRUE;
00123 }
|
|
||||||||||||
|
||||||||||||||||
|
||||||||||||
|
Definition at line 288 of file VEC3D.C. References B, GE_FALSE, geFloat, GENESISAPI, GENESISCC, geVec3d_IsValid(), geVec3d_Length(), geVec3d_Subtract(), V1, and V2. Referenced by Bot_FindItem(), Bot_FindNewMoveVec(), Bot_FindRandomItem(), Bot_GetRangeIndex(), Bot_LeaveTrack(), Bot_ModeThinkAttack(), Bot_MoveFree(), Bot_MoveToPoint(), Bot_WaitForEntityDist(), DistWeightedY(), Trace_ModelCollision(), Track_FindCloseTrack(), Track_FindFarTrack(), Track_FindTrack(), Track_Length(), Track_LinkTest(), and Track_NextMultiTrack().
00289 {
00290 geVec3d B;
00291
00292 assert( geVec3d_IsValid(V1) != GE_FALSE );
00293 assert( geVec3d_IsValid(V2) != GE_FALSE );
00294
00295 geVec3d_Subtract(V1,V2,&B);
00296 return geVec3d_Length(&B);
00297 }
|
|
||||||||||||
|
||||||||||||||||||||
|
Definition at line 67 of file VEC3D.C. References GE_FALSE, GENESISAPI, GENESISCC, geVec3d_IsValid(), NULL, V, and Z.
00068 {
00069 assert ( V != NULL );
00070 assert ( X != NULL );
00071 assert ( Y != NULL );
00072 assert ( Z != NULL );
00073 assert( geVec3d_IsValid(V) != GE_FALSE );
00074
00075 *X = V->X;
00076 *Y = V->Y;
00077 *Z = V->Z;
00078 }
|
|
||||||||||||
|
Definition at line 35 of file VEC3D.C. References geFloat, GENESISAPI, GENESISCC, NULL, and V. Referenced by Trace_ActorCollide(), and Trace_GetContents().
00036 {
00037 assert( V != NULL );
00038 assert( Index >= 0 );
00039 assert( Index < 3 );
00040 return (* ((&((V)->X)) + (Index) ));
00041 }
|
|
|
Definition at line 279 of file VEC3D.C. References GE_FALSE, GENESISAPI, GENESISCC, geVec3d_IsValid(), and V. Referenced by CalcSurfVectors(), geCamera_ConvertWorldSpaceToCameraSpace(), geWorld_SetModelXForm(), geXForm3d_IsOrthogonal(), geXForm3d_IsOrthonormal(), IntersectLeafSides2(), IntersectLeafSides_r(), PointInLeafSides(), RenderFace(), and Trace_WorldCollisionExact().
|
|
|
Definition at line 182 of file VEC3D.C. References GE_FALSE, GE_TRUE, geBoolean, geFloat, GENESISAPI, GENESISCC, geVec3d_IsValid(), geVec3d_Length(), V, and VCOMPARE_EPSILON. Referenced by gePuppet_SetLightingOptions(), and geXForm3d_SetFromLeftUpIn().
00183 {
00184 geFloat length;
00185
00186 assert( geVec3d_IsValid(V) != GE_FALSE );
00187
00188 length = geVec3d_Length(V);
00189 if ((length >= 1.0f - VCOMPARE_EPSILON) && (length <= 1.0f + VCOMPARE_EPSILON))
00190 return GE_TRUE;
00191
00192 return GE_FALSE;
00193 }
|
|
|
|
Definition at line 211 of file VEC3D.C. References GE_FALSE, geFloat, GENESISAPI, GENESISCC, geVec3d_DotProduct(), geVec3d_IsValid(), and V1. Referenced by Bot_Animate(), Bot_FindNewMoveVec(), Bot_OverLedgeScan(), Bot_PastPoint(), Bot_Physics(), Bot_PickTgtPlayer(), Bot_SetupShootXForm(), Bot_SetupXForm(), CalcSurfVectors(), CheckVelocity(), Client_Control(), Corona_Frame(), gePuppet_RenderThroughFrustum(), geQuaternion_SetFromAxisAngle(), geSound3D_GetConfig(), geSound3D_GetConfigIgnoreObstructions(), GetSurfInfo(), geVec3d_DistanceBetween(), geVec3d_IsNormalized(), Grenade_Control(), IntersectLeafSides_r(), Light_FogVerts(), ParseClientMove(), PathPoint_Frame2(), PhysicsObject_Control(), PlayerPhysics(), Server_GetNextPlayerInRadius(), Trace_WorldCollisionBBox(), and Trace_WorldCollisionExact().
00212 {
00213 assert( geVec3d_IsValid(V1) != GE_FALSE );
00214
00215 return (geFloat)sqrt(geVec3d_DotProduct(V1, V1));
00216 }
|
|
|
Definition at line 206 of file VEC3D.C. References geFloat, GENESISAPI, GENESISCC, geVec3d_DotProduct(), and V1. Referenced by Particles_MoveParticles().
00207 {
00208 return geVec3d_DotProduct(V1, V1);
00209 }
|
|
||||||||||||||||||||
|
Definition at line 240 of file VEC3D.C. References GE_FALSE, GENESISAPI, GENESISCC, geVec3d_IsValid(), NULL, V1, V2, geVec3d::X, geVec3d::Y, and geVec3d::Z. Referenced by CalcSurfVectors(), Client_Control(), Trace_ModelCollisionBBox(), and Trace_TestModelMove().
00241 {
00242 assert( geVec3d_IsValid(V1) != GE_FALSE );
00243 assert( geVec3d_IsValid(V2) != GE_FALSE );
00244 assert ( V1PlusV2Scaled != NULL );
00245
00246 V1PlusV2Scaled->X = V1->X + V2->X*Scale;
00247 V1PlusV2Scaled->Y = V1->Y + V2->Y*Scale;
00248 V1PlusV2Scaled->Z = V1->Z + V2->Z*Scale;
00249 }
|
|
|
||||||||||||||||
|
||||||||||||||||||||
|
Definition at line 58 of file VEC3D.C. References GE_FALSE, GENESISAPI, GENESISCC, geVec3d_IsValid(), NULL, V, and Z. Referenced by Attacker_TurretSpawn(), BuildSkyBox(), Client_UpdateSinglePlayer(), DoSplashScreen(), FireBlaster(), FireGrenade(), FireRocket(), FireShredder(), geActor_GetDynamicExtBox(), geActor_SetScale(), geBody_AddBone(), geBody_CreateNull(), geBodyInst_GetGeometry(), geExtBox_GetTranslation(), geExtBox_RayCollision(), geExtBox_Translate(), gePhysicsObject_ComputeForces(), gePhysicsObject_Create(), gePose_Clear(), gePose_InitializeJoint(), gePuppet_Render(), geWorld_IsActorPotentiallyVisible(), geXForm3d_Mirror(), and Item_RocketAmmoSpawn().
00059 {
00060 assert ( V != NULL );
00061 V->X = X;
00062 V->Y = Y;
00063 V->Z = Z;
00064 assert( geVec3d_IsValid(V) != GE_FALSE );
00065 }
|
|
||||||||||||||||
1.3.2