ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / TinFaceClassBreaksRendererDefinition Class
Members Example Version

TinFaceClassBreaksRendererDefinition Class
Represents a class breaks renderer definition to draw faces in a surface layer.
Object Model
TinFaceClassBreaksRendererDefinition ClassCIMColorRamp ClassCIMSymbolReference Class
Syntax
public class TinFaceClassBreaksRendererDefinition : TinColorRampRendererDefinition 
Remarks
Once you define a class breaks renderer, you can call a surface layer's CanCreateRenderer, CreateRenderer, CanSetRenderer and SetRenderer methods to create and assign a renderer to a surface layer.
Example
Create a TinLayer with renderers
//Must be on the QueuedTask.Run()

var tinCP_renderers = new TinLayerCreationParams(tinDataset);
tinCP_renderers.Name = "My TIN layer";
tinCP_renderers.IsVisible = true;

// define the node renderer - use defaults
var node_rd = new TinNodeRendererDefinition();

// define the face/surface renderer
var face_rd = new TinFaceClassBreaksRendererDefinition();
face_rd.ClassificationMethod = ClassificationMethod.NaturalBreaks;
// accept default color ramp, breakCount

// set up the renderer dictionary
var rendererDict = new Dictionary<SurfaceRendererTarget, TinRendererDefinition>();
rendererDict.Add(SurfaceRendererTarget.Points, node_rd);
rendererDict.Add(SurfaceRendererTarget.Surface, face_rd);

// assign the dictionary to the creation params
tinCP_renderers.RendererDefinitions = rendererDict;

// create the layer
var tinLayer_rd = LayerFactory.Instance.CreateLayer<TinLayer>(tinCP_renderers, MapView.Active.Map);
Create a TerrainLayer with renderers
//Must be on the QueuedTask.Run()

var terrainCP_renderers = new TerrainLayerCreationParams(terrain);
terrainCP_renderers.Name = "My LAS Layer";
terrainCP_renderers.IsVisible = true;

// define the edge type renderer - use defaults
var edgeRD = new TinBreaklineRendererDefinition();

// define the face/surface renderer
var faceRD = new TinFaceClassBreaksRendererDefinition();
faceRD.ClassificationMethod = ClassificationMethod.NaturalBreaks;
// accept default color ramp, breakCount

// define the dirty area renderer - use defaults
var dirtyAreaRD = new TerrainDirtyAreaRendererDefinition();

// add renderers to dictionary
var t_dict = new Dictionary<SurfaceRendererTarget, TinRendererDefinition>();
t_dict.Add(SurfaceRendererTarget.Edges, edgeRD);
t_dict.Add(SurfaceRendererTarget.Surface, faceRD);
t_dict.Add(SurfaceRendererTarget.DirtyArea, dirtyAreaRD);

// assign dictionary to creation params
terrainCP_renderers.RendererDefinitions = t_dict;

//Create the layer to the terrain
var terrainLayer_rd = LayerFactory.Instance.CreateLayer<TerrainLayer>(terrainCP_renderers, map);
Slope Face Renderer - Equal Interval
var slopeFaceClassBreaksEqual = new TinFaceClassBreaksRendererDefinition(TerrainDrawCursorType.FaceSlope);
// accept default breakCount, symbolTemplate, color ramp

if (surfaceLayer.CanCreateRenderer(slopeFaceClassBreaksEqual))
{
  CIMTinRenderer renderer = surfaceLayer.CreateRenderer(slopeFaceClassBreaksEqual);
  if (surfaceLayer.CanSetRenderer(renderer, SurfaceRendererTarget.Surface))
    surfaceLayer.SetRenderer(renderer, SurfaceRendererTarget.Surface);
}
Slope Face Renderer - Quantile
var slopeFaceClassBreaksQuantile = new TinFaceClassBreaksRendererDefinition(TerrainDrawCursorType.FaceSlope);
slopeFaceClassBreaksQuantile.ClassificationMethod = ClassificationMethod.Quantile;
// accept default breakCount, symbolTemplate, color ramp

if (surfaceLayer.CanCreateRenderer(slopeFaceClassBreaksQuantile))
{
  CIMTinRenderer renderer = surfaceLayer.CreateRenderer(slopeFaceClassBreaksQuantile);
  if (surfaceLayer.CanSetRenderer(renderer, SurfaceRendererTarget.Surface))
    surfaceLayer.SetRenderer(renderer, SurfaceRendererTarget.Surface);
}
Elevation Face Renderer - Equal Interval
var elevFaceClassBreaksEqual = new TinFaceClassBreaksRendererDefinition();
// accept default breakCount, symbolTemplate, color ramp

if (surfaceLayer.CanCreateRenderer(slopeFaceClassBreaksEqual))
{
  CIMTinRenderer renderer = surfaceLayer.CreateRenderer(slopeFaceClassBreaksEqual);
  if (surfaceLayer.CanSetRenderer(renderer, SurfaceRendererTarget.Surface))
    surfaceLayer.SetRenderer(renderer, SurfaceRendererTarget.Surface);
}
Inheritance Hierarchy

System.Object
   ArcGIS.Desktop.Mapping.LayerDrawingDefinition
      ArcGIS.Desktop.Mapping.TinRendererDefinition
         ArcGIS.Desktop.Mapping.TinColorRampRendererDefinition
            ArcGIS.Desktop.Mapping.TinFaceClassBreaksRendererDefinition

Requirements

Target Platforms: Windows 11, Windows 10

ArcGIS Pro version: 3.2 or higher.
See Also