本文整理汇总了C#中CGPath.Touch方法的典型用法代码示例。如果您正苦于以下问题:C# CGPath.Touch方法的具体用法?C# CGPath.Touch怎么用?C# CGPath.Touch使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CGPath
的用法示例。
在下文中一共展示了CGPath.Touch方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Conform
public static CGPath Conform(Transform refTransform, CGPath path, LayerMask layers, Vector3 dir, float offset, float rayLength, bool warp)
{
if (dir != Vector3.zero && rayLength > 0)
{
if (warp)
{
float minDist = float.MaxValue;
for (int i = 0; i < path.Count; i++)
{
RaycastHit hit;
Ray R = new Ray(refTransform.TransformPoint(path.Position[i]), dir);
if (Physics.Raycast(R, out hit, rayLength, layers))
{
if (hit.distance < minDist)
minDist = hit.distance;
}
}
if (minDist != float.MaxValue)
{
for (int i = 0; i < path.Count; i++)
path.Position[i] += dir * (minDist + offset);
}
path.Touch();
//path.Recalculate();
}
else
{
int hi = path.Count;
for (int i = 0; i < hi; i++)
{
RaycastHit hit;
Ray R = new Ray(refTransform.TransformPoint(path.Position[i]), dir);
if (Physics.Raycast(R, out hit, rayLength, layers))
{
path.Position[i] += dir * (hit.distance + offset);
}
}
//path.Recalculate();
}
}
return path;
}