C# 클래스 Pathfinding.Polygon

파일 보기 프로젝트 열기: henryj41043/TheUnseen 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
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