Class Funnel

Public

Implements the funnel algorithm as well as various related methods.

See

http://digestingduck.blogspot.se/2010/03/simple-stupid-funnel-algorithm.html

FunnelModifier for the component that you can attach to objects to use the funnel algorithm.

Inner Types

Funnel in which the path to the target will be.

Part of a path.

Public Static Methods

Calculate (funnel, unwrap, splitAtEveryPortal)

Calculate the shortest path through the funnel.

Public Static
ConstructFunnelPortals (nodes, part)
Public Static
ShrinkPortals (portals, shrink)
Public Static
Simplify (parts, nodes)
Public Static
Simplify (part, graph, nodes, result, tagPenalties, traversableTags)

Simplifies a funnel path using linecasting.

Public Static
SplitIntoParts (path)
Public Static
Unwrap (funnel, left, right)

Unwraps the funnel portals from 3D space to 2D space.

Public Static

Private/Protected Members

Calculate (left, right, numPortals, startIndex, funnelPath, maxCorners, lastCorner)

Funnel algorithm.

Private Static
FixFunnel (left, right, numPortals)

Try to fix degenerate or invalid funnels.

Private Static
FromXZ (p)
Protected Static
LeftOrColinear (a, b)

True if b is to the left of or on the line from (0,0) to a.

Protected Static
RightOrColinear (a, b)

True if b is to the right of or on the line from (0,0) to a.

Protected Static
ToXZ (p)
Protected Static
UnwrapHelper (portalStart, portalEnd, prevPoint, nextPoint, mRot, mOffset)
Private Static