Ejemplo n.º 1
0
    private void TestLVector3()
    {
        LVector3 v1 = new LVector3(3.3d, 1.2d, 1.5d);
        LVector3 v2 = new LVector3(1.2d, 3.3d, 1.5d);

        AssertTrue(v1 != v2);
        AssertFalse(v1 == v2);
        AssertTrue(v1 + v2 == new LVector3(4.5d, 4.5d, 3));
        AssertTrue(v1 - v2 == new LVector3(2.1d, -2.1d, 0));
        AssertTrue(v1 * 2 == new LVector3(6.6d, 2.4d, 3));
        AssertTrue(v1 / 3 == new LVector3(1.1d, 0.4d, 0.5d));
        AssertTrue(LVector3.zero.normalized == LVector3.zero);
        AssertTrue(LVector3.Dot(v1, v2) == 10.17d);
        AssertTrue(LVector3.Dot(LVector3.Cross(v1, v2), v2) == 0);
        Debug.Log(v1.sqrMagnitude);
        Debug.Log(v1.magnitude);
        Debug.Log(v1.normalized);
        Debug.Log("----------------------");
    }
Ejemplo n.º 2
0
 public LFloat Dot(LVector3 v)
 {
     return(LVector3.Dot(this, v));
 }
Ejemplo n.º 3
0
 public static LFloat Angle(LVector3 lhs, LVector3 rhs)
 {
     lhs.Normalize();
     rhs.Normalize();
     return(LMath.Acos(lhs.Dot(rhs)) * LMath.RadToDeg);
 }
Ejemplo n.º 4
0
 public static LVector2 Project(LVector3 vec, LVector3 on)
 {
     return(vec.Dot(on) / on.sqrMagnitude * on);
 }
Ejemplo n.º 5
0
 public static LFloat dot(this LVector3 vec, LFloat x, LFloat y, LFloat z)
 {
     return(LVector3.Dot(vec, new LVector3(x, y, z)));
 }
Ejemplo n.º 6
0
 public static LFloat dot(this LVector3 vec, LVector3 val)
 {
     return(LVector3.Dot(vec, val));
 }