コード例 #1
0
 /// <summary>
 /// Transforms a coordinate point. The passed parameter point should not be modified.
 /// </summary>
 /// <param name="point"></param>
 /// <returns></returns>
 public override SharpMap.Geometries.Point Transform(SharpMap.Geometries.Point point)
 {
     SharpMap.Geometries.Point pOut = point.Clone();
     pOut.X /= SourceGCS.AngularUnit.RadiansPerUnit;
     pOut.X -= SourceGCS.PrimeMeridian.Longitude / SourceGCS.PrimeMeridian.AngularUnit.RadiansPerUnit;
     pOut.X += TargetGCS.PrimeMeridian.Longitude / TargetGCS.PrimeMeridian.AngularUnit.RadiansPerUnit;
     pOut.X *= SourceGCS.AngularUnit.RadiansPerUnit;
     return(pOut);
 }
コード例 #2
0
 public override SharpMap.Geometries.Point Transform(SharpMap.Geometries.Point point)
 {
     if (point is SharpMap.Geometries.Point3D)
     {
         SharpMap.Geometries.Point pnt = (point as SharpMap.Geometries.Point3D).Clone();
         foreach (ICoordinateTransformation ct in _CoordinateTransformationList)
         {
             pnt = ct.MathTransform.Transform(pnt);
         }
         return(pnt);
     }
     else
     {
         SharpMap.Geometries.Point pnt = point.Clone();
         foreach (ICoordinateTransformation ct in _CoordinateTransformationList)
         {
             pnt = ct.MathTransform.Transform(pnt);
         }
         return(pnt);
     }
 }