LineOfSightAnalysis 计算从单个观察者位置到一组目标的视线。结果在 3D SceneView 中可视化。
要显示两点之间的视线,请创建 LineOfSightAnalysis 的新实例,将其添加到 SceneView.analysiss 并设置 observer 和 targets 属性。
使用 LineOfSightAnalysisView3D 检索分析结果。
// create analysis
const lineOfSight = new LineOfSightAnalysis({
observer: new LineOfSightAnalysisObserver({position: somePoint}),
targets:[
new LineOfSightAnalysisTarget({position: someOtherPoint})
]
});
// add to scene view
sceneView.analyses.add(lineOfSight);
// retrieve measured results from analysis view
const analysisView = await sceneView.whenAnalysisView(lineOfSight);
await watchUtils.whenFalse(analysisView, "updating");
const result = analysisView.results;
使用 LineOfSight 微件以添加交互性并允许用户更改分析的几何形状。
如果观察者位置或目标位置有 z-值 那么这些将被视为绝对值,否则这些点将与地面对齐。
已知限制
此分析仅在 3D SceneView 中受支持。
构造函数
属性概览
名称 | 类型 | 描述 | 类 | |
---|---|---|---|---|
LineOfSightAnalysisObserver | 更多信息 观察者位置。 | 更多信息 | LineOfSightAnalysis | |
Collection<LineOfSightAnalysisTarget> | 更多信息 目标位置。 | 更多信息 | LineOfSightAnalysis |
属性详情
-
observer LineOfSightAnalysisObserverautocast
-
观察者位置。这是执行视线分析的点。
-
目标位置。观察者要查看的点列表。
方法概览
名称 | 返回类型 | 描述 | 类 | |
---|---|---|---|---|
this | 更多信息 创建此对象的深拷贝。 | 更多信息 | LineOfSightAnalysis |
方法详情
-
clone(){this}
-
创建此对象的深拷贝。任何通过引用存储值的属性都将被分配拷贝实例上引用值的副本。
返回:类型 描述 this 调用此方法的类实例的深拷贝。