예제 #1
0
 /// <summary>
 /// Transforms a 3-D vector or an array of 3-D vectors by a given matrix.
 /// </summary>
 /// <param name="vector">Array of source TGCVector3 structures.</param>
 /// <param name="sourceMatrix">Source TGCMatrix.</param>
 /// <returns>Array of TGCVector4 structures that are the result of the method.</returns>
 public static TGCVector4[] Transform(TGCVector3[] vector, TGCMatrix sourceMatrix)
 {
     TGCVector4[] ret = new TGCVector4[vector.Length];
     for (int i = 0; i < vector.Length; i++)
     {
         ret[i] = new TGCVector4(Vector3.Transform(vector[i].ToVector3(), sourceMatrix.ToMatrix()));
     }
     return(ret);
 }
예제 #2
0
 /// <summary>
 /// Adds two 4-D vectors.
 /// </summary>
 /// <param name="left">Source TGCVector4.</param>
 /// <param name="right">Source TGCVector4.</param>
 /// <returns>Sum of the two Vector4 structures.</returns>
 public static TGCVector4 Add(TGCVector4 left, TGCVector4 right)
 {
     throw new NotImplementedException();
 }
예제 #3
0
 /// <summary>
 /// Adds two 4-D vectors.
 /// </summary>
 /// <param name="source">source</param>
 public void Add(TGCVector4 source)
 {
     this.dxVector4.Add(source.ToVector4());
 }
예제 #4
0
 /// <summary>
 /// Transforms a 4-D vector or an array of 4-D vectors by a given matrix.
 /// </summary>
 /// <param name="source">Source TGCVector4 structure.</param>
 /// <param name="sourceMatrix">Source TGCMatrix structure.</param>
 /// <returns>A TGCVector4 structure that is the result of the method.</returns>
 public static TGCVector4 Transform(TGCVector4 source, TGCMatrix sourceMatrix)
 {
     throw new NotImplementedException();
 }
예제 #5
0
 /// <summary>
 /// Subtracts two 4-D vectors.
 /// </summary>
 /// <param name="source">Source TGCVector4 structure to subtract from the current instance.</param>
 public void Subtract(TGCVector4 source)
 {
     throw new NotImplementedException();
 }
예제 #6
0
 /// <summary>
 /// Scales a 4-D vector.
 /// </summary>
 /// <param name="source">Source TGCVector4 structure.</param>
 /// <param name="scalingFactor">Scaling value.</param>
 /// <returns>A TGCVector4 structure that is the scaled vector.</returns>
 public static TGCVector4 Scale(TGCVector4 source, float scalingFactor)
 {
     throw new NotImplementedException();
 }
예제 #7
0
 /// <summary>
 /// Returns the normalized version of a 4-D vector.
 /// </summary>
 /// <param name="source">Source TGCVector4 structure.</param>
 /// <returns>A TGCVector4 structure that is the normalized version of the specified vector.</returns>
 public static TGCVector4 Normalize(TGCVector4 source)
 {
     throw new NotImplementedException();
 }
예제 #8
0
 /// <summary>
 /// Returns a point in barycentric coordinates, using the specified 4-D vectors.
 /// </summary>
 /// <param name="v1">Source TGCVector4 structure.</param>
 /// <param name="v2">Source TGCVector4 structure.</param>
 /// <param name="v3">Source TGCVector4 structure.</param>
 /// <param name="f">Weighting factor.</param>
 /// <param name="g">Weighting factor.</param>
 /// <returns>A TGCVector4 structure in barycentric coordinates.</returns>
 public static TGCVector4 BaryCentric(TGCVector4 v1, TGCVector4 v2, TGCVector4 v3, float f, float g)
 {
     throw new NotImplementedException();
 }
예제 #9
0
 /// <summary>
 /// Returns a 4-D vector that is made up of the smallest components of two 4-D vectors.
 /// </summary>
 /// <param name="source">Source Vector4 structure.</param>
 public void Minimize(TGCVector4 source)
 {
     throw new NotImplementedException();
 }
예제 #10
0
 /// <summary>
 /// Performs a linear interpolation between two 4-D vectors.
 /// </summary>
 /// <param name="left">Source TGCVector4 structure.</param>
 /// <param name="right">Source TGCVector4 structure.</param>
 /// <param name="interpolater"></param>
 /// <returns>A TGCVector4 structure that is the result of the linear interpolation.</returns>
 public static TGCVector4 Lerp(TGCVector4 left, TGCVector4 right, float interpolater)
 {
     throw new NotImplementedException();
 }
예제 #11
0
 /// <summary>
 /// Returns the square of the length of a 4-D vector.
 /// </summary>
 /// <param name="source">Source TGCVector4 structure.</param>
 /// <returns>A Single value that indicates the vector's squared length.</returns>
 public static float LengthSq(TGCVector4 source)
 {
     throw new NotImplementedException();
 }
예제 #12
0
 /// <summary>
 /// Performs a Hermite spline interpolation using the specified 4-D vectors.
 /// </summary>
 /// <param name="position">Source TGCVector4 structure that is a position vector.</param>
 /// <param name="tangent">Source TGCVector4 structure that is a tangent vector.</param>
 /// <param name="position2">Source TGCVector4 structure that is a position vector.</param>
 /// <param name="tangent2">Source TGCVector4 structure that is a tangent vector.</param>
 /// <param name="weightingFactor">Weighting factor.</param>
 /// <returns>A TGCVector4 structure that is the result of the Hermite spline interpolation.</returns>
 public static TGCVector4 Hermite(TGCVector4 position, TGCVector4 tangent, TGCVector4 position2, TGCVector4 tangent2, float weightingFactor)
 {
     throw new NotImplementedException();
 }
예제 #13
0
 /// <summary>
 /// Determines the cross product in four dimensions.
 /// </summary>
 /// <param name="v1">Source TGCVector4 structure.</param>
 /// <param name="v2">Source TGCVector4 structure.</param>
 /// <param name="v3">Source TGCVector4 structure.</param>
 /// <returns>A TGCVector4 structure that is the cross product.</returns>
 public static TGCVector4 Cross(TGCVector4 v1, TGCVector4 v2, TGCVector4 v3)
 {
     throw new NotImplementedException();
 }
예제 #14
0
 /// <summary>
 /// Performs a Catmull-Rom interpolation using specified 4-D vectors.
 /// </summary>
 /// <param name="position1">Source TGCVector4 structure that is a position vector.</param>
 /// <param name="position2">Source TGCVector4 structure that is a position vector.</param>
 /// <param name="position3">Source TGCVector4 structure that is a position vector.</param>
 /// <param name="position4">Source TGCVector4 structure that is a position vector.</param>
 /// <param name="weightingFactor">Weighting factor.</param>
 /// <returns>A TGCVector4 structure that is the result of the Catmull-Rom interpolation.</returns>
 public static TGCVector4 CatmullRom(TGCVector4 position1, TGCVector4 position2, TGCVector4 position3, TGCVector4 position4, float weightingFactor)
 {
     throw new NotImplementedException();
 }
예제 #15
0
 /// <summary>
 /// Multiplies a 4-D vector by a Single value.
 /// </summary>
 /// <param name="source">Source TGCVector4 structure.</param>
 /// <param name="f">Source Single value used as a multiplier.</param>
 /// <returns>A Vector4 structure that is multiplied by the Single value.</returns>
 public static TGCVector4 Multiply(TGCVector4 source, float f)
 {
     throw new NotImplementedException();
 }
예제 #16
0
 /// <summary>
 /// Computes the dot product of a plane and a vector.
 /// </summary>
 /// <param name="v">Source Vector4 structure.</param>
 /// <returns>A Single value that is the dot product of the plane and the vector.</returns>
 public float Dot(TGCVector4 v)
 {
     return(this.dxPlane.Dot(v));
 }
예제 #17
0
 /// <summary>
 /// Builds a matrix that flattens geometry into a plane.
 /// </summary>
 /// <param name="light">A Vector4 structure that describes the light's position.</param>
 /// <param name="plane">Source TGCPlane structure.</param>
 public void Shadow(TGCVector4 light, TGCPlane plane)
 {
     this.dxMatrix.Shadow(light, plane);
 }