remove all not coneccted nodes
parent
6dc278323a
commit
4830bbddd6
|
@ -7,6 +7,7 @@ using OpenSim.Region.Framework.Interfaces;
|
||||||
using OpenSim.Region.Framework.Scenes;
|
using OpenSim.Region.Framework.Scenes;
|
||||||
using OpenSim.Region.ScriptEngine.Interfaces;
|
using OpenSim.Region.ScriptEngine.Interfaces;
|
||||||
using OpenSim.Region.ScriptEngine.Shared.Api;
|
using OpenSim.Region.ScriptEngine.Shared.Api;
|
||||||
|
using Roy_T.AStar.Graphs;
|
||||||
using Roy_T.AStar.Grids;
|
using Roy_T.AStar.Grids;
|
||||||
using Roy_T.AStar.Paths;
|
using Roy_T.AStar.Paths;
|
||||||
using Roy_T.AStar.Primitives;
|
using Roy_T.AStar.Primitives;
|
||||||
|
@ -427,6 +428,15 @@ namespace OpenSim.Modules.PathFinding
|
||||||
Velocity _pathFindingVelocity = Velocity.FromKilometersPerHour(11.5f);
|
Velocity _pathFindingVelocity = Velocity.FromKilometersPerHour(11.5f);
|
||||||
|
|
||||||
Grid _pathFindingGrid = Grid.CreateGridWithLateralAndDiagonalConnections(_pathFindingGridSize, _pathFindingCellSize, _pathFindingVelocity);
|
Grid _pathFindingGrid = Grid.CreateGridWithLateralAndDiagonalConnections(_pathFindingGridSize, _pathFindingCellSize, _pathFindingVelocity);
|
||||||
|
|
||||||
|
foreach(INode _thisNode in _pathFindingGrid.GetAllNodes())
|
||||||
|
{
|
||||||
|
PathNode _node = _env.Nodes.Find(X => X.PositionX == (int)_thisNode.Position.X && X.PositionY == (int)_thisNode.Position.Y);
|
||||||
|
|
||||||
|
if(_node == null)
|
||||||
|
_pathFindingGrid.RemoveDiagonalConnectionsIntersectingWithNode(new GridPosition((int)_thisNode.Position.X, (int)_thisNode.Position.Y));
|
||||||
|
}
|
||||||
|
|
||||||
PathFinder pathFinder = new PathFinder();
|
PathFinder pathFinder = new PathFinder();
|
||||||
Path _pathFindingPath = pathFinder.FindPath(new GridPosition(_startNode.PositionX, _startNode.PositionY), new GridPosition(_targetNode.PositionX, _targetNode.PositionY), _pathFindingGrid);
|
Path _pathFindingPath = pathFinder.FindPath(new GridPosition(_startNode.PositionX, _startNode.PositionY), new GridPosition(_targetNode.PositionX, _targetNode.PositionY), _pathFindingGrid);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue