Web API

Web API

ArcGIS Online Situational Awareness Widget数字显示小数位

Web API许丹石 回复了问题 • 2 人关注 • 1 个回复 • 217 次浏览 • 2018-06-01 16:25 • 来自相关话题

各位大神,我在构建ArcGIS Web Mapping Application时遇到一个问题.

Situational Awareness Widget, 我想让数字显示小数位,但是默认的只有整数.请问该如何设置才能让widget显示出小数位呢?

附件如图
 










 

arcgis api for js 4.x 三维是不是只支持web 墨卡托的坐标系,能否支持2000投影坐标系

Web API李阳 回复了问题 • 4 人关注 • 2 个回复 • 291 次浏览 • 2018-05-31 09:36 • 来自相关话题

arcgis api for js 4.x 三维是不是只支持web 墨卡托的坐标系,能否支持2000投影坐标系

按照geometry提取graphic失败

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 168 次浏览 • 2018-05-21 00:00 • 来自相关话题

按照geometry提取graphic失败

dynamicMapServiceLayer点击空白处不想弹窗

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 151 次浏览 • 2018-05-21 00:00 • 来自相关话题

dynamicMapServiceLayer点击空白区域不想弹窗

arcgis for js 4.6 版加载 kmz 图层的问题

回复

邵明升 回复了问题 • 1 人关注 • 1 个回复 • 247 次浏览 • 2018-05-21 00:00 • 来自相关话题

先生/女士,你好!

我在测试在网页渲染 kmllayer 时,遇到了 kml/kmz 文件发布的问题。

具体问题描述:
我自己制作了kml/kmz文件(文件本身没有问题),放在了 IIS 服务的一个目录下,通过浏览器该问放在 iis 服务器上的 kmz 文件,可以下载,将该地址传给 kmllayer 构造函数,无法在网页上渲染。
具体代码为:
var kmlUrl = 我的k

通过goTo实现飞行路径

回复

邵明升 回复了问题 • 1 人关注 • 1 个回复 • 311 次浏览 • 2018-05-21 00:00 • 来自相关话题

通过goTo实现飞行路径,用户想在每个点停顿一下

针对不同用户显示同一服务中不同区域的信息

zhengjie0520 回复了问题 • 2 人关注 • 2 个回复 • 391 次浏览 • 2018-05-15 15:04 • 来自相关话题

如何实现针对不同用户显示同一服务中不同区域的信息?

要素服务无法以三维加载

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 173 次浏览 • 2018-05-02 08:46 • 来自相关话题

要素服务无法在三维场景中渲染加载。

图例div冲突导致测量控件无法使用

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 180 次浏览 • 2018-05-02 00:00 • 来自相关话题

测量控件、图例控件 和 鹰眼图控件 同时使用时,利用dojo布局。报注册div冲突。测量控件无法使用。

前端渲染gp结果地图打印动态标注

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 282 次浏览 • 2018-02-05 00:00 • 来自相关话题

1 地图打印js3.9。对图层类型有限制。打印的图层类型是什么。
2 gp服务插值分析 。 前台渲染栅格图层。
3 3.9标注要素。 动态修改标注字段与值。

在要素服务中添加存在自相交问题的要素

回复

谢军 回复了问题 • 1 人关注 • 1 个回复 • 316 次浏览 • 2018-01-02 00:00 • 来自相关话题

客户端通过画图工具生成了一些多边形,如果多边形存在自相交问题,直接调用featurelayer对象的applyedits()方法添加此要素到featurelayer中,会导致编辑失败。如何解决?

JS中调用服务1分钟后报超时错误

回复

谢军 回复了问题 • 1 人关注 • 1 个回复 • 248 次浏览 • 2018-01-02 00:00 • 来自相关话题

使用JavaScript API调用GP或者query等服务,1分钟后报超时错误,原因及解决方法是什么?
条新动态, 点击查看
谢军

谢军 回答了问题 • 2018-01-02 00:00 • 2 个回复 不感兴趣

针对不同用户显示同一服务中不同区域的信息

赞同来自:

【解决办法】:
可以对不同登陆用户,使用不同的mask图层对服务进行遮盖。解决方案如下:

1.生成mask图片

1).在ArcMap中加载要当面mask图层的面要素类;

2).在ArcMap中使用polygon to ras... 显示全部 »
【解决办法】:
可以对不同登陆用户,使用不同的mask图层对服务进行遮盖。解决方案如下:

1.生成mask图片

1).在ArcMap中加载要当面mask图层的面要素类;

2).在ArcMap中使用polygon to raster工具,将面要素类转换为栅格数据,Cellsize参数的值设置的小一点,否者生成的栅格数据单元格太大,非常粗糙;

3).在ArcMap中加载转换好的栅格数据,进行符号化,例如可以进行分级渲染,分为一个级别,整个栅格图层设置为同一种颜色;

4). 在渲染好的图层上右键,选择数据 -》 导出数据,在export raster data窗口中,勾选Use Render和Force RGB, 导出的图片格式设置为png, 如图:https://www.screencast.com/t/6s2M1qVW17o ;

5). 在ArcMap中加载png数据,右键图层,选择属性,在Extent选项卡中获取extent信息(程序中会用到此信息);

6).可以将png图片拷贝至web服务器或者应用程序目录中,以获得图片的url;


2.在JavaScript API中使用 MapImageLayer 对象调用mask图片

代码示例如下:
   
[code]
    require( , function (Map, MapImage, MapImageLayer) {

var map = new Map(mapDiv, {
sliderOrientation: horizontal
});

var mi = new MapImage({
''extent'': {
''xmin'': 70.36501693725586,
''ymin'': 11.6401254937456,
''xmax'': 138.16777420043945,
''ymax'': 79.4428827569292,
''spatialReference'': {''wkid'': 4214}
},
''href'': http://192.168.100.117/mask.png
});

var mil = new MapImageLayer();

mil.addImage(mi);

map.addLayer(mil);

});

谢军

谢军 回答了问题 • 2018-01-02 00:00 • 1 个回复 不感兴趣

更改弹出窗口的宽度和高度

赞同来自:

【解决办法】:
对于3.x版本的JavaScript API, 通过popup对象的resize(width, height)方法设置,例如:

map.infoWindow.resize(180, 75);

对于4.x版本的JavaSc... 显示全部 »
【解决办法】:
对于3.x版本的JavaScript API, 通过popup对象的resize(width, height)方法设置,例如:

map.infoWindow.resize(180, 75);

对于4.x版本的JavaScript API, 由于popup对象没有方法来设置弹出窗口的宽度和高度,需要通过css来更改。例如: 

<style> 
div.esri-popup__main-container{ 
width: 300px; 
height:100px 

</style>
谢军

谢军 回答了问题 • 2018-01-02 00:00 • 1 个回复 不感兴趣

4.x版本JS API如何禁止使用鼠标移动和缩放地图

赞同来自:

【解决办法】:
监听相应事件,在回调函数中调用stopPropagation ()方法。禁止鼠标移动和鼠标滚轮缩放地图代码如下:


      view.on(mouse-wheel,function(evt){
        
        evt.s... 显示全部 »
【解决办法】:
监听相应事件,在回调函数中调用stopPropagation ()方法。禁止鼠标移动和鼠标滚轮缩放地图代码如下:


      view.on(mouse-wheel,function(evt){
        
        evt.stopPropagation ();
        
      });
            
      view.on(drag,function(evt){
        
        evt.stopPropagation ();
        
      });
谢军

谢军 回答了问题 • 2018-01-02 00:00 • 1 个回复 不感兴趣

JS中调用服务1分钟后报超时错误

赞同来自:

【解决办法】:
对于3.x版本的JavaScript API, 由于JS中默认的esriConfig.defaults.io.timeout是1分钟,对于客户端发出去的请求,如果一分钟之后没有收到返回的信息,客户端就会报出超时的错误信息。

       解... 显示全部 »
【解决办法】:
对于3.x版本的JavaScript API, 由于JS中默认的esriConfig.defaults.io.timeout是1分钟,对于客户端发出去的请求,如果一分钟之后没有收到返回的信息,客户端就会报出超时的错误信息。

       解决办法是更改esriConfig.defaults.io.timeout的值(https://developers.arcgis.com/javascript/3/jsapi/esri.config-amd.html),例如更改为10分钟: 

require([ esri/config], function (esriConfig) { 

esriConfig.defaults.io.timeout = 600000; //600000 milliseconds 

} )

对于4.x版本的JavaScript API, 也存在同样的情况。解决办法是更改request对象的timeout的值:https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html
谢军

谢军 回答了问题 • 2018-01-02 00:00 • 1 个回复 不感兴趣

在要素服务中添加存在自相交问题的要素

赞同来自:

【解决办法】:
通过draw工具绘制多边形的时候,可以绘制出自相交的多边形。自相交的多边形转换成json后仍然自相交,导致使用featurelayer对象的applyedits()方法进行编辑不成功。

    如果要避免,可以在画好图形之后,利用polyg... 显示全部 »
【解决办法】:
通过draw工具绘制多边形的时候,可以绘制出自相交的多边形。自相交的多边形转换成json后仍然自相交,导致使用featurelayer对象的applyedits()方法进行编辑不成功。

    如果要避免,可以在画好图形之后,利用polygon对象的.isSelfIntersecting()方法判断一下是否存在自相交,参考帮助:https://developers.arcgis.com/javascript/3/jsapi/polygon-amd.html#isselfintersecting 。如果存在自相交,可以给出提醒,并通过geometryengine对象或者geometryengineasync对象的simplify方法(参考:https://developers.arcgis.com/javascript/3/jsapi/geometryservice-amd.html#simplify;https://developers.arcgis.com/javascript/3/jsapi/esri.geometry.geometryengineasync-amd.html#simplify)或者几何服务中的simplify方法(参考:https://developers.arcgis.com/javascript/3/jsapi/geometryservice-amd.html#simplify)进行简化处理,使数据在拓扑上没有错误,之后再提交请求,执行applyedits()方法进行编辑。
许丹石

许丹石 回答了问题 • 2018-02-05 00:00 • 1 个回复 不感兴趣

前端渲染gp结果地图打印动态标注

赞同来自:

【解决办法】:
1.打印服务只支持前端的 ArcGISTiledMapServiceLayer ArcGISDynamicMapServiceLayer GraphicsLayer FeatureLayer 等图层http://resources.arcgis... 显示全部 »
【解决办法】:
1.打印服务只支持前端的 ArcGISTiledMapServiceLayer ArcGISDynamicMapServiceLayer GraphicsLayer FeatureLayer 等图层http://resources.arcgis.com/en/help/rest/apiref/exportwebmap_spec.html
2.esri.layers.RasterFunction只能针对影像服务。gp服务的结果为地图服务,无法使用此方法渲染。
3 showLabels可以控制显示标注以及标注字段。而修改字段的值后,标注即改变。
许丹石

许丹石 回答了问题 • 2018-05-02 00:00 • 1 个回复 不感兴趣

图例div冲突导致测量控件无法使用

赞同来自:

【解决办法】:
不使用parser.parse();而使用parser.instantiate(query(.map))。通过class注册。而不是id,则不会出现id冲突。
【解决办法】:
不使用parser.parse();而使用parser.instantiate(query(.map))。通过class注册。而不是id,则不会出现id冲突。
许丹石

许丹石 回答了问题 • 2018-05-02 00:00 • 1 个回复 不感兴趣

要素服务无法以三维加载

赞同来自:

【解决办法】:
featureLayer的renderer为Renderer类,包含ClassBreaksRenderer , SimpleRenderer , UniqueValueRenderer。再往下的symbol才能使用PointSymbol3D。[... 显示全部 »
【解决办法】:
featureLayer的renderer为Renderer类,包含ClassBreaksRenderer , SimpleRenderer , UniqueValueRenderer。再往下的symbol才能使用PointSymbol3D。[code]renderer:{
type:simple,// new SimpleRenderer
symbol:{
type: point-3d, //new PointSymbol3D()
symbolLayers: ,
verticalOffset: {
screenLength: 400,
maxWorldLength: 200,
minWorldLength: 35
},
callout: {
type: line,
color: white,
size: 2,
border: {
color: #D13470
}
}
}

}                         
邵明升

邵明升 回答了问题 • 2018-05-21 00:00 • 1 个回复 不感兴趣

通过goTo实现飞行路径

赞同来自:

【解决办法】:
var view = new SceneView({
container: viewDiv,
map: scene,
zoom: 10,
center: [117.371852,36.35927]
});

points=[
{
x:13058... 显示全部 »
【解决办法】:
var view = new SceneView({
container: viewDiv,
map: scene,
zoom: 10,
center: [117.371852,36.35927]
});

points=[
{
x:13058023.490428746,
y:4133579.5625787214,
z:192.76964191813022,
h:346.03380525721093,
t:79.8122105218081
},{
x:13057885.379671251,
y:4134165.8410214735,
z:132.4544222317636,
h:344.2610631473669,
t:85.42138814060058
},{
x:13057776.810946576,
y:4134499.5952105694,
z:174.96305826120079,
h:311.2247224011606,
t:59.828916342620865
}
]
view.on(click, function(e){
goToOnline();
});

function goToOnline(){
var i=0;
var timer = setInterval(change, 2000);
function change(){
if (i< points.length){
var cc = getCamera(i);
view.goTo(cc);
i++;
console.log(cc);
}else{
clearInterval(timer);
return;
}
}
}
function getCamera(goToFlag){
var camera = view.camera.clone();
camera.heading = points[goToFlag].h;
camera.tilt = points[goToFlag].t;
camera.position.x=points[goToFlag].x;
camera.position.y=points[goToFlag].y;
camera.position.z=points[goToFlag].z;
return camera;
}
通过setInterval()实现停顿
邵明升

邵明升 回答了问题 • 2018-05-21 00:00 • 1 个回复 不感兴趣

arcgis for js 4.6 版加载 kmz 图层的问题

赞同来自:

【解决办法】:
kmlayer 默认使用了一个公网的kmservice 来处理kml文件,即kml文件需要先上传到公网,如果使用了内网地址,程序是无法正常工作的。


  可将kmservice 地址设为本地的,必须要有portal,将您的kml或者kmz文件... 显示全部 »
【解决办法】:
kmlayer 默认使用了一个公网的kmservice 来处理kml文件,即kml文件需要先上传到公网,如果使用了内网地址,程序是无法正常工作的。


  可将kmservice 地址设为本地的,必须要有portal,将您的kml或者kmz文件发布到portal上,然后共享给everyone,通过地址调用。
  在代码中需要添加esriConfig.kmlServiceUrl,如下:
esriConfig.kmlServiceUrl = https://sms.esrichina.com/portal/sharing/kml;
var lyr = new KMLLayer({
url: https://sms.esrichina.com/portal/sharing/rest/content/items/8cc49407818d433db9d3ea3d7fb56c5a/data
});
许丹石

许丹石 回答了问题 • 2018-05-21 00:00 • 1 个回复 不感兴趣

dynamicMapServiceLayer点击空白处不想弹窗

赞同来自:

【解决办法】:
参考https://developers.arcgis.com/javascript/3/jssamples/find_popup.html修改部分代码。
deferred.then(function(value){
             ... 显示全部 »
【解决办法】:
参考https://developers.arcgis.com/javascript/3/jssamples/find_popup.html修改部分代码。
deferred.then(function(value){
             if(value.length > 0){
                map.infoWindow.setFeatures([deferred]);
                map.infoWindow.show(event.mapPoint);
             }
           })
许丹石

许丹石 回答了问题 • 2018-05-21 00:00 • 1 个回复 不感兴趣

按照geometry提取graphic失败

赞同来自:

【解决办法】:
需要根据各比例尺下,设定符合业务需求的容限误差像素,给tolerance属性赋值。来进行几何的识别即可。
【解决办法】:
需要根据各比例尺下,设定符合业务需求的容限误差像素,给tolerance属性赋值。来进行几何的识别即可。

ArcGIS Online Situational Awareness Widget数字显示小数位

回复

Web API许丹石 回复了问题 • 2 人关注 • 1 个回复 • 217 次浏览 • 2018-06-01 16:25 • 来自相关话题

各位大神,我在构建ArcGIS Web Mapping Application时遇到一个问题.

Situational Awareness Widget, 我想让数字显示小数位,但是默认的只有整数.请问该如何设置才能让widget显示出小数位呢?

附件如图
 










 

arcgis api for js 4.x 三维是不是只支持web 墨卡托的坐标系,能否支持2000投影坐标系

回复

Web API李阳 回复了问题 • 4 人关注 • 2 个回复 • 291 次浏览 • 2018-05-31 09:36 • 来自相关话题

arcgis api for js 4.x 三维是不是只支持web 墨卡托的坐标系,能否支持2000投影坐标系

按照geometry提取graphic失败

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 168 次浏览 • 2018-05-21 00:00 • 来自相关话题

按照geometry提取graphic失败

dynamicMapServiceLayer点击空白处不想弹窗

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 151 次浏览 • 2018-05-21 00:00 • 来自相关话题

dynamicMapServiceLayer点击空白区域不想弹窗

arcgis for js 4.6 版加载 kmz 图层的问题

回复

邵明升 回复了问题 • 1 人关注 • 1 个回复 • 247 次浏览 • 2018-05-21 00:00 • 来自相关话题

先生/女士,你好!

我在测试在网页渲染 kmllayer 时,遇到了 kml/kmz 文件发布的问题。

具体问题描述:
我自己制作了kml/kmz文件(文件本身没有问题),放在了 IIS 服务的一个目录下,通过浏览器该问放在 iis 服务器上的 kmz 文件,可以下载,将该地址传给 kmllayer 构造函数,无法在网页上渲染。
具体代码为:
var kmlUrl = 我的k

通过goTo实现飞行路径

回复

邵明升 回复了问题 • 1 人关注 • 1 个回复 • 311 次浏览 • 2018-05-21 00:00 • 来自相关话题

通过goTo实现飞行路径,用户想在每个点停顿一下

针对不同用户显示同一服务中不同区域的信息

回复

zhengjie0520 回复了问题 • 2 人关注 • 2 个回复 • 391 次浏览 • 2018-05-15 15:04 • 来自相关话题

如何实现针对不同用户显示同一服务中不同区域的信息?

要素服务无法以三维加载

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 173 次浏览 • 2018-05-02 08:46 • 来自相关话题

要素服务无法在三维场景中渲染加载。

图例div冲突导致测量控件无法使用

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 180 次浏览 • 2018-05-02 00:00 • 来自相关话题

测量控件、图例控件 和 鹰眼图控件 同时使用时,利用dojo布局。报注册div冲突。测量控件无法使用。

前端渲染gp结果地图打印动态标注

回复

许丹石 回复了问题 • 1 人关注 • 1 个回复 • 282 次浏览 • 2018-02-05 00:00 • 来自相关话题

1 地图打印js3.9。对图层类型有限制。打印的图层类型是什么。
2 gp服务插值分析 。 前台渲染栅格图层。
3 3.9标注要素。 动态修改标注字段与值。

在要素服务中添加存在自相交问题的要素

回复

谢军 回复了问题 • 1 人关注 • 1 个回复 • 316 次浏览 • 2018-01-02 00:00 • 来自相关话题

客户端通过画图工具生成了一些多边形,如果多边形存在自相交问题,直接调用featurelayer对象的applyedits()方法添加此要素到featurelayer中,会导致编辑失败。如何解决?

JS中调用服务1分钟后报超时错误

回复

谢军 回复了问题 • 1 人关注 • 1 个回复 • 248 次浏览 • 2018-01-02 00:00 • 来自相关话题

使用JavaScript API调用GP或者query等服务,1分钟后报超时错误,原因及解决方法是什么?