Удаление избыточных методов и реорганизация библиотеки / Removing of extra methods and reorganization of the library

This commit is contained in:
Andrey Pokidov 2024-11-15 19:11:49 +07:00
parent 301cabe8de
commit c38c5ac857
14 changed files with 969 additions and 1583 deletions

View file

@ -109,18 +109,13 @@ namespace Geometry
);
}
public void Invert()
public void Reverse()
{
this.x1 = -this.x1;
this.x2 = -this.x2;
this.x3 = -this.x3;
}
public readonly SPVector3 GetInverted()
{
return new SPVector3(-this.x1, -this.x2, -this.x3);
}
public readonly bool IsZero()
{
return this.GetSquareModule() <= SPUtility.SQUARE_EPSYLON;
@ -160,6 +155,20 @@ namespace Geometry
this.x3 = vector.x3;
}
public void SetReverseOf(in SPVector3 vector)
{
this.x1 = -vector.x1;
this.x2 = -vector.x2;
this.x3 = -vector.x3;
}
public void SetReverseOf(in DPVector3 vector)
{
this.x1 = -(float)vector.x1;
this.x2 = -(float)vector.x2;
this.x3 = -(float)vector.x3;
}
public readonly override string ToString()
{
return String.Format("SPVector3({0}, {1}, {2})", this.x1, this.x2, this.x3);
@ -172,45 +181,6 @@ namespace Geometry
sum.x3 = vector1.x3 + vector2.x3;
}
public static void Add3(
in SPVector3 vector1,
in SPVector3 vector2,
in SPVector3 vector3,
out SPVector3 sum
)
{
sum.x1 = vector1.x1 + vector2.x1 + vector3.x1;
sum.x2 = vector1.x2 + vector2.x2 + vector3.x2;
sum.x3 = vector1.x3 + vector2.x3 + vector3.x3;
}
public static void Add4(
in SPVector3 vector1,
in SPVector3 vector2,
in SPVector3 vector3,
in SPVector3 vector4,
out SPVector3 sum
)
{
sum.x1 = (vector1.x1 + vector2.x1) + (vector3.x1 + vector4.x1);
sum.x2 = (vector1.x2 + vector2.x2) + (vector3.x2 + vector4.x2);
sum.x3 = (vector1.x3 + vector2.x3) + (vector3.x3 + vector4.x3);
}
public static void Add5(
in SPVector3 vector1,
in SPVector3 vector2,
in SPVector3 vector3,
in SPVector3 vector4,
in SPVector3 vector5,
out SPVector3 sum
)
{
sum.x1 = (vector1.x1 + vector2.x1) + (vector3.x1 + vector4.x1) + vector5.x1;
sum.x2 = (vector1.x2 + vector2.x2) + (vector3.x2 + vector4.x2) + vector5.x2;
sum.x3 = (vector1.x3 + vector2.x3) + (vector3.x3 + vector4.x3) + vector5.x3;
}
public static void Subtract(in SPVector3 minuend, in SPVector3 subtrahend, out SPVector3 difference)
{
difference.x1 = minuend.x1 - subtrahend.x1;
@ -218,6 +188,20 @@ namespace Geometry
difference.x3 = minuend.x3 - subtrahend.x3;
}
public static void Muliply(in SPVector3 multiplicand, float multiplier, out SPVector3 product)
{
product.x1 = multiplicand.x1 * multiplier;
product.x2 = multiplicand.x2 * multiplier;
product.x3 = multiplicand.x3 * multiplier;
}
public static void Divide(in SPVector3 dividend, float divisor, out SPVector3 quotient)
{
quotient.x1 = dividend.x1 / divisor;
quotient.x2 = dividend.x2 / divisor;
quotient.x3 = dividend.x3 / divisor;
}
public static void GetWeightedSum2(
float weight1, in SPVector3 vector1,
float weight2, in SPVector3 vector2,
@ -268,20 +252,6 @@ namespace Geometry
sum.x3 = (vector1.x3 * weight1 + vector2.x3 * weight2) + (vector3.x3 * weight3 + vector4.x3 * weight4) + vector5.x3 * weight5;
}
public static void Muliply(in SPVector3 multiplicand, float multiplier, out SPVector3 product)
{
product.x1 = multiplicand.x1 * multiplier;
product.x2 = multiplicand.x2 * multiplier;
product.x3 = multiplicand.x3 * multiplier;
}
public static void Divide(in SPVector3 dividend, float divisor, out SPVector3 quotient)
{
quotient.x1 = dividend.x1 / divisor;
quotient.x2 = dividend.x2 / divisor;
quotient.x3 = dividend.x3 / divisor;
}
public static void GetMean2(
in SPVector3 vector1,
in SPVector3 vector2,