Exemplo n.º 1
0
    public static ThreadVector3 operator -(ThreadVector3 a, ThreadVector3 b)
    {
        float         x    = a.x - b.x;
        float         y    = a.y - b.y;
        float         z    = a.z - b.z;
        ThreadVector3 temp = new ThreadVector3(x, y, z);

        return(temp);
    }
Exemplo n.º 2
0
    public static ThreadVector3 operator +(ThreadVector3 a, Vector3 b)
    {
        float         x    = a.x + b.x;
        float         y    = a.y + b.y;
        float         z    = a.z + b.z;
        ThreadVector3 temp = new ThreadVector3(x, y, z);

        return(temp);
    }
Exemplo n.º 3
0
    public static float Dot(ThreadVector3 a, ThreadVector3 b)
    {
        float dot = 0;

        dot += a.x * b.x;
        dot += a.y * b.y;
        dot += a.z * b.z;

        return(dot);
    }
Exemplo n.º 4
0
    public static ThreadVector3[] ToThreadVectorArray(List <Vector3> vector3List)
    {
        ThreadVector3[] threadVector3Array = new ThreadVector3[vector3List.Count];

        for (int i = 0; i < vector3List.Count; i++)
        {
            Vector3 vec3 = vector3List[i];
            threadVector3Array[i] = new ThreadVector3(vec3.x, vec3.y, vec3.z);
        }

        return(threadVector3Array);
    }
Exemplo n.º 5
0
    public static ThreadVector3[] ToThreadVectorArray(Vector3[] vector3Array)
    {
        ThreadVector3[] threadVector3Array = new ThreadVector3[vector3Array.Length];

        for (int i = 0; i < vector3Array.Length; i++)
        {
            Vector3 vec3 = vector3Array[i];
            threadVector3Array[i] = new ThreadVector3(vec3.x, vec3.y, vec3.z);
        }

        return(threadVector3Array);
    }
Exemplo n.º 6
0
    public static List <Vector3> ToVectorList(ThreadVector3[] vector3Array)
    {
        List <Vector3> threadVector3List = new List <Vector3>();

        for (int i = 0; i < vector3Array.Length; i++)
        {
            ThreadVector3 vec3 = vector3Array[i];
            threadVector3List.Add(new Vector3(vec3.x, vec3.y, vec3.z));
        }

        return(threadVector3List);
    }
Exemplo n.º 7
0
    public static List <Vector3> ToVectorList(List <ThreadVector3> vector3List)
    {
        List <Vector3> threadVector3List = new List <Vector3>();

        for (int i = 0; i < vector3List.Count; i++)
        {
            ThreadVector3 vec3 = vector3List[i];
            threadVector3List.Add(new Vector3(vec3.x, vec3.y, vec3.z));
        }

        return(threadVector3List);
    }
Exemplo n.º 8
0
 void ThreadedDot(Vector3 a, Vector3 b)
 {
     result       = ThreadVector3.Dot(new ThreadVector3(a), new ThreadVector3(b));
     isThreadDone = true;
 }
Exemplo n.º 9
0
 public static float Distance(ThreadVector3 a, ThreadVector3 b)
 {
     return(ThreadVector3.Magnitude(a - b));
 }
Exemplo n.º 10
0
 public static float Magnitude(ThreadVector3 a)
 {
     return(Mathf.Sqrt(a.x * a.x + a.y * a.y + a.z * a.z));
 }
Exemplo n.º 11
0
 public static ThreadVector3 Normalize(ThreadVector3 a)
 {
     return(a / Mathf.Sqrt((Dot(a, a))));
 }