如何解决可视化 3D 对象上的缓冲区
我有一个 3D 建筑物的 shapefile(多面体)。我也有一个点文件。我想在点文件上运行一个缓冲区,以查看缓冲区与建筑物交互的点。基本上我想可视化特定距离的人可以从一个点看到什么。如果我用建筑物(多边形)文件在 2D 中进行,这就是我得到的。似乎无法找到在 3D 中执行此操作的方法。有什么想法吗???
解决方法
一种方法是使用 ArcGIS API for JavaScript 并将每个点可视化为多个透明圆柱体。这可以通过对每个缓冲距离使用 PointSymbol3D
和 ObjectSymbol3DLayer
来完成:
pointsLayer.renderer = new SimpleRenderer({
symbol: new PointSymbol3D({
symbolLayers: [
new ObjectSymbol3DLayer({
anchor: "center",width: 120,// 120m buffer distance
depth: 120,// 120m buffer distance
height: 70,resource: { primitive: "cylinder" },material: { color: [237,248,177,0.6] },castShadows: false
}),new ObjectSymbol3DLayer({
anchor: "center",width: 70,// 70m buffer distance
depth: 70,// 70m buffer distance
height: 68,material: { color: [127,205,187,width: 20,// 20m buffer distance
depth: 20,// 20m buffer distance
height: 66,material: { color: [44,127,184,0.7] },castShadows: false
})
]
})
});
以下是在 3D 建筑物内使用随机点随机点的现场示例:https://codepen.io/arnofiva/pen/d228b8e28614d4b48fd1d57d68d17418?editors=0010
根据点数,您还可以提供在选定缓冲距离内隐藏建筑物的交互式体验。使用客户端过滤器查看此示例:https://developers.arcgis.com/javascript/latest/sample-code/layers-scenelayer-feature-masking/index.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。