public enum PointCloudReturnType : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Public Enum PointCloudReturnType Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
public enum PointCloudReturnType : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Public Enum PointCloudReturnType Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
Member | Description |
---|---|
All | No return filtering. |
FirstOfMany | Show first return of multi-return only. |
Last | Show last return only. |
LastOfMany | Show last return of multi-return only. |
Single | Show single return only. |
//Must be called on the MCT //var pcsl = ...; //Retrieve the available classification codes //At 2.x - var dict = pcsl.QueryAvailableClassCodesAndLabels(); var dict = pcsl.GetAvailableClassCodesAndLabels(); //Filter out low noise and unclassified (7 and 1 respectively) //consult https://pro.arcgis.com/en/pro-app/help/data/las-dataset/storing-lidar-data.htm var filterDef = new PointCloudFilterDefinition() { ClassCodes = dict.Keys.Where(c => c != 7 && c != 1).ToList(), ReturnValues = new List<PointCloudReturnType> { PointCloudReturnType.FirstOfMany } }; //apply the filter pcsl.SetFilters(filterDef.ToCIM());
//Must be called on the MCT //var pcsl = ...; IReadOnlyList<CIMPointCloudFilter> updatedFilter = pcsl.GetFilters(); foreach (var filter in updatedFilter) { //There is either 0 or 1 of each if (filter is CIMPointCloudReturnFilter returnFilter) { PointCloudFilterDefinition pcfl = PointCloudFilterDefinition.FromCIM(updatedFilter); List<PointCloudReturnType> updatedReturnValues = pcfl.ReturnValues; } if (filter is CIMPointCloudValueFilter classCodesFilter) { // do something } if (filter is CIMPointCloudBitFieldFilter classFlagsFilter) { // do something } }
System.Object
System.ValueType
System.Enum
ArcGIS.Core.CIM.PointCloudReturnType
Target Platforms: Windows 11, Windows 10