1 /****************************************************************************************/
\r
4 /* Author: John Pollard */
\r
5 /* Description: Various math functions not included in Vec3d.h, etc... */
\r
7 /* The contents of this file are subject to the Genesis3D Public License */
\r
8 /* Version 1.01 (the "License"); you may not use this file except in */
\r
9 /* compliance with the License. You may obtain a copy of the License at */
\r
10 /* http://www.genesis3d.com */
\r
12 /* Software distributed under the License is distributed on an "AS IS" */
\r
13 /* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See */
\r
14 /* the License for the specific language governing rights and limitations */
\r
15 /* under the License. */
\r
17 /* The Original Code is Genesis3D, released March 25, 1999. */
\r
18 /* Genesis3D Version 1.1 released November 15, 1999 */
\r
19 /* Copyright (C) 1999 WildTangent, Inc. All Rights Reserved */
\r
21 /****************************************************************************************/
\r
27 //#define ON_EPSILON (geFloat)0.05
\r
28 #define ON_EPSILON (geFloat)0.1
\r
29 //#define ON_EPSILON 0.05f
\r
30 #define VCOMPARE_EPSILON ON_EPSILON
\r
32 //#define MIN_MAX_BOUNDS 8192.0f
\r
33 #define MIN_MAX_BOUNDS 15192.0f
\r
34 #define MIN_MAX_BOUNDS2 MIN_MAX_BOUNDS*2
\r
36 #define VectorToSUB(a, b) (*(((geFloat*)&a) + b) )
\r
41 #define PLANE_ANYX 3
\r
42 #define PLANE_ANYY 4
\r
43 #define PLANE_ANYZ 5
\r
44 #define PLANE_ANY 6
\r
46 extern geVec3d VecOrigin;
\r
48 void ClearBounds(geVec3d *Mins, geVec3d *Maxs);
\r
49 void AddPointToBounds(geVec3d *v, geVec3d *Mins, geVec3d *Maxs);
\r
51 geFloat ColorNormalize(geVec3d *C1, geVec3d *C2);
\r
52 geFloat ColorClamp(geVec3d *C1, geFloat Clamp, geVec3d *C2);
\r
54 int32 geVec3d_PlaneType(geVec3d *V1);
\r