获取用户自由手绘折线的坐标.(JavaScript的ArcGIS API)
Get coordinates of a free hand drawn polyline by user. (ArcGIS API for JavaScript)
我是新来的,我已经使用ArcGIS javascript api大约2周了。
我遵循了这个例子:
http://help.arcgis.com/en/webapi/javascript/arcgis/jssamples/样本/graphics_add
我可以在地图上画一条徒手折线。现在我需要计算折线上每个点的坐标。我已经尝试了5天了,但我不知道该怎么做。如果你们中有人能详细地告诉我怎么做,我会很感激的(因为我没有太多的经验)。
提前感谢,
。
您需要检查从事件onDrawEnd获得的geometry
对象-该事件已经在示例中被钩住了:
dojo.connect(tb, "onDrawEnd", addGraphic);
,但它所做的只是用一个基本符号将这条线添加到地图上。第一个陷阱是几何对象实际上不是类型geometry
-这是一个实际上不存在的抽象基类。类型将取决于您使用什么工具来绘制形状-在您的情况下,听起来它将是Polyline
类型。
这个Polyline对象有一个属性paths
,它是一个嵌套的路径(线)数组,每个路径(线)包含一个点数组。如果你想获得Polyline对象中所有路径的所有点:
function addGraphic(geo) {
//For each path...
for ( var path = 0; path < geo.paths.length; path ++ ) {
//For each point in the path...
for ( var pt = 0; pt < geo.paths[path].length; pt++ ) {
//Do something with each point in here...
//X coordinate: geo.paths[path][pt][0]
//Y coordinate: geo.paths[path][pt][1]
}
}
}
你可能想做一些更多的检查,比如你是否真的有一个Polyline,或者其他一些对象继承自geometry
,因为包含实际坐标的属性在Polyline, Polygon, Point等之间变化
相关文章:
- ArcGIS JavaScript自定义徽标
- 在arcgis javascript中手动添加图形层的图例
- ArcGIS Javascript-缩放以显示所有点
- 如何使用ArcGIS Javascript API旋转MapImage
- 用于JavaScript的ArcGIS API,NS_ERROR_DOM_BAD_URI:拒绝访问受限URI
- ArcGIS Javascript API 打印问题
- ArcGIS JavaScript API API 合并/溶解两个多边形
- ESRI ArcGIS Javascript API RelationshipQuery class
- ArcGIS JavaScript API 渲染要素图层的某些部分
- 在 ArcGIS JavaScript 中使用标注图层的目录
- Meteor + ArcGIS JavaScript
- ArcGIS API for JavaScript - 如何在地图边缘停止信息窗口裁剪
- ARCGIS Javascript 需要选择地图中的所有要素
- 使用适用于 JavaScript 的 ArcGIS API 在地图上显示 KMZ 图层的各个图层
- 使用 ArcGIS JavaScript API 访问服务器文件
- 如何使用arcgis javascript api将结果附加到Geocoder文本框中
- 从ArcGIS JavaScript API Map对象获取JSON WebMap
- ArcGIS Javascript API:向图形节点添加类
- Using arcgis javascript API
- ArcGIS服务器Javascript报告