你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
刘峥 - ArcGIS多面手
赞同来自:
string lasdfile = @E:testlas.lasd; ILasDataset lasdataset = new LasDatasetClass(); lasdataset.Init(lasdfile); ILasFile lasfile = lasdataset.get_File(0); ILasDatasetLayer laslayer = new LasDatasetLayerClass(); laslayer.Dataset = lasdataset; laslayer.Name = test.las; ILasStatistics lasstat = lasfile.GetStatistics(); ISimpleStatistics simstat = lasstat.GetAttributeStatistics(esriLasAttributeType.esriLasIntensity); int min = (Int32)simstat.Minimum; int max = (Int32)simstat.Maximum; IRgbColor fromColor = new RgbColorClass(); fromColor.Red = 0; fromColor.Green = 0; fromColor.Blue = 0; IColor toColor = new RgbColorClass(); fromColor.Red = 255; fromColor.Green = 255; fromColor.Blue = 255; IAlgorithmicColorRamp colorRamp = new AlgorithmicColorRampClass(); colorRamp.Size = max; colorRamp.FromColor = fromColor; colorRamp.ToColor = toColor; bool createColorRamp; colorRamp.CreateRamp(out createColorRamp); IEnumColors pEnumColors = colorRamp.Colors; pEnumColors.Reset(); ILasAttributeRenderer lasattri = new LasUniqueValueRendererClass(); lasattri.Attribute = esriLasAttributeType.esriLasIntensity; ITinUniqueValueRenderer tinuvren = lasattri as ITinUniqueValueRenderer; for (int i = 0; i < max; i++) { IColor SymColor = pEnumColors.Next(); IMarkerSymbol MarkSym = new SimpleMarkerSymbolClass(); MarkSym.Color = SymColor; tinuvren.AddValue(i.ToString(), i.ToString(), MarkSym as ISymbol); tinuvren.AddValue(i.ToString(), i.ToString(), MarkSym as ISymbol); } laslayer.ClearRenderers(); laslayer.AddRenderer((ITinRenderer)lasattri); ILegendInfo LegenInfo = laslayer as ILegendInfo; for (int k = 0; k < LegenInfo.LegendGroupCount; k++) { ILegendGroup legenGrp = LegenInfo.get_LegendGroup(k); legenGrp.Heading = ; legenGrp.Visible = false; ILegendClass legenCls = legenGrp.get_Class(0); } axSceneControl1.Scene.AddLayer(laslayer, false); axSceneControl1.SceneGraph.RefreshViewers();
string lasdfile = @E:testlas.lasd; ILasDataset lasdataset = new LasDatasetClass(); lasdataset.Init(lasdfile); ILasFile lasfile = lasdataset.get_File(0); ILasDatasetLayer laslayer = new LasDatasetLayerClass(); laslayer.Dataset = lasdataset; laslayer.Name = test.las; IRgbColor fromColor = new RgbColorClass(); fromColor.Red = 0; fromColor.Green = 0; fromColor.Blue = 0; IColor toColor = new RgbColorClass(); fromColor.Red = 255; fromColor.Green = 255; fromColor.Blue = 255; int BreakCount = 9; IAlgorithmicColorRamp colorRamp = new AlgorithmicColorRampClass(); colorRamp.Size = BreakCount; colorRamp.FromColor = toColor; colorRamp.ToColor = fromColor; bool createColorRamp; colorRamp.CreateRamp(out createColorRamp); IEnumColors pEnumColors = colorRamp.Colors; pEnumColors.Reset(); ITinColorRampRenderer TinColRamRend = new LasPointElevationRendererClass(); IDatasetRenderer DatasetRen = TinColRamRend as IDatasetRenderer; DatasetRen.Dataset = lasdataset as IDataset; TinColRamRend.BreakCount = BreakCount; for (int i = 0; i < BreakCount; i++) { IColor SymColor = pEnumColors.Next(); IMarkerSymbol MarkSym = new SimpleMarkerSymbolClass(); MarkSym.Color = SymColor; TinColRamRend.set_Symbol(i, MarkSym as ISymbol); } laslayer.ClearRenderers(); laslayer.AddRenderer((ITinRenderer)TinColRamRend); axSceneControl1.Scene.AddLayer((ILayer)laslayer);
一叶知秋
要回复问题请先登录或注册
ArcGIS多面手
2 个回复
刘峥 - ArcGIS多面手
赞同来自:
按属性(强度Intensity)渲染参考代码:
按高程LAS point elevation渲染参考代码:
一叶知秋
赞同来自:
要回复问题请先登录或注册
发起人
ArcGIS多面手
相关问题
问题状态
—— 扫技术支持中心微信服务号!
—— 让GIS知乎问答随时随地!