ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.CIM Namespace / CIMPointSymbol Class
Members Example Version

CIMPointSymbol Class
Represents a point symbol used to draw point features and point graphics.
Object Model
CIMPointSymbol ClassCIMCallout ClassCIMPointSymbol ClassCIMPointSymbol ClassCIMPolygonSymbol ClassCIM3DSymbolProperties Class
Syntax
Example
How to construct a point symbol of a specific color and size
await QueuedTask.Run(() =>
{
  CIMPointSymbol pointSymbol = SymbolFactory.Instance.ConstructPointSymbol(ColorFactory.Instance.RedRGB, 10.0);
});
How to construct a point symbol of a specific color, size and shape
await QueuedTask.Run(() =>
{
  CIMPointSymbol starPointSymbol = SymbolFactory.Instance.ConstructPointSymbol(ColorFactory.Instance.RedRGB, 10.0, SimpleMarkerStyle.Star);
});
How to construct a point symbol from a marker
await QueuedTask.Run(() =>
{
  CIMMarker marker = SymbolFactory.Instance.ConstructMarker(ColorFactory.Instance.GreenRGB, 8.0, SimpleMarkerStyle.Pushpin);
  CIMPointSymbol pointSymbolFromMarker = SymbolFactory.Instance.ConstructPointSymbol(marker);
});
How to construct a point symbol from a file on disk
//The following file formats can be used to create the marker: DAE, 3DS, FLT, EMF, JPG, PNG, BMP, GIF
CIMMarker markerFromFile = await QueuedTask.Run(() => SymbolFactory.Instance.ConstructMarkerFromFile(@"C:\Temp\fileName.dae"));

CIMPointSymbol pointSymbolFromFile = SymbolFactory.Instance.ConstructPointSymbol(markerFromFile);
How to construct a point symbol from a in memory graphic
//Create a stream for the image
//At 3.0 you need https://www.nuget.org/packages/Microsoft.Windows.Compatibility
//System.Drawing

System.Drawing.Image newImage = System.Drawing.Image.FromFile(@"C:\PathToImage\Image.png");
var stream = new System.IO.MemoryStream();
newImage.Save(stream, System.Drawing.Imaging.ImageFormat.Png);
stream.Position = 0;
//Create marker using the stream
CIMMarker markerFromStream = SymbolFactory.Instance.ConstructMarkerFromStream(stream);
//Create the point symbol from the marker
CIMPointSymbol pointSymbolFromStream = SymbolFactory.Instance.ConstructPointSymbol(markerFromStream);
Snippet Custom fill and outline
/// <summary>
/// Creates a point symbol with custom fill and outline          
/// ![PointSymbolMarker](http://Esri.github.io/arcgis-pro-sdk/images/Symbology/point-fill-outline.png)
/// </summary>
/// <returns></returns>
internal static Task<CIMPointSymbol> CreatePointSymbolAsync()
{
  return QueuedTask.Run<CIMPointSymbol>(() =>
  {
    var circlePtSymbol = SymbolFactory.Instance.ConstructPointSymbol(ColorFactory.Instance.BlueRGB, 6, SimpleMarkerStyle.Circle);
    //Modifying this point symbol with the attributes we want.
    //getting the marker that is used to render the symbol
    var marker = circlePtSymbol.SymbolLayers[0] as CIMVectorMarker;
    //Getting the polygon symbol layers components in the marker
    var polySymbol = marker.MarkerGraphics[0].Symbol as CIMPolygonSymbol;
    //modifying the polygon's outline and width per requirements
    polySymbol.SymbolLayers[0] = SymbolFactory.Instance.ConstructStroke(ColorFactory.Instance.BlackRGB, 2, SimpleLineStyle.Solid); //This is the outline
    polySymbol.SymbolLayers[1] = SymbolFactory.Instance.ConstructSolidFill(ColorFactory.Instance.BlueRGB); //This is the fill
    return circlePtSymbol;
  });

}
Snippet Point Symbol from a font
/// <summary>
/// Create a point symbol from a character in a font file
/// ![PointSymbolFont](http://Esri.github.io/arcgis-pro-sdk/images/Symbology/point-marker.png)
/// </summary>
/// <returns></returns>
internal static Task<CIMPointSymbol> CreateMarkerSymbolAsync()
{
  //Construct point symbol from marker
  return QueuedTask.Run<CIMPointSymbol>(() =>
  {
    //creating the marker from the Font selected
    var cimMarker = SymbolFactory.Instance.ConstructMarker(47, "Wingdings 3", "Regular", 12);
    return SymbolFactory.Instance.ConstructPointSymbol(cimMarker);
  });

}
Inheritance Hierarchy

System.Object
   ArcGIS.Core.CIM.CIMObject
      ArcGIS.Core.CIM.CIMSymbol
         ArcGIS.Core.CIM.CIMMultiLayerSymbol
            ArcGIS.Core.CIM.CIMPointSymbol

Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3 or higher.
See Also