HPASharp.HierarchicalMap.SetCurrentLevel C# (CSharp) Method

SetCurrentLevel() public method

public SetCurrentLevel ( int level ) : void
level int
return void
		public void SetCurrentLevel(int level)
		{
			this.currentLevel = level;
		}
	}

Usage Example

		/// <summary>
		/// Inserts a node and creates edges around the local points of the cluster it the
		/// node we try to insert belongs to at each level
		/// </summary>
		private static void InsertStalHEdges(HierarchicalMap map, int nodeId)
		{
			var abstractNodeId = map.AbsNodeIds[nodeId];
			var nodeInfo = map.AbstractGraph.GetNodeInfo(abstractNodeId);
			var oldLevel = nodeInfo.Level;
			nodeInfo.Level = map.MaxLevel;
			for (var level = oldLevel + 1; level <= map.MaxLevel; level++)
			{
				map.SetCurrentLevel(level - 1);
				map.SetCurrentCluster(nodeInfo.Position, level);
				var clusterRectangle = map.GetCurrentClusterRectangle();
				var currentClusterY0 = clusterRectangle.Origin.Y;
				var currentClusterY1 = clusterRectangle.Origin.Y + clusterRectangle.Size.Height;
				var currentClusterX0 = clusterRectangle.Origin.X;
				var currentClusterX1 = clusterRectangle.Origin.X + clusterRectangle.Size.Width;
				for (var y = currentClusterY0; y <= currentClusterY1; y++)
					for (var x = currentClusterX0; x <= currentClusterX1; x++)
					{
						var nodeId2 = y * map.Width + x;
						var abstractNodeId2 = map.AbsNodeIds[nodeId2];
						AddEdgesBetweenAbstractNodes(map, abstractNodeId, abstractNodeId2, level);
					}
			}
		}