예제 #1
0
 public ContainmentTypes Contains(Vec3 point)
 {
     throw new NotImplementedException();
 }
예제 #2
0
 public static void Contains(ref Frustum3 boundingFrustum, ref Vec3 point, out ContainmentTypes result)
 {
     throw new NotImplementedException();
 }
예제 #3
0
 public Vec3 InersectPlane(Vec3 planeNormal)
 {
     return(this - (planeNormal * this.Dot(planeNormal)));
 }
예제 #4
0
 public Vec3 InersectPlane(Vec3 planeNormal, Vec3 planeLocation)
 {
     return(this - (planeNormal * (this - planeLocation).Dot(planeNormal)));
 }
 public RigidTransform3(Vec3 position)
 {
     this.position = position;
     rotation      = Quat.Identity;
 }
예제 #6
0
 public Vec3 Min(Vec3 values)
 {
     return(new Vec3(Math.Min(x, values.x), Math.Min(y, values.y), Math.Min(z, values.z)));
 }
예제 #7
0
 public Vec3 Reflect(Vec3 planeNormal)
 {
     return(this - (planeNormal * this.Dot(planeNormal) * 2));
 }
예제 #8
0
 public Bound3(Vec3 min, Vec3 max)
 {
     this.min = min;
     this.max = max;
 }
예제 #9
0
 public Vec3 Cross(Vec3 vector)
 {
     return(new Vec3(((y * vector.z) - (z * vector.y)), ((z * vector.x) - (x * vector.z)), ((x * vector.y) - (y * vector.x))));
 }
예제 #10
0
 public bool ApproxEquals(Vec3 vector, float tolerance)
 {
     return(Distance(vector) <= tolerance);
 }
예제 #11
0
 public float Dot(Vec3 vector)
 {
     return((x * vector.x) + (y * vector.y) + (z * vector.z));
 }
예제 #12
0
 public float DistanceSquared(Vec3 vector)
 {
     return((vector - this).Dot());
 }
예제 #13
0
 public float Distance(Vec3 vector)
 {
     return((vector - this).Length());
 }
예제 #14
0
 public bool Intersects(Vec3 point)
 {
     throw new NotImplementedException();
 }
예제 #15
0
 public Vec3 InersectNormal(Vec3 normal)
 {
     return(normal * this.Dot(normal));
 }
예제 #16
0
 public static void Intersects(ref Frustum3 boundingFrustum, ref Vec3 point, out bool result)
 {
     throw new NotImplementedException();
 }
예제 #17
0
 public Vec3 InersectRay(Vec3 rayOrigin, Vec3 rayDirection)
 {
     return((rayDirection * (this - rayOrigin).Dot(rayDirection)) + rayOrigin);
 }
 public RigidTransform3(Quat orienation, Vec3 position)
 {
     rotation      = orienation;
     this.position = position;
 }
예제 #19
0
        public Vec3 InersectLine(Line3 line)
        {
            Vec3 pointOffset = (this - line.point1), vector = (line.point2 - line.point1).Normalize();

            return((vector * pointOffset.Dot(vector)) + line.point1);
        }
 public RigidTransform3(Quat orienation)
 {
     position = new Vec3();
     rotation = orienation;
 }
예제 #21
0
 public Vec3 Max(Vec3 values)
 {
     return(new Vec3(Math.Max(x, values.x), Math.Max(y, values.y), Math.Max(z, values.z)));
 }