public static SpatialReference CreateSpatialReference( int wkid )
Public Overloads Shared Function CreateSpatialReference( _ ByVal wkid As Integer _ ) As SpatialReference
Parameters
- wkid
- The well-known ID that represents the Spatial Reference.
public static SpatialReference CreateSpatialReference( int wkid )
Public Overloads Shared Function CreateSpatialReference( _ ByVal wkid As Integer _ ) As SpatialReference
// Use a builder convenience method or use a builder constructor. // SpatialReferenceBuilder convenience methods don't need to run on the MCT. SpatialReference sr3857 = SpatialReferenceBuilder.CreateSpatialReference(3857); // SpatialReferenceBuilder constructors need to run on the MCT. ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() => { using (SpatialReferenceBuilder srBuilder = new SpatialReferenceBuilder(3857)) { // do something with the builder sr3857 = srBuilder.ToSpatialReference(); } });
// methods need to run on the MCT ArcGIS.Desktop.Framework.Threading.Tasks.QueuedTask.Run(() => { // // find the first transformation used between spatial references 4267 and 4326 // SpatialReference sr4267 = SpatialReferenceBuilder.CreateSpatialReference(4267); SpatialReference sr4326 = SpatialReferences.WGS84; List<ProjectionTransformation> transformations = ProjectionTransformation.FindTransformations(sr4267, sr4326); // transformations.Count = 1 ProjectionTransformation projTrans = transformations[0]; CompositeGeographicTransformation compositeGT = projTrans.Transformation as CompositeGeographicTransformation; GeographicTransformation gt = compositeGT[0]; // gt.Wkid = 15851 // gt.Name = "NAD_1927_To_WGS_1984_79_CONUS" // gt.IsForward = true // // find the first five transformation used between spatial references 4267 and 4326 // transformations = ProjectionTransformation.FindTransformations( sr4267, sr4326, numResults: 5); // transformations.Count = 5 projTrans = transformations[0]; compositeGT = projTrans.Transformation as CompositeGeographicTransformation; // compositeGT.Count = 1 // compositeGT[0].Wkid = 15851 // compositeGT[0].Name = "NAD_1927_To_WGS_1984_79_CONUS" // compositeGT[0].IsForward = true projTrans = transformations[1]; compositeGT = projTrans.Transformation as CompositeGeographicTransformation; // compositeGT.Count = 1 // compositeGT[0].Wkid = 1173 // compositeGT[0].Name = "NAD_1927_To_WGS_1984_4" // compositeGT[0].IsForward = true projTrans = transformations[2]; compositeGT = projTrans.Transformation as CompositeGeographicTransformation; // compositeGT.Count = 1 // compositeGT[0].Wkid = 1172 // compositeGT[0].Name = "NAD_1927_To_WGS_1984_3" // compositeGT[0].IsForward = true projTrans = transformations[3]; compositeGT = projTrans.Transformation as CompositeGeographicTransformation; // compositeGT.Count = 2 // compositeGT[0].Wkid = 1241 // compositeGT[0].Name = "NAD_1927_To_NAD_1983_NADCON" // compositeGT[0].IsForward = true // compositeGT[1].Wkid = 108190 // compositeGT[1].Name = "WGS_1984_(ITRF00)_To_NAD_1983" // compositeGT[1].IsForward = false projTrans = transformations[4]; compositeGT = projTrans.Transformation as CompositeGeographicTransformation; // compositeGT.Count = 2 // compositeGT[0].Wkid = 1241 // compositeGT[0].Name = "NAD_1927_To_NAD_1983_NADCON" // compositeGT[0].IsForward = true // compositeGT[1].Wkid = 1515 // compositeGT[1].Name = "NAD_1983_To_WGS_1984_5" // compositeGT[1].IsForward = true // // find the first transformation used between spatial // references 4267 and 4326 within Alaska // // Alaska Envelope envelope = EnvelopeBuilderEx.CreateEnvelope(-161, 61, -145, 69); transformations = ProjectionTransformation.FindTransformations( sr4267, sr4326, envelope); // transformations.Count = 1 projTrans = transformations[0]; compositeGT = projTrans.Transformation as CompositeGeographicTransformation; // compositeGT.Count = 2 // compositeGT[0].Wkid = 1243 // compositeGT[0].Name = "NAD_1927_To_NAD_1983_Alaska" // compositeGT[0].IsForward = true // compositeGT[1].Wkid = 108190 // compositeGT[1].Name = "WGS_1984_(ITRF00)_To_NAD_1983" // compositeGT[1].IsForward = false // // find the first geographic transformation used between two spatial references with VCS (use vertical = false) // SpatialReference inSR = SpatialReferenceBuilder.CreateSpatialReference(4269, 115702); SpatialReference outSR = SpatialReferenceBuilder.CreateSpatialReference(4326, 3855); // Even though each spatial reference has a VCS, // vertical = false should return geographic transformations. transformations = ProjectionTransformation.FindTransformations(inSR, outSR); // transformations.Count = 1 projTrans = transformations[0]; compositeGT = projTrans.Transformation as CompositeGeographicTransformation; // compositeGT.Count = 1 // compositeGT[0].Wkid = 108190 // compositeGT[0].Name = ""WGS_1984_(ITRF00)_To_NAD_1983" // compositeGT[0].IsForward = false // // find the first vertical transformation used between two spatial references with VCS (use vertical = true) // transformations = ProjectionTransformation.FindTransformations( inSR, outSR, vertical: true); // transformations.Count = 1 projTrans = transformations[0]; CompositeHVDatumTransformation compositeHV = projTrans.Transformation as CompositeHVDatumTransformation; // compositeHV.Count = 2 // compositeHV[0].Wkid = 1188 // compositeHV[0].Name = "NAD_1983_To_WGS_1984_1" // compositeHV[0].IsForward = true // compositeHV[1].Wkid = 110019 // compositeHV[1].Name = "WGS_1984_To_WGS_1984_EGM2008_2.5x2.5_Height" // compositeHV[1].IsForward = true });
// create the polygon List<MapPoint> pts = new List<MapPoint>(); pts.Add(MapPointBuilderEx.CreateMapPoint(1.0, 1.0, SpatialReferences.WGS84)); pts.Add(MapPointBuilderEx.CreateMapPoint(1.0, 2.0, SpatialReferences.WGS84)); pts.Add(MapPointBuilderEx.CreateMapPoint(2.0, 2.0, SpatialReferences.WGS84)); pts.Add(MapPointBuilderEx.CreateMapPoint(2.0, 1.0, SpatialReferences.WGS84)); Polygon polygon = PolygonBuilderEx.CreatePolygon(pts); // ensure it is simple bool isSimple = GeometryEngine.Instance.IsSimpleAsFeature(polygon); // create the spatial reference to project to SpatialReference northPole = SpatialReferenceBuilder.CreateSpatialReference(102018); // north pole stereographic // project Geometry geometry = GeometryEngine.Instance.Project(polygon, northPole);
Target Platforms: Windows 11, Windows 10