面积测量分析对象

尝试一下在线预览

此示例演示如何显示用户选择的面的区域测量值。创建 AreaMeasurementAnalysis Object 并将其添加到 sceneview.analyses。在视图上添加单击事件侦听器。如果用户单击了宗地面,请将该面添加到 AreaMeasurementAnalysis 对象几何属性中。

                  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// create a AreaMeasurementAnalysis object and add it to the AnalysisLayer
const areaMeasurementAnalysis = new AreaMeasurementAnalysis();
view.analyses.add(areaMeasurementAnalysis);

view.when(() => {
  const hitTestLayers = view.map.layers.filter((layer) => layer.title === "Parcels");
  view.on("click", async (event) => {
    // remove the current measured geometry from the layer when the user clicks on the map
    areaMeasurementAnalysis.geometry = null;
    // get results only from the "Parcels" layer
    const hitTestResult = await view.hitTest(event, { include: hitTestLayers });
    if (hitTestResult.results.length > 0) {
      const geometry = hitTestResult.results[0].graphic.geometry;
      // pass the polygon geometry to the areaMeasurementAnalysis to display a new measurement
      areaMeasurementAnalysis.geometry = geometry;
    }
  });
});

要使用其他分析对象,另请参阅示例分析对象

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.