-
hitTest
(screenPoint, options)
{Promise<HitTestResult>}
返回与指定屏幕坐标相交的图形。如果命中相交要素,以下图层类型将返回结果:GraphicsLayer , FeatureLayer , SceneLayer , BuildingSceneLayer , PointCloudLayer , CSVLayer , StreamLayer , GeoJSONLayer , OGCFeatureLayer 和 SceneView.graphics。
如果未指定任何选项,则不会返回位于地表后面的图形,除非地表是半透明的。否则,使用包含和排除选项中的map.ground 确定地面是否阻止其下方的命中测试图形。
如果图形具有 non-draped IconSymbol3DLayer 符号系统,则从 hitTest 将仅返回第一个图形。
从 4.11 版开始,如果标签与指定的屏幕坐标相交,则 hitTest 的结果将包含与该标签关联的图形。
参数:
规格:类型 说明 screenPoint ScreenPoint|MouseEvent单击视图的屏幕坐标(或本机鼠标事件)。
options Object可选的 交叉口测试选项。默认情况下,如果不透明度小于 1,则会排除 map.ground。
规格:可选的 包含用于相交测试的图层和图形列表。如果未指定 include,则将包括所有图层和图形。
可选的 包含用于相交测试的图层和图形列表。如果未指定排除,则不会排除任何图层或图形。
返回:
类型 说明 Promise<HitTestResult> 解析后,返回一个包含与给定屏幕坐标相交的图形(如果存在)的对象。 例子:
// Get the screen point from the view's click event view.on("click", function(event) { // Search for graphics at the clicked location. View events can be used // as screen locations as they expose an x,y coordinate that conforms // to the ScreenPoint definition. view.hitTest(event).then(function(response) { let result = response.results[0]; if (result) { let lon = result.mapPoint.longitude; let lat = result.mapPoint.latitude; console.log("Hit graphic at (" + lon + ", " + lat + ")", result.graphic); } else { console.log("Did not hit any graphic"); } }); });
基本信息
以下是所在类或对象的基本信息。
AMD:
require(["esri/views/SceneView"], (SceneView) => { /* code goes here */ });
ESM:
import SceneView from "@arcgis/core/views/SceneView";
类:
esri/views/SceneView
继承: SceneView > View > Accessor
自从:用于 JavaScript 4.0 的 ArcGIS API
用法说明
SceneView.hitTest
函数(或属性)的定义如下:
相关用法
- JavaScript ArcGIS SceneView.highlightOptions用法及代码示例
- JavaScript ArcGIS SceneView.heightBreakpoint用法及代码示例
- JavaScript ArcGIS SceneView.breakpoints用法及代码示例
- JavaScript ArcGIS SceneView.on用法及代码示例
- JavaScript ArcGIS SceneView.input用法及代码示例
- JavaScript ArcGIS SceneView.ui用法及代码示例
- JavaScript ArcGIS SceneView.whenAnalysisView用法及代码示例
- JavaScript ArcGIS SceneView.camera用法及代码示例
- JavaScript ArcGIS SceneView.widthBreakpoint用法及代码示例
- JavaScript ArcGIS SceneView.navigation用法及代码示例
- JavaScript ArcGIS SceneView.popup用法及代码示例
- JavaScript ArcGIS SceneView.graphics用法及代码示例
- JavaScript ArcGIS SceneView.when用法及代码示例
- JavaScript ArcGIS SceneView.zoom用法及代码示例
- JavaScript ArcGIS SceneView.container用法及代码示例
- JavaScript ArcGIS SceneView.takeScreenshot用法及代码示例
- JavaScript ArcGIS SceneView.whenLayerView用法及代码示例
- JavaScript ArcGIS SceneView.goTo用法及代码示例
- JavaScript ArcGIS SceneView.tryFatalErrorRecovery用法及代码示例
- JavaScript ArcGIS SceneView.alphaCompositingEnabled用法及代码示例
- JavaScript ArcGIS SceneView.qualityProfile用法及代码示例
- JavaScript ArcGIS SceneView.environment用法及代码示例
- JavaScript ArcGIS SceneView.EasingFunction用法及代码示例
- JavaScript ArcGIS SceneView.analyses用法及代码示例
- JavaScript ArcGIS SceneView.fatalError用法及代码示例
注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 SceneView.hitTest。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。