TinBreaklineRendererDefinition Class
Represents a unique value renderer definition to draw breaklines in a surface layer.
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);
Edge Type Renderer
var breaklineRendererDef = new TinBreaklineRendererDefinition();
// use default symbol for regular edge but specific symbols for hard,soft,outside
breaklineRendererDef.HardEdgeSymbol = hardEdgeSymbol.MakeSymbolReference();
breaklineRendererDef.SoftEdgeSymbol = softEdgeSymbol.MakeSymbolReference();
breaklineRendererDef.OutsideEdgeSymbol = outsideEdgeSymbol.MakeSymbolReference();
if (surfaceLayer.CanCreateRenderer(breaklineRendererDef))
{
CIMTinRenderer renderer = surfaceLayer.CreateRenderer(breaklineRendererDef);
if (surfaceLayer.CanSetRenderer(renderer, SurfaceRendererTarget.Edges))
surfaceLayer.SetRenderer(renderer, SurfaceRendererTarget.Edges);
}
Target Platforms: Windows 11, Windows 10
ArcGIS Pro version: 3.2 or higher.