请问,cesium的有可视区域分析吗?
把renderState里面深度测试关闭,就可以画到最顶层了
var defaults = {
depthTest : {
enabled : false
}
};
var rs = Cesium.RenderState.fromCache(defaults);
var instance = new Cesium.GeometryInstance({
geometry : new Cesium.EllipseGeometry({
center : Cesium.Cartesian3.fromDegrees(-74.00081302800248, 40.69314333714821),
semiMinorAxis : 500.0,
semiMajorAxis : 500.0
})
});
viewer.scene.primitives.add(new Cesium.Primitive({
geometryInstances : instance,
appearance : new Cesium.EllipsoidSurfaceAppearance({
material : Cesium.Material.fromType('Color'),
renderState:rs
})
}));
自己写的可视域分析,效率比不上超图的,为什么超图的可视域分析计算那么快?是怎么实现的
大概有5秒的延时 要看地形数据范围和切分精细度
步骤是这样:1、视点为圆心画圆,圆周平分360份获取坐标 2 连接视点和圆周切分点 3、判断各个视线上切分线段的可视性 4 线段组成可视域
优化:
所有点的高程是一次性求 你把所有线段合起来求高程 完了再拆开 会变快很多
最近也有这方面需求,顺带研究下,找到这个文章,希望对诸君有用 Cesium深入浅出之可视域分析