示例#1
0
		/**
		 * Use a GeometryGraph to node the created edges,
		 * and create split edges between the nodes
		 */
		private ArrayList NodeEdges(ArrayList edges)
		{
			// intersect edges again to ensure they are noded correctly
			GeometryGraph graph = new GeometryGraph(0, _geomFact.PrecisionModel, 0);
			//for (Iterator i = edges.iterator(); i.hasNext(); ) 
			foreach(object obj in edges)
			{
				Edge e = (Edge) obj;
				graph.AddEdge(e);
			}
			SegmentIntersector si = graph.ComputeSelfNodes(_li);
			/*
			if (si.hasProperIntersection())
			Debug.println("proper intersection found");
			else
			Debug.println("no proper intersection found");
			*/
			ArrayList newEdges = new ArrayList();
			graph.ComputeSplitEdges(newEdges);
			return newEdges;
		}