public virtual CIMBaseLayer GetDefinition()
Public Overridable Function GetDefinition() As CIMBaseLayer
public virtual CIMBaseLayer GetDefinition()
Public Overridable Function GetDefinition() As CIMBaseLayer
Exception | Description |
---|---|
ArcGIS.Core.CalledOnWrongThreadException | This method or property must be called within the lambda passed to QueuedTask.Run. |
QueuedTask.Run(() => { //hide all tools except line tool on layer var featLayer = MapView.Active.Map.FindLayers("Roads").First(); var editTemplates = featLayer.GetTemplates(); var newCIMEditingTemplates = new List<CIMEditingTemplate>(); foreach (var et in editTemplates) { //initialize template by activating default tool et.ActivateDefaultToolAsync(); var cimEditTemplate = et.GetDefinition(); //get the visible tools on this template var allTools = et.ToolIDs.ToList(); //add the hidden tools on this template allTools.AddRange(cimEditTemplate.GetExcludedToolIDs().ToList()); //hide all the tools then allow the line tool //At 2.x - //allTools.AddRange(cimEditTemplate.GetExcludedToolDamlIds().ToList()); allTools.AddRange(cimEditTemplate.GetExcludedToolIDs().ToList()); //At 2.x - //cimEditTemplate.SetExcludedToolDamlIds(allTools.ToArray()); //cimEditTemplate.AllowToolDamlID("esri_editing_SketchLineTool"); cimEditTemplate.SetExcludedToolIDs(allTools.ToArray()); cimEditTemplate.AllowToolID("esri_editing_SketchLineTool"); newCIMEditingTemplates.Add(cimEditTemplate); } //update the layer templates var layerDef = featLayer.GetDefinition() as CIMFeatureLayer; // Set AutoGenerateFeatureTemplates to false for template changes to stick layerDef.AutoGenerateFeatureTemplates = false; layerDef.FeatureTemplates = newCIMEditingTemplates.ToArray(); featLayer.SetDefinition(layerDef); });
//Must be called on the MCT //var pcsl = ...; var def = pcsl.GetDefinition() as CIMPointCloudLayer; //Get the ColorModulation off the renderer var modulation = def.Renderer.ColorModulation; if (modulation == null) modulation = new CIMColorModulationInfo(); //Set the minimum and maximum intensity as needed modulation.MinValue = 0; modulation.MaxValue = 100.0; //apply back def.Renderer.ColorModulation = modulation; //Commit changes back to the CIM pcsl.SetDefinition(def);
//Must be called on the MCT //var pcsl = ...; var def = pcsl.GetDefinition() as CIMPointCloudLayer; //Set the point shape and sizing on the renderer def.Renderer.PointShape = PointCloudShapeType.DiskShaded; var pointSize = new CIMPointCloudFixedSizeAlgorithm() { UseRealWorldSymbolSizes = false, Size = 8 }; def.Renderer.PointSizeAlgorithm = pointSize; //Commit changes back to the CIM pcsl.SetDefinition(def);
//Must be called on the MCT //var pcsl = ...; var def = pcsl.GetDefinition() as CIMPointCloudLayer; //Set the point shape and sizing on the renderer def.Renderer.PointShape = PointCloudShapeType.DiskFlat;//default var scaleSize = new CIMPointCloudSplatAlgorithm() { MinSize = 8, ScaleFactor = 1.0 //100% }; def.Renderer.PointSizeAlgorithm = scaleSize; //Commit changes back to the CIM pcsl.SetDefinition(def);
//Must be called on the MCT //var pcsl = ...; var def = pcsl.GetDefinition() as CIMPointCloudLayer; //PointsBudget - corresponds to Display Limit on the UI // - the absolute maximum # of points to display def.PointsBudget = 1000000; //PointsPerInch - corresponds to Density Min --- Max on the UI // - the max number of points per display inch to renderer def.PointsPerInch = 15; //Commit changes back to the CIM pcsl.SetDefinition(def);
Target Platforms: Windows 11, Windows 10