ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Geometry Namespace / IGeometryEngine Interface / ExportToWKT Method
A combination of WktExportFlags which determines how the geometry is exported.
The input geometry to write to a string.
Example

In This Topic
    ExportToWKT Method (IGeometryEngine)
    In This Topic
    Writes an OGC well-known text formatted version of the input geometry to a string.
    Syntax

    Parameters

    exportFlags
    A combination of WktExportFlags which determines how the geometry is exported.
    geometry
    The input geometry to write to a string.

    Return Value

    An OCG well-known text format of the input geometry.
    Exceptions
    ExceptionDescription
    Geometry is null or empty.
    The method is not implemented for GeometryBag or Multipatch.
    The method is not implemented for geometry with curves.
    Remarks
    Does not support curves. Also, note that if the geometry contains ID information, this property will not be preserved in the export operation. The WKT OGC standard does not contain the ID property.
    Example
    Import and Export Geometries to well-known Text
    {
      // create a point with z, m
      MapPoint point = MapPointBuilderEx.CreateMapPoint(
               100, 200, 300, 400, SpatialReferences.WebMercator);
    
      // set the flags
      WktExportFlags wktExportFlags = WktExportFlags.WktExportDefaults;
      WktImportFlags wktImportFlags = WktImportFlags.WktImportDefaults;
    
      // export and import
      string wktString = GeometryEngine.Instance.ExportToWKT(wktExportFlags, point);
      MapPoint importPointGeom = GeometryEngine.Instance.ImportFromWKT(
            wktImportFlags, wktString, SpatialReferences.WebMercator) as MapPoint;
    
      double x = importPointGeom.X;       // x = 100
      double y = importPointGeom.Y;       // y = 200
      bool hasZ = importPointGeom.HasZ;   // hasZ = true
      double z = importPointGeom.Z;       // z = 300
      bool hasM = importPointGeom.HasM;   // hasM = true
      double m = importPointGeom.M;       // m = 400
    
      // export without z
      WktExportFlags exportFlagsNoZ = WktExportFlags.WktExportStripZs;
      wktString = GeometryEngine.Instance.ExportToWKT(exportFlagsNoZ, point);
      importPointGeom = GeometryEngine.Instance.ImportFromWKT(
        wktImportFlags, wktString, SpatialReferences.WebMercator) as MapPoint;
    
      x = importPointGeom.X;        // x = 100
      y = importPointGeom.Y;        // y = 200
      hasZ = importPointGeom.HasZ;  // hasZ = false
      z = importPointGeom.Z;        // z = 0
      hasM = importPointGeom.HasM;  // hasM = true
      m = importPointGeom.M;        // m = 400
    
      // export without m
      WktExportFlags exportFlagsNoM = WktExportFlags.WktExportStripMs;
      wktString = GeometryEngine.Instance.ExportToWKT(exportFlagsNoM, point);
      importPointGeom = GeometryEngine.Instance.ImportFromWKT(
        wktImportFlags, wktString, SpatialReferences.WebMercator) as MapPoint;
    
      x = importPointGeom.X;        // x = 100
      y = importPointGeom.Y;        // y = 200
      hasZ = importPointGeom.HasZ;  // hasZ = true
      z = importPointGeom.Z;        // z = 300
      hasM = importPointGeom.HasM;  // hasM = false
      m = importPointGeom.M;        // m = Nan
    
      // export without z, m
      wktString = GeometryEngine.Instance.ExportToWKT(
        exportFlagsNoZ | exportFlagsNoM, point);
      importPointGeom = GeometryEngine.Instance.ImportFromWKT(
        wktImportFlags, wktString, SpatialReferences.WebMercator) as MapPoint;
    
      x = importPointGeom.X;        // x = 100
      y = importPointGeom.Y;        // y = 200
      hasZ = importPointGeom.HasZ;  // hasZ = false
      z = importPointGeom.Z;        // z = 0
      hasM = importPointGeom.HasM;  // hasM = false
      m = importPointGeom.M;        // m = Nan
    }
    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.0 or higher.
    See Also