Struct FunnelState

Public

Public Methods

CalculateNextCornerIndices (maxCorners, result, startPoint, endPoint, lastCorner)
Public
CalculateNextCorners (maxCorners, splitAtEveryPortal, startPoint, endPoint, result)
Public
Clear ()
Public
Clone ()
Public
ConvertCornerIndicesToPath (indices, numCorners, splitAtEveryPortal, startPoint, endPoint, lastCorner, result)
Public
ConvertCornerIndicesToPathProjected (indices, splitAtEveryPortal, startPoint, endPoint, lastCorner, result, up)
Public
Dispose ()
Public
FunnelState (initialCapacity, allocator)
Public
FunnelState (portals, allocator)
Public
IsReasonableToPopEnd (startPoint, endPoint)

Like IsReasonableToPopStart but for the end of the funnel.

Public
IsReasonableToPopStart (startPoint, endPoint)

True if it is reasonable that the given start point has passed the first portal in the funnel.

Public
Pop (fromStart)
Public
PopEnd ()
Public
PopStart ()
Public
Push (toStart, newLeftPortal, newRightPortal)
Public
PushEnd (newLeftPortal, newRightPortal)
Public
PushStart (newLeftPortal, newRightPortal)
Public
Splice (startIndex, toRemove, newLeftPortal, newRightPortal)
Public
UnwrappedPortalsToWorldMatrix (up)
Public

Public Static Methods

CalculatePortalIntersections (startIndex, endIndex, leftPortals, rightPortals, unwrappedPortals, from, to, result)
Public Static
ConvertCornerIndicesToPathProjected (funnelState, indices, splitAtEveryPortal, startPoint, endPoint, lastCorner, projectionAxis, result, up)
Public Static
DifferentSidesOfLine (start, end, a, b)

True if a and b lie on different sides of the infinite line that passes through start and end.

Public Static
PushStart (leftPortals, rightPortals, unwrappedPortals, newLeftPortal, newRightPortal, projectionAxis)
Public Static

Public Variables

leftFunnel

Left side of the funnel.

Public
projectionAxis

If set to anything other than (0,0,0), then all portals will be projected on a plane with this normal.

Public
rightFunnel

Right side of the funnel.

Public
unwrappedPortals

Unwrapped version of the funnel portals in 2D space.

Public