public virtual void TestReplaceNaNs()
		{
			com.esri.core.geometry.Envelope env = new com.esri.core.geometry.Envelope();
			com.esri.core.geometry.Point pt = new com.esri.core.geometry.Point();
			pt.SetXY(1, 2);
			pt.SetZ(double.NaN);
			pt.QueryEnvelope(env);
			pt.ReplaceNaNs(com.esri.core.geometry.VertexDescription.Semantics.Z, 5);
			NUnit.Framework.Assert.IsTrue(pt.Equals(new com.esri.core.geometry.Point(1, 2, 5)));
			NUnit.Framework.Assert.IsTrue(env.HasZ());
			NUnit.Framework.Assert.IsTrue(env.QueryInterval(com.esri.core.geometry.VertexDescription.Semantics.Z, 0).IsEmpty());
			env.ReplaceNaNs(com.esri.core.geometry.VertexDescription.Semantics.Z, 5);
			NUnit.Framework.Assert.IsTrue(env.QueryInterval(com.esri.core.geometry.VertexDescription.Semantics.Z, 0).Equals(new com.esri.core.geometry.Envelope1D(5, 5)));
		}
		public static com.esri.core.geometry.MultiPoint MakeMultiPoint2()
		{
			com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint();
			com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point();
			pt1.SetX(0.0);
			pt1.SetY(0.0);
			pt1.SetZ(-1.0);
			mpoint.Add(pt1);
			return mpoint;
		}
		public static com.esri.core.geometry.Point MakePoint()
		{
			com.esri.core.geometry.Point point = new com.esri.core.geometry.Point();
			point.SetXY(11, 13);
			point.SetZ(32);
			point.SetM(243);
			point.SetID(1024);
			return point;
		}
		public static com.esri.core.geometry.MultiPoint MakeMultiPoint()
		{
			com.esri.core.geometry.MultiPoint mpoint = new com.esri.core.geometry.MultiPoint();
			com.esri.core.geometry.Point pt1 = new com.esri.core.geometry.Point();
			pt1.SetXY(0, 0);
			pt1.SetZ(-1);
			com.esri.core.geometry.Point pt2 = new com.esri.core.geometry.Point();
			pt2.SetXY(0, 0);
			pt2.SetZ(1);
			com.esri.core.geometry.Point pt3 = new com.esri.core.geometry.Point();
			pt3.SetXY(0, 1);
			pt3.SetZ(1);
			mpoint.Add(pt1);
			mpoint.Add(pt2);
			mpoint.Add(pt3);
			mpoint.SetAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 0, 0, 7);
			mpoint.SetAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 1, 0, 11);
			mpoint.SetAttribute(com.esri.core.geometry.VertexDescription.Semantics.ID, 2, 0, 13);
			return mpoint;
		}
		public virtual void TestReplaceNaNs()
		{
			{
				com.esri.core.geometry.MultiPoint mp = new com.esri.core.geometry.MultiPoint();
				com.esri.core.geometry.Point pt = new com.esri.core.geometry.Point();
				pt.SetXY(1, 2);
				pt.SetZ(double.NaN);
				mp.Add(pt);
				pt = new com.esri.core.geometry.Point();
				pt.SetXY(11, 12);
				pt.SetZ(3);
				mp.Add(pt);
				mp.ReplaceNaNs(com.esri.core.geometry.VertexDescription.Semantics.Z, 5);
				NUnit.Framework.Assert.IsTrue(mp.GetPoint(0).Equals(new com.esri.core.geometry.Point(1, 2, 5)));
				NUnit.Framework.Assert.IsTrue(mp.GetPoint(1).Equals(new com.esri.core.geometry.Point(11, 12, 3)));
			}
			{
				com.esri.core.geometry.Polygon mp = new com.esri.core.geometry.Polygon();
				com.esri.core.geometry.Point pt = new com.esri.core.geometry.Point();
				pt.SetXY(1, 2);
				pt.SetZ(double.NaN);
				mp.StartPath(pt);
				pt = new com.esri.core.geometry.Point();
				pt.SetXY(11, 12);
				pt.SetZ(3);
				mp.LineTo(pt);
				mp.ReplaceNaNs(com.esri.core.geometry.VertexDescription.Semantics.Z, 5);
				NUnit.Framework.Assert.IsTrue(mp.GetPoint(0).Equals(new com.esri.core.geometry.Point(1, 2, 5)));
				NUnit.Framework.Assert.IsTrue(mp.GetPoint(1).Equals(new com.esri.core.geometry.Point(11, 12, 3)));
			}
			{
				com.esri.core.geometry.Polygon mp = new com.esri.core.geometry.Polygon();
				com.esri.core.geometry.Point pt = new com.esri.core.geometry.Point();
				pt.SetXY(1, 2);
				pt.SetM(double.NaN);
				mp.StartPath(pt);
				pt = new com.esri.core.geometry.Point();
				pt.SetXY(11, 12);
				pt.SetM(3);
				mp.LineTo(pt);
				mp.ReplaceNaNs(com.esri.core.geometry.VertexDescription.Semantics.M, 5);
				com.esri.core.geometry.Point p = new com.esri.core.geometry.Point(1, 2);
				p.SetM(5);
				bool b = mp.GetPoint(0).Equals(p);
				NUnit.Framework.Assert.IsTrue(b);
				p = new com.esri.core.geometry.Point(11, 12);
				p.SetM(3);
				b = mp.GetPoint(1).Equals(p);
				NUnit.Framework.Assert.IsTrue(b);
			}
		}