//Must be called on the MCT //var pcsl = ...; //At 2.x - var fields = pcsl.QueryAvailablePointCloudRendererFields( // PointCloudRendererType.StretchRenderer); var fields = pcsl.GetAvailablePointCloudRendererFields( PointCloudRendererType.StretchRenderer); var stretchDef = new PointCloudRendererDefinition( PointCloudRendererType.StretchRenderer) { //Will be either ELEVATION or INTENSITY Field = fields[0] }; //Create the CIM Renderer var stretchRenderer = pcsl.CreateRenderer(stretchDef) as CIMPointCloudStretchRenderer; //Apply a color ramp var style = Project.Current.GetItems<StyleProjectItem>() .First(s => s.Name == "ArcGIS Colors"); var colorRamp = style.SearchColorRamps("").First(); stretchRenderer.ColorRamp = colorRamp.ColorRamp; //Apply modulation stretchRenderer.ColorModulation = new CIMColorModulationInfo() { MinValue = 0, MaxValue = 100 }; //apply the renderer pcsl.SetRenderer(stretchRenderer);
//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);
Target Platforms: Windows 11, Windows 10