home *** CD-ROM | disk | FTP | other *** search
- // %PARAMETERS = "CH16LIST C:\UT2004"
- //Identifies the package
- //CH16_07LIST.uc
-
- class CH16_07LIST extends Commandlet;
- function int Main(string Args){
- //#1
- local vector vFirst, vSecond, vRandom, vReturn;
- local float rValue;
-
- vFirst.x = 3; vFirst.y = 2; vFirst.z = 4;
- vSecond.x = 4; vSecond.y = 5; vSecond.z = 7;
-
- Log(Chr(10) $" Selected Object Vector Functions:"
- $ Chr(10));
-
- Log(" vFirst [ " @ vFirst.x @ vFirst.y
- @ vFirst.z @ " ] ");
- Log(" vSecond [ " @ vSecond.x @ vSecond.y
- @ vSecond.z @ " ] ");
-
- //#2
- //Magnitude of vector
- Log(Chr(10) $ " The magnitude of (VSize() of [ "
- @ vFirst.x @ vFirst.y @ vFirst.z
- @ " ] is " @ VSize(vFirst));
- Log( " The magnitude of (VSize() of [ "
- @ vSecond.x @ vSecond.y @ vSecond.z
- @ " ] is " @ VSize(vSecond));
-
- //#3
- //Unit vector -- normalization
- vReturn = Normal(vFirst);
- Log(Chr(10) $" Normalized, [ "
- @ vFirst.x @ vFirst.y
- @ vFirst.z @ " ] is [ "
- @ vReturn @ " ]" );
-
- vReturn = Normal(vSecond);
- Log(" Normalized, [ "
- @ vSecond.x @ vSecond.y
- @ vSecond.z @ " ] is [ "
- @ vReturn @ " ]" );
-
- Log(" Normalized vSecond.x = " $ vReturn.x);
-
- //#4
- //Add two vectors
- vReturn = vFirst + vSecond;
- Log(Chr(10) $" vFirst + vSecond: " $ vReturn);
- //Subtract one vector from another
- vReturn = vFirst - vSecond;
- Log(Chr(10) $" vFirst - vSecond: " $ vReturn);
-
- //#5
- //Multiply by a scalar
- vReturn = 4 * vSecond;
- Log(Chr(10) $" 4 * vSecond: " $ vReturn);
-
- //Divide by a scalar
- vReturn = vFirst/ 4;
- Log(Chr(10) $" vSecond/ 4 : " $ vReturn);
-
- //#6
- //Dot product
- rValue = vFirst dot vSecond;
- Log(Chr(10) $" Dot Product: " $ rValue);
-
- //#7
- //Cross [product
- vReturn = vFirst cross vSecond;
- Log(Chr(10) $" Cross Product: " $ vReturn);
-
- //#8
- //Generate a random vector
- vRandom = VRand();
- Log(Chr(10) $ " vRandom ( VRand() ) [ "
- @ vRandom.x @ vRandom.y
- @ vRandom.z @ " ] ");
-
- //Mirroring a vector using a normalize vector
- Log(Chr(10) $ " vSecond Mirrored with vRandom , [ "
- @ vSecond.x @ vSecond.y
- @ vSecond.z @ " ] is "
- $ Chr(10) $ " [ "
- @ MirrorVectorByNormal (vSecond, vRandom)
- @ " ]" );
-
- return 0;
- }
-
-
-
-
-
-