本文整理汇总了C#中Path.MapPointToPath方法的典型用法代码示例。如果您正苦于以下问题:C# Path.MapPointToPath方法的具体用法?C# Path.MapPointToPath怎么用?C# Path.MapPointToPath使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Path
的用法示例。
在下文中一共展示了Path.MapPointToPath方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SteerToFollowPath
protected Vector2 SteerToFollowPath(int direction, float predictionTime, Path path)
{
float pathDistanceOffset = direction * predictionTime * speed;
Vector2 futurePosition = PredictFuturePosition(predictionTime);
float nowPathDistance = path.MapPointToPathDistance(position);
float futurePathDistance = path.MapPointToPathDistance(futurePosition);
bool rightway = ((pathDistanceOffset > 0) ? (nowPathDistance < futurePathDistance) : (nowPathDistance > futurePathDistance));
Vector2 tangent;
float outside;
path.MapPointToPath(futurePosition, out tangent, out outside);
if ((outside < 0.0f) && rightway)
{
return Vector2.zero;
}
else
{
float targetPathDistance = nowPathDistance + pathDistanceOffset;
Vector2 target = path.MapPathDistanceToPoint(targetPathDistance);
return SteerForSeek (target);
}
}
示例2: SteerToStayOnPath
protected Vector2 SteerToStayOnPath (float predictionTime, Path path)
{
Vector2 futurePosition = PredictFuturePosition(predictionTime);
Vector2 tangent;
float outside;
Vector2 onPath = path.MapPointToPath(futurePosition, out tangent, out outside);
if (outside < 0.0f) return Vector2.zero;
else return SteerForSeek(onPath);
}