コード例 #1
0
		/// <summary>
		/// Converts a MultiPolygon to &lt;MultiPolygon Text&gt; format, then Appends to it to the writer.
		/// </summary>
		/// <param name="multiPolygon">The MultiPolygon to process.</param>
		/// <param name="writer">The output stream to Append to.</param>
		protected void AppendMultiPolygonText(MultiPolygon multiPolygon, TextWriter writer)
		{
			
			if (multiPolygon.IsEmpty()) 
			{
				writer.Write("EMPTY");
			}
			else 
			{
				//writer.Write("M");
				for (int i = 0; i < multiPolygon.GetNumGeometries(); i++) 
				{
					/*if (i > 0 && (i<multiPolygon.GetNumGeometries()-1) ) 
					{
						writer.Write(", ");
					}*/
					AppendPolygonText((Polygon) multiPolygon.GetGeometryN(i), writer);
				}
				//writer.Write("Z");
			}
			
			
		}
コード例 #2
0
		/// <summary>
		/// Converts a MultiPolygon to &lt;MultiPolygon Text&gt; format, then Appends to it to the writer.
		/// </summary>
		/// <param name="multiPolygon">The MultiPolygon to process.</param>
		/// <param name="level"></param>
		/// <param name="writer">The output stream to Append to.</param>
		protected void AppendMultiPolygonText(MultiPolygon multiPolygon, int level, StringWriter writer)
		{
			
			if ( multiPolygon.IsEmpty() ) 
			{
				writer.Write("EMPTY");
			}
			else 
			{
				int level2 = level;
				bool doIndent = false;
				writer.Write("(");
				for (int i = 0; i < multiPolygon.GetNumGeometries(); i++) 
				{
					if (i > 0) 
					{
						writer.Write(", ");
						level2 = level + 1;
						doIndent = true;
					}
					//AppendPolygonText((Polygon) multiPolygon.GetGeometryN(i), level2, doIndent, writer);
					AppendPolygonText((Polygon) multiPolygon.GetGeometryN(i), level2, doIndent, writer);
				}
				writer.Write(")");
			}
			
		}