C# Класс ManicDigger.Collisions.Intersection

Показать файл Открыть проект

Открытые методы

Метод Описание
BoxTriangles ( Vector3 a, Vector3 b ) : IEnumerable
BoxTrianglesAndSides ( Vector3 a, Vector3 b ) : IEnumerable
CheckLineBox ( Box3D box, Line3D line, Vector3 &hit ) : bool

Warning: randomly returns incorrect hit position (back side of box).

CheckLineBox ( Vector3 B1, Vector3 B2, Vector3 L1, Vector3 L2, Vector3 &Hit ) : bool
CheckLineBoxExact ( Line3D line, Box3D box ) : BlockPosSide?
RayTriangle ( Line3D R, Triangle3D T, Vector3 &I ) : int

Приватные методы

Метод Описание
GetIntersection ( float fDst1, float fDst2, Vector3 P1, Vector3 P2, Vector3 &Hit ) : bool
InBox ( Vector3 Hit, Vector3 B1, Vector3 B2, int Axis ) : bool
Interpolate ( Vector3 a, Vector3 b, float f ) : Vector3
PointInBox ( Vector3 v, Box3D node ) : bool
dot ( Vector3 u, Vector3 v ) : float

Описание методов

BoxTriangles() публичный статический Метод

public static BoxTriangles ( Vector3 a, Vector3 b ) : IEnumerable
a Vector3
b Vector3
Результат IEnumerable

BoxTrianglesAndSides() публичный статический Метод

public static BoxTrianglesAndSides ( Vector3 a, Vector3 b ) : IEnumerable
a Vector3
b Vector3
Результат IEnumerable

CheckLineBox() публичный статический Метод

Warning: randomly returns incorrect hit position (back side of box).
public static CheckLineBox ( Box3D box, Line3D line, Vector3 &hit ) : bool
box Box3D
line Line3D
hit Vector3
Результат bool

CheckLineBox() публичный статический Метод

public static CheckLineBox ( Vector3 B1, Vector3 B2, Vector3 L1, Vector3 L2, Vector3 &Hit ) : bool
B1 Vector3
B2 Vector3
L1 Vector3
L2 Vector3
Hit Vector3
Результат bool

CheckLineBoxExact() публичный статический Метод

public static CheckLineBoxExact ( Line3D line, Box3D box ) : BlockPosSide?
line Line3D
box Box3D
Результат BlockPosSide?

RayTriangle() публичный статический Метод

public static RayTriangle ( Line3D R, Triangle3D T, Vector3 &I ) : int
R Line3D
T Triangle3D
I Vector3
Результат int