|
|
|
@@ -47,6 +47,10 @@ type |
|
|
|
class function Length(const v: TVector3): Double; overload; inline; |
|
|
|
class function Length(const v: TVector4): Double; overload; inline; |
|
|
|
|
|
|
|
class function SqrLength(const v: TVector2): Double; overload; inline; |
|
|
|
class function SqrLength(const v: TVector3): Double; overload; inline; |
|
|
|
class function SqrLength(const v: TVector4): Double; overload; inline; |
|
|
|
|
|
|
|
class function Multiply(const v: TVector2; const a: T): TVector2; overload; inline; |
|
|
|
class function Multiply(const v: TVector3; const a: T): TVector3; overload; inline; |
|
|
|
class function Multiply(const v: TVector4; const a: T): TVector4; overload; inline; |
|
|
|
@@ -386,6 +390,21 @@ begin |
|
|
|
result := SQRT(v[0]*v[0] + v[1]*v[1] + v[2]*v[2]) * v[3]; |
|
|
|
end; |
|
|
|
|
|
|
|
class function TgluVectorHelperI.SqrLength(const v: TVector2): Double; |
|
|
|
begin |
|
|
|
result := v[0]*v[0] + v[1]*v[1]; |
|
|
|
end; |
|
|
|
|
|
|
|
class function TgluVectorHelperI.SqrLength(const v: TVector3): Double; |
|
|
|
begin |
|
|
|
result := v[0]*v[0] + v[1]*v[1] + v[2]*v[2]; |
|
|
|
end; |
|
|
|
|
|
|
|
class function TgluVectorHelperI.SqrLength(const v: TVector4): Double; |
|
|
|
begin |
|
|
|
result := (v[0]*v[0] + v[1]*v[1] + v[2]*v[2]) * v[3]; |
|
|
|
end; |
|
|
|
|
|
|
|
class function TgluVectorHelperI.Multiply(const v: TVector2; const a: T): TVector2; |
|
|
|
begin |
|
|
|
result[0] := v[0] * a; |
|
|
|
|