本文整理汇总了C#中Robot.InViewField方法的典型用法代码示例。如果您正苦于以下问题:C# Robot.InViewField方法的具体用法?C# Robot.InViewField怎么用?C# Robot.InViewField使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Robot
的用法示例。
在下文中一共展示了Robot.InViewField方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetRealFieldOfView
// Füllt die Liste mit allen Feldern, die der Roboter sehen kann
private void GetRealFieldOfView(Robot robot, List<Transform> InRealView)
{
for (int i = 0; i < Map.childCount; i++)
{
// Gehe alle Zellen der Karte durch und überprüfe, ob sie im Sichtbereich des Roboters liegen (ohne Schatten/Sichtblockaden)
if (robot.InViewField(Map.GetChild(i)))
{
// Gehe alle Zellen im Sichtradius durch und überprüfe, ob sie Verdeckt sind/im Schatten einer Wand liegen
if (robot.IsInSight(Map.GetChild(i)))
{
InRealView.Add(Map.GetChild(i));
}
}
}
}
示例2: getFrontierCells
// Gibt die Zellen zurück, die am Rand des Sichtfelds liegen
private void getFrontierCells(Robot robot, List<Transform> inRealView, List<Transform> fronterCells)
{
List<Transform> neig = new List<Transform>();
foreach (Transform t in inRealView)
{
getAllNeighbours(t, neig);
foreach (Transform tt in neig)
{
if (!robot.InViewField(tt) || !robot.IsInSight(tt) && (robot.InViewField(tt) && !tt.GetComponent<Cell>().isWall))
{
if (!t.GetComponent<Cell>().isClosed)
{
fronterCells.Add(t);
}
break;
}
}
neig.Clear();
}
}