/// <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); }
/// <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(); }
/// <summary> /// Adds two 4-D vectors. /// </summary> /// <param name="source">source</param> public void Add(TGCVector4 source) { this.dxVector4.Add(source.ToVector4()); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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(); }
/// <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)); }
/// <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); }