Web API

Web API

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

回复

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

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

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

回复

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

JavaScript API中,如何更改弹出窗口的宽度和高度?

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

回复

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

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

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

回复

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

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

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

回复

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

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

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

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

赞同来自:

【解决办法】:
可以对不同登陆用户,使用不同的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()方法进行编辑。

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

回复

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

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

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

回复

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

JavaScript API中,如何更改弹出窗口的宽度和高度?

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

回复

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

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

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

回复

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

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

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

回复

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

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