C# Класс Pathfinding.Polygon

Показать файл Открыть проект Примеры использования класса

Открытые свойства

Свойство Тип Описание
hullCache List

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

Метод Описание
ClosestPointOnTriangle ( Vector3 triangle, Vector3 point ) : Vector3
ClosestPointOnTriangle ( Vector3 tr0, Vector3 tr1, Vector3 tr2, Vector3 point ) : Vector3
ContainsPoint ( Int2 a, Int2 b, Int2 c, Int2 p ) : bool
ContainsPoint ( Int3 a, Int3 b, Int3 c, Int3 p ) : bool
ContainsPoint ( Vector2 polyPoints, Vector2 p ) : bool
ContainsPoint ( Vector3 polyPoints, Vector3 p ) : bool
ContainsPoint ( Vector3 a, Vector3 b, Vector3 c, Vector3 p ) : bool
ConvexHull ( Vector3 points ) : Vector3[]
DistanceSegmentSegment3D ( Vector3 s1, Vector3 e1, Vector3 s2, Vector3 e2 ) : float
IntersectionFactor ( Int3 start1, Int3 end1, Int3 start2, Int3 end2, float &factor1, float &factor2 ) : bool
IntersectionFactor ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2, float &factor1, float &factor2 ) : bool
IntersectionFactor ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2 ) : float
IntersectionFactorRay ( Int3 start1, Int3 end1, Int3 start2, Int3 end2 ) : float
IntersectionFactorRaySegment ( Int3 start1, Int3 end1, Int3 start2, Int3 end2 ) : bool
IntersectionPoint ( Vector2 start1, Vector2 end1, Vector2 start2, Vector2 end2 ) : Vector2
IntersectionPoint ( Vector2 start1, Vector2 end1, Vector2 start2, Vector2 end2, bool &intersects ) : Vector2
IntersectionPoint ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2 ) : Vector3
IntersectionPoint ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2, bool &intersects ) : Vector3
IntersectionPointOptimized ( Vector3 start1, Vector3 dir1, Vector3 start2, Vector3 dir2 ) : Vector3
IntersectionPointOptimized ( Vector3 start1, Vector3 dir1, Vector3 start2, Vector3 dir2, bool &intersects ) : Vector3
Intersects ( Int2 a, Int2 b, Int2 a2, Int2 b2 ) : bool
Intersects ( Int3 a, Int3 b, Int3 a2, Int3 b2 ) : bool
Intersects ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2 ) : bool
IntersectsUnclamped ( Vector3 a, Vector3 b, Vector3 a2, Vector3 b2 ) : bool
IsClockwise ( Int3 a, Int3 b, Int3 c ) : bool
IsClockwise ( Vector3 a, Vector3 b, Vector3 c ) : bool
IsClockwiseMargin ( Int2 a, Int2 b, Int2 c ) : bool
IsClockwiseMargin ( Int3 a, Int3 b, Int3 c ) : bool
IsClockwiseMargin ( Vector3 a, Vector3 b, Vector3 c ) : bool
IsColinear ( Int3 a, Int3 b, Int3 c ) : bool
IsColinear ( Vector3 a, Vector3 b, Vector3 c ) : bool
IsColinearAlmost ( Int3 a, Int3 b, Int3 c ) : bool
Left ( Int2 a, Int2 b, Int2 c ) : bool
Left ( Int3 a, Int3 b, Int3 c ) : bool
Left ( Vector3 a, Vector3 b, Vector3 p ) : bool
LeftNotColinear ( Int3 a, Int3 b, Int3 c ) : bool
LeftNotColinear ( Vector3 a, Vector3 b, Vector3 p ) : bool
LineIntersectsBounds ( Bounds bounds, Vector3 a, Vector3 b ) : bool
SegmentIntersectionPoint ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2, bool &intersects ) : Vector3
Subdivide ( Vector3 path, int subdivisions ) : Vector3[]
TriangleArea ( Vector3 a, Vector3 b, Vector3 c ) : float
TriangleArea ( Int3 a, Int3 b, Int3 c ) : long
TriangleArea2 ( Vector3 a, Vector3 b, Vector3 c ) : float
TriangleArea2 ( Int3 a, Int3 b, Int3 c ) : long

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

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

public static ClosestPointOnTriangle ( Vector3 triangle, Vector3 point ) : Vector3
triangle Vector3
point Vector3
Результат Vector3

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

public static ClosestPointOnTriangle ( Vector3 tr0, Vector3 tr1, Vector3 tr2, Vector3 point ) : Vector3
tr0 Vector3
tr1 Vector3
tr2 Vector3
point Vector3
Результат Vector3

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

public static ContainsPoint ( Int2 a, Int2 b, Int2 c, Int2 p ) : bool
a Int2
b Int2
c Int2
p Int2
Результат bool

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

public static ContainsPoint ( Int3 a, Int3 b, Int3 c, Int3 p ) : bool
a Int3
b Int3
c Int3
p Int3
Результат bool

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

public static ContainsPoint ( Vector2 polyPoints, Vector2 p ) : bool
polyPoints Vector2
p Vector2
Результат bool

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

public static ContainsPoint ( Vector3 polyPoints, Vector3 p ) : bool
polyPoints Vector3
p Vector3
Результат bool

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

public static ContainsPoint ( Vector3 a, Vector3 b, Vector3 c, Vector3 p ) : bool
a Vector3
b Vector3
c Vector3
p Vector3
Результат bool

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

public static ConvexHull ( Vector3 points ) : Vector3[]
points Vector3
Результат Vector3[]

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

public static DistanceSegmentSegment3D ( Vector3 s1, Vector3 e1, Vector3 s2, Vector3 e2 ) : float
s1 Vector3
e1 Vector3
s2 Vector3
e2 Vector3
Результат float

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

public static IntersectionFactor ( Int3 start1, Int3 end1, Int3 start2, Int3 end2, float &factor1, float &factor2 ) : bool
start1 Int3
end1 Int3
start2 Int3
end2 Int3
factor1 float
factor2 float
Результат bool

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

public static IntersectionFactor ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2, float &factor1, float &factor2 ) : bool
start1 Vector3
end1 Vector3
start2 Vector3
end2 Vector3
factor1 float
factor2 float
Результат bool

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

public static IntersectionFactor ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2 ) : float
start1 Vector3
end1 Vector3
start2 Vector3
end2 Vector3
Результат float

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

public static IntersectionFactorRay ( Int3 start1, Int3 end1, Int3 start2, Int3 end2 ) : float
start1 Int3
end1 Int3
start2 Int3
end2 Int3
Результат float

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

public static IntersectionFactorRaySegment ( Int3 start1, Int3 end1, Int3 start2, Int3 end2 ) : bool
start1 Int3
end1 Int3
start2 Int3
end2 Int3
Результат bool

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

public static IntersectionPoint ( Vector2 start1, Vector2 end1, Vector2 start2, Vector2 end2 ) : Vector2
start1 Vector2
end1 Vector2
start2 Vector2
end2 Vector2
Результат Vector2

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

public static IntersectionPoint ( Vector2 start1, Vector2 end1, Vector2 start2, Vector2 end2, bool &intersects ) : Vector2
start1 Vector2
end1 Vector2
start2 Vector2
end2 Vector2
intersects bool
Результат Vector2

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

public static IntersectionPoint ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2 ) : Vector3
start1 Vector3
end1 Vector3
start2 Vector3
end2 Vector3
Результат Vector3

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

public static IntersectionPoint ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2, bool &intersects ) : Vector3
start1 Vector3
end1 Vector3
start2 Vector3
end2 Vector3
intersects bool
Результат Vector3

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

public static IntersectionPointOptimized ( Vector3 start1, Vector3 dir1, Vector3 start2, Vector3 dir2 ) : Vector3
start1 Vector3
dir1 Vector3
start2 Vector3
dir2 Vector3
Результат Vector3

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

public static IntersectionPointOptimized ( Vector3 start1, Vector3 dir1, Vector3 start2, Vector3 dir2, bool &intersects ) : Vector3
start1 Vector3
dir1 Vector3
start2 Vector3
dir2 Vector3
intersects bool
Результат Vector3

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

public static Intersects ( Int2 a, Int2 b, Int2 a2, Int2 b2 ) : bool
a Int2
b Int2
a2 Int2
b2 Int2
Результат bool

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

public static Intersects ( Int3 a, Int3 b, Int3 a2, Int3 b2 ) : bool
a Int3
b Int3
a2 Int3
b2 Int3
Результат bool

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

public static Intersects ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2 ) : bool
start1 Vector3
end1 Vector3
start2 Vector3
end2 Vector3
Результат bool

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

public static IntersectsUnclamped ( Vector3 a, Vector3 b, Vector3 a2, Vector3 b2 ) : bool
a Vector3
b Vector3
a2 Vector3
b2 Vector3
Результат bool

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

public static IsClockwise ( Int3 a, Int3 b, Int3 c ) : bool
a Int3
b Int3
c Int3
Результат bool

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

public static IsClockwise ( Vector3 a, Vector3 b, Vector3 c ) : bool
a Vector3
b Vector3
c Vector3
Результат bool

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

public static IsClockwiseMargin ( Int2 a, Int2 b, Int2 c ) : bool
a Int2
b Int2
c Int2
Результат bool

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

public static IsClockwiseMargin ( Int3 a, Int3 b, Int3 c ) : bool
a Int3
b Int3
c Int3
Результат bool

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

public static IsClockwiseMargin ( Vector3 a, Vector3 b, Vector3 c ) : bool
a Vector3
b Vector3
c Vector3
Результат bool

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

public static IsColinear ( Int3 a, Int3 b, Int3 c ) : bool
a Int3
b Int3
c Int3
Результат bool

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

public static IsColinear ( Vector3 a, Vector3 b, Vector3 c ) : bool
a Vector3
b Vector3
c Vector3
Результат bool

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

public static IsColinearAlmost ( Int3 a, Int3 b, Int3 c ) : bool
a Int3
b Int3
c Int3
Результат bool

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

public static Left ( Int2 a, Int2 b, Int2 c ) : bool
a Int2
b Int2
c Int2
Результат bool

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

public static Left ( Int3 a, Int3 b, Int3 c ) : bool
a Int3
b Int3
c Int3
Результат bool

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

public static Left ( Vector3 a, Vector3 b, Vector3 p ) : bool
a Vector3
b Vector3
p Vector3
Результат bool

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

public static LeftNotColinear ( Int3 a, Int3 b, Int3 c ) : bool
a Int3
b Int3
c Int3
Результат bool

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

public static LeftNotColinear ( Vector3 a, Vector3 b, Vector3 p ) : bool
a Vector3
b Vector3
p Vector3
Результат bool

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

public static LineIntersectsBounds ( Bounds bounds, Vector3 a, Vector3 b ) : bool
bounds UnityEngine.Bounds
a Vector3
b Vector3
Результат bool

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

public static SegmentIntersectionPoint ( Vector3 start1, Vector3 end1, Vector3 start2, Vector3 end2, bool &intersects ) : Vector3
start1 Vector3
end1 Vector3
start2 Vector3
end2 Vector3
intersects bool
Результат Vector3

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

public static Subdivide ( Vector3 path, int subdivisions ) : Vector3[]
path Vector3
subdivisions int
Результат Vector3[]

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

public static TriangleArea ( Vector3 a, Vector3 b, Vector3 c ) : float
a Vector3
b Vector3
c Vector3
Результат float

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

public static TriangleArea ( Int3 a, Int3 b, Int3 c ) : long
a Int3
b Int3
c Int3
Результат long

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

public static TriangleArea2 ( Vector3 a, Vector3 b, Vector3 c ) : float
a Vector3
b Vector3
c Vector3
Результат float

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

public static TriangleArea2 ( Int3 a, Int3 b, Int3 c ) : long
a Int3
b Int3
c Int3
Результат long

Описание свойств

hullCache публичное статическое свойство

public static List hullCache
Результат List