1. Create a space reference
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Create a space based on the prj file reference
- /// </Summary>
- /// <Param name = "strprofile"> space reference file </param>
- /// <Returns> </returns>
- Public static ispatialreference createspatialreference (string strprofile)
- {
- Ispatialreferencefactory pspatialreferencefactory = new spatialreferenceenvironmentclass ();
- Ispatialreference pspatialreference = pspatialreferencefactory. createesrispatialreferencefromp1_file (strprofile );
- Return pspatialreference;
- }
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Create a geographic coordinate system
- /// </Summary>
- /// <Param name = "gctype"> esrisrprojcs4type </param>
- /// <Returns> </returns>
- Public static ispatialreference creategeographiccoordinate (esrisrprojcs4type gcstype)
- {
- Ispatialreferencefactory pspatialreferencefactory = new spatialreferenceenvironmentclass ();
- Ispatialreference pspatialreference = pspatialreferencefactory. creategeographiccoordinatesystem (INT) gcstype );
- Return pspatialreference;
- }
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Create a projection Coordinate System
- /// </Summary>
- /// <Param name = "pctype"> esrisrprojcs4type </param>
- /// <Returns> </returns>
- Public static ispatialreference createprojectedcoordinate (esrisrprojcs4type pcstype)
- {
- Ispatialreferencefactory2 pspatialreferencefactory = new spatialreferenceenvironmentclass ();
- Ispatialreference pspatialreference = pspatialreferencefactory. createprojectedcoordinatesystem (INT) pcstype );
- Return pspatialreference;
- }
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Obtain an empty projection
- /// </Summary>
- /// <Returns> </returns>
- Public static ispatialreference createunknownspatialreference ()
- {
- Ispatialreference pspatialreference = new unknowncoordinatesystemclass ();
- Pspatialreference. setdomain (0, 99999999, 0, 99999999); // set the Space Range
- Return pspatialreference;
- }
2. Get space reference
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Element set space reference
- /// </Summary>
- /// <Param name = "pfeaturedataset"> element set </param>
- /// <Returns> </returns>
- Public static ispatialreference getspatialreference (ifeaturedataset pfeaturedataset)
- {
- Igeodataset pgeodataset = pfeaturedataset as igeodataset;
- Ispatialreference pspatialreference = pgeodataset. spatialreference;
- Return pspatialreference;
- }
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Obtain the element Layer Space reference
- /// </Summary>
- /// <Param name = "pfeaturelayer"> element layer </param>
- /// <Returns> </returns>
- Public static ispatialreference getspatialreferenc (ifeaturelayer pfeaturelayer)
- {Ifeatureclass pfeatureclass = pfeaturelayer. featureclass;
- Igeodataset pgeodataset = pfeatureclass as igeodataset;
- Ispatialreference pspatialreference = pgeodataset. spatialreference;
- Return pspatialreference;
- }
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Element class space reference
- /// </Summary>
- /// <Param name = "pfeatureclass"> element class </param>
- /// <Returns> </returns>
- Public static ispatialreference getspatialreference (ifeatureclass pfeatureclass)
- {
- Igeodataset pgeodataset = pfeatureclass as igeodataset;
- Ispatialreference pspatialreference = pgeodataset. spatialreference;
- Return pspatialreference;
- }
3. Modify space reference
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Reference for modifying the element set space
- /// </Summary>
- /// <Param name = "pfeaturedataset"> element set </param>
- /// <Param name = "pspatialreference"> New Space reference </param>
- Public static void alterspatialreference (ifeaturedataset pfeaturedataset, ispatialreference pspatialreference)
- {
- Igeodataset pgeodataset = pfeaturedataset as igeodataset;
- Igeodatasetschemaedit pgeodatasetschemaedit = pgeodataset as igeodatasetschemaedit;
- If (pgeodatasetschemaedit. canalterspatialreference = true)
- Pgeodatasetschemaedit. alterspatialreference (pspatialreference );
- }
[CSHARP]View plaincopyprint?
- /// <Summary>
- /// Modify element class space reference
- /// </Summary>
- /// <Param name = "pfeatureclass"> element class </param>
- /// <Param name = "pspatialreference"> New Space reference </param>
- Public static void alterspatialreference (ifeatureclass pfeatureclass, ispatialreference pspatialreference)
- {
- Igeodataset pgeodataset = pfeatureclass as igeodataset;
- Igeodatasetschemaedit pgeodatasetschemaedit = pgeodataset as igeodatasetschemaedit;
- If (pgeodatasetschemaedit. canalterspatialreference = true)
- Pgeodatasetschemaedit. alterspatialreference (pspatialreference );
- }
Summary of spatial reference (geographic coordinates) methods in ArcGIS Engine