arcgis js 根据用户状态控制arcgis固定比例尺出图显示

使用Arcgis Javascript api 访问其他地图
我的图书馆
使用Arcgis Javascript api 访问其他地图
在最初接触GIS开发的时候,手上没有任何的地图数据,只是简单的把ArcGIS提供的或者国家地理信息中心公开的低分辨率矢量数据使用ArcGIS Server发布成地图服务来使用。慢慢的开始下载Google或者ESRI在线地图瓦片数据,然后自己编写Servlet程序来发布这些瓦片。当然,也有走正规途径的时候,比如购买灵图或者高德的地图,在或者购买其他高校自己制作的海图等。对于上说这些地图,或者可以直接使用WebTiledLayer或者直接使用ArcGISMapServerLayer访问,十分简单。
有时候,客户会要求我们必须使用在线地图,多见的是要求使用天地图。好吧,这时候我们是不能简单的直接使用ArcGISMapServerLayer或者WebTiledLayer来做到的,怎么办?
你可能会说,网上有实现ArcGIS javascript api访问Google、百度、高德地图的例子,访问天地图的也有!是的,我们常看到的是继承TiledMapServerLayer的方式实现的。其实,使用WebTiledLayer完全可以做到,而且相对简单。
好,我们来看下两种方式,访问天地图,其他地图类似。
继承TiledMapServerLayer方式
(基本引用 两仪清风的 “” )
1.创建TDTLayer.js
[javascript] define(["dojo/_base/declare","esri/layers/tiled"],&function(declare){&&return&declare(esri.layers.TiledMapServiceLayer,&{&&&&&&&&&&constructor:&function()&{&&&&&&&&&&&&this.spatialReference&=&new&esri.SpatialReference({&wkid:4326&});&&&&&&&&&&&&this.initialExtent&=&(this.fullExtent&=&new&esri.geometry.Extent(-180.0,&-90.0,&180.0,&90.0,&this.spatialReference));&&&&&&&&&&&&&&&this.tileInfo&=&new&esri.layers.TileInfo({&&&&&&&&&&&&&&"rows"&:&256,&&&&&&&&&&&&&&"cols"&:&256,&&&&&&&&&&&&&&"compressionQuality"&:&0,&&&&&&&&&&&&&&"origin"&:&{&&&&&&&&&&&&&&&&"x"&:&-180,&&&&&&&&&&&&&&&&"y"&:&90&&&&&&&&&&&&&&},&&&&&&&&&&&&&&"spatialReference"&:&{&&&&&&&&&&&&&&&&"wkid"&:&4326&&&&&&&&&&&&&&},&&&&&&&&&&&&&&"lods"&:&[&&&&&&&&&&&&&&&&{"level"&:&2,&"resolution"&:&0.3515625,&"scale"&:&937502},&&&&&&&&&&&&&&&&{"level"&:&3,&"resolution"&:&0.,&"scale"&:&687508},&&&&&&&&&&&&&&&&{"level"&:&4,&"resolution"&:&0.,&"scale"&:&343754},&&&&&&&&&&&&&&&&{"level"&:&5,&"resolution"&:&0.,&"scale"&:&171877},&&&&&&&&&&&&&&&&{"level"&:&6,&"resolution"&:&0.,&"scale"&:&0859385},&&&&&&&&&&&&&&&&{"level"&:&7,&"resolution"&:&0.,&"scale"&:&5429693},&&&&&&&&&&&&&&&&{"level"&:&8,&"resolution"&:&0.5,&"scale"&:&7714846},&&&&&&&&&&&&&&&&{"level"&:&9,&"resolution"&:&0.25,&"scale"&:&8857423},&&&&&&&&&&&&&&&&{"level"&:&10,&"resolution"&:&0.625,&"scale"&:&},&&&&&&&&&&&&&&&&{"level"&:&11,&"resolution"&:&0.8125,&"scale"&:&},&&&&&&&&&&&&&&&&{"level"&:&12,&"resolution"&:&0.90625,&"scale"&:&},&&&&&&&&&&&&&&&&{"level"&:&13,&"resolution"&:&0.953125,&"scale"&:&358895},&&&&&&&&&&&&&&&&{"level"&:&14,&"resolution"&:&8.25e-005,&"scale"&:&679447},&&&&&&&&&&&&&&&&{"level"&:&15,&"resolution"&:&4.125e-005,&"scale"&:&839724},&&&&&&&&&&&&&&&&{"level"&:&16,&"resolution"&:&2.,&"scale"&:&198619},&&&&&&&&&&&&&&&&{"level"&:&17,&"resolution"&:&1.,&"scale"&:&599309},&&&&&&&&&&&&&&&&{"level"&:&18,&"resolution"&:&5.,&"scale"&:&799655}&&&&&&&&&&&&&&]&&&&&&&&&&&&});&&&&&&&&&&&&&&&this.loaded&=&true;&&&&&&&&&&&&this.onLoad(this);&&&&&&&&&&},&&&&&&&&&&&&&getTileUrl:&function(level,&row,&col)&{&&&&&&&&&&&&&&&&&&&&&&return&"http://t"&+&col%8&+&"./vec_c/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=c&TILEMATRIX="+level+"&TILEROW="+row+"&TILECOL="+col+"&FORMAT=tiles";&&&&&&&&&&&&&}&&&&&&&&});&&&&&&&&});&&
2.创建TDTAnnoLayer.js
TDAnnoLayer.cs 只需要把TDTLayer.js中的 getTileUrl方法修改下就可以了,比例尺什么的都是一样的,这个是注释图层。
[javascript] getTileUrl:&function(level,&row,&col)&{&&&&&&&&&&&&return&"http://t"&+&row%8&+&"./cva_c/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cva&STYLE=default&TILEMATRIXSET=c&TILEMATRIX="+level+"&TILEROW="+row+"&TILECOL="+col+"&FORMAT=tiles";&&&&&&&&&&&&&}&&
3.编写html使用自定义类加载地图
(注意dojoConfig部分,这里定义了tdlib放置的位置。需要在和html页面所放置的同一个tomcat服务的webapps目录下的js工程中包含"tdlib\TDTLayer.js“和”tdlib\TDTAnnoLayer.js")
[html] &!DOCTYPE&HTML&PUBLIC&"-//W3C//DTD&HTML&4.01//EN"&"http://www.w3.org/TR/html4/strict.dtd"&&&&html&&&&&&head&&&&&&&&meta&http-equiv="Content-Type"&content="text/&charset=utf-8"/&&&&&&&&title&TianDi&Map&/title&&&&&&&&&&&&&&script&type="text/javascript"&&&&&&&&&&&dojoConfig&=&{&&&&&&&&&&&&&&parseOnLoad:&true,&&&&&&&&&&&&&&packages:&[{&&&&&&&&&&&&&&&&&&name:&'tdlib',&&&&&&&&&&&&&&&&&&location:&"/js/tdlib"&&&&&&&&&&&&&&}]&&&&&&&&&&};&&&&&&&/script&&&&&&&&link&rel="stylesheet"&href="/3.6/js/esri/css/esri.css"&&&&&&&&link&rel="stylesheet"&href="/3.6/js/dojo/dijit/themes/tundra/tundra.css"&&&&&&&&&&&&&&script&src="/3.6/"&&/script&&&&&&&&&&&&&&&&script&type="text/javascript"&&&&&&&var&&&&&&&require(["esri/map",&"tdlib/TDTLayer","tdlib/TDTAnnoLayer","esri/geometry/Point","dijit/form/Button","dojo/domReady!"],&&&&&&&function(Map,TDTLayer,TDTAnnoLayer,Point,Button)&{&&&&&&&&&&map=new&Map("mapDiv",{&logo:false});&&&&&&&&&&var&basemap&=&new&TDTLayer();&&&&&&&&&&map.addLayer(basemap);&&&&&&&&&&var&annolayer=&&new&TDTAnnoLayer();&&&&&&&&&&map.addLayer(annolayer);&&&&&&&&&&&&&&&&&&&&map.centerAndZoom(new&Point({"x":&120.200018,&"y":&30.209999,&"spatialReference":&{"wkid":&4326&}&}),14);&&&&&&&&&&&&&&&&&&&&var&button&=&new&Button({&&&&&&&&&&&&&&label:&"北京",&&&&&&&&&&&&&&onClick:&function(){&&&&&&&&&&&&&&&&&&map.centerAt(new&esri.geometry.Point(116.3,39.9,&new&esri.SpatialReference({&wkid:&4326&})));&&&&&&&&&&&&&&&&&&}}&&&&&&&&&&&&&&,&"ToBeijing");&&&&&&&&&&&&&&&&});&&&&&&&/script&&&&&&/head&&&&&&body&class="tundra"&&&&&&&&button&id="ToBeijing"&type="button"&&&/button&&br&/&&&&&&&&div&id="mapDiv"&style="width:1000&height:500&border:1px&solid�"&&/div&&&&&&/body&&&&/html&&&
使用WebTiledLayer方式
[html] &!DOCTYPE&html&&&&html&&&&&&head&&&&&&&&meta&charset="utf-8"&&&&&&&&meta&name="viewport"&content="initial-scale=1,&maximum-scale=1,user-scalable=no"&&&&&&&&title&&/title&&&&&&&&&&&link&rel="stylesheet"&href="/3.13/dijit/themes/nihilo/nihilo.css"&&&&&&&&link&rel="stylesheet"&href="/3.13/esri/css/esri.css"&&&&&&&&style&&&&&&&&&html,&body,&#map&{&&&&&&&&&&&height:&100%;&width:&100%;&&&&&&&&&&margin:&0;&padding:&0;&&&&&&&&}&&&&&&&&&body{&&&&&&&&&&background-color:&#&overflow:&&&&&&&&&&&font-family:&sans-&&&&&&&&}&&&&&&&&&#header&{&&&&&&&&&&padding:&4px&15px&4px&0;&&&&&&&&&&background-color:&#F2F2EC;&&&&&&&&&&&color:򌤍&&&&&&&&&&&font-size:&16&&&&&&&&&&&text-align:&&&&&&&&&&&&font-weight:&&&&&&&&&&&height:55&&&&&&&&}&&&&&&&&#subheader&{&&&&&&&&&&color:򌤍&&&&&&&&&&font-size:&&&&&&&&&&&padding:&5px&0&0&0;&&&&&&&&&&text-align:&&&&&&&&&}&&&&&&&&#subheader&a&{&color:򌤍&}&&&&&&&&&&&.ds&{&background:�&overflow:&&position:&&z-index:&2;&}&&&&&&&&#ds-h&div&{&width:&100%;&}&&&&&&&&#ds&.o1&{&filter:&alpha(opacity=10);&opacity:&.1;&}&&&&&&&&#ds&.o2&{&filter:&alpha(opacity=8);&opacity:&.08;&}&&&&&&&&#ds&.o3&{&filter:&alpha(opacity=6);&opacity:&.06;&}&&&&&&&&#ds&.o4&{&filter:&alpha(opacity=4);&opacity:&.04;&}&&&&&&&&#ds&.o5&{&filter:&alpha(opacity=2);&opacity:&.02;&}&&&&&&&&#ds&.h1&{&height:&1&}&&&&&&&&#ds&.h2&{&height:&2&}&&&&&&&&#ds&.h3&{&height:&3&}&&&&&&&&#ds&.h4&{&height:&4&}&&&&&&&&#ds&.h5&{&height:&5&}&&&&&&&/style&&&&&&&&&&&script&src="/3.13/"&&/script&&&&&&&&script&&&&&&&&&var&&&&&&&&&require([&&&&&&&&&&"esri/map",&"esri/layers/WebTiledLayer","esri/geometry/Point",&"esri/layers/TileInfo",&"dojo/parser",&&&&&&&&&&&&&&&&&&&&"dijit/layout/BorderContainer",&"dijit/layout/ContentPane",&"dojo/domReady!"&&&&&&&&],&function(&&&&&&&&&&Map,&WebTiledLayer,Point,&TileInfo,&parser&&&&&&&&)&{&&&&&&&&&&parser.parse();&&&&&&&&&&&&//定义地图&&&&&&&&&&map&=&new&Map("map",&{&&&&&&"spatialReference":{"wkid":4326},&&&&&&&&&&&&center:&[0.985,&29.822],&&&&&&&&&&&&zoom:&3&&&&&&&&&&});&&&&&&&&//定义瓦片结构&&&&&&var&tileInfo&=&new&esri.layers.TileInfo({&&&&&&&&&&&&&&"rows"&:&256,&&&&&&&&&&&&&&"cols"&:&256,&&&&&&&&&&&&&&"compressionQuality"&:&0,&&&&&&&&&&&&&&"origin"&:&{&&&&&&&&&&&&&&&&"x"&:&-180,&&&&&&&&&&&&&&&&"y"&:&90&&&&&&&&&&&&&&},&&&&&&&&&&&&&&"spatialReference"&:&{&&&&&&&&&&&&&&&&"wkid"&:&4326&&&&&&&&&&&&&&},&&&&&&&&&&&&&&"lods"&:&[&&&&&&&&&&&&&&&&{"level"&:&2,&"resolution"&:&0.3515625,&"scale"&:&937502},&&&&&&&&&&&&&&&&{"level"&:&3,&"resolution"&:&0.,&"scale"&:&687508},&&&&&&&&&&&&&&&&{"level"&:&4,&"resolution"&:&0.,&"scale"&:&343754},&&&&&&&&&&&&&&&&{"level"&:&5,&"resolution"&:&0.,&"scale"&:&171877},&&&&&&&&&&&&&&&&{"level"&:&6,&"resolution"&:&0.,&"scale"&:&0859385},&&&&&&&&&&&&&&&&{"level"&:&7,&"resolution"&:&0.,&"scale"&:&5429693},&&&&&&&&&&&&&&&&{"level"&:&8,&"resolution"&:&0.5,&"scale"&:&7714846},&&&&&&&&&&&&&&&&{"level"&:&9,&"resolution"&:&0.25,&"scale"&:&8857423},&&&&&&&&&&&&&&&&{"level"&:&10,&"resolution"&:&0.625,&"scale"&:&},&&&&&&&&&&&&&&&&{"level"&:&11,&"resolution"&:&0.8125,&"scale"&:&},&&&&&&&&&&&&&&&&{"level"&:&12,&"resolution"&:&0.90625,&"scale"&:&},&&&&&&&&&&&&&&&&{"level"&:&13,&"resolution"&:&0.953125,&"scale"&:&358895},&&&&&&&&&&&&&&&&{"level"&:&14,&"resolution"&:&8.25e-005,&"scale"&:&679447},&&&&&&&&&&&&&&&&{"level"&:&15,&"resolution"&:&4.125e-005,&"scale"&:&839724},&&&&&&&&&&&&&&&&{"level"&:&16,&"resolution"&:&2.,&"scale"&:&198619},&&&&&&&&&&&&&&&&{"level"&:&17,&"resolution"&:&1.,&"scale"&:&599309},&&&&&&&&&&&&&&&&{"level"&:&18,&"resolution"&:&5.,&"scale"&:&799655}&&&&&&&&&&&&&&]&&&&&&&&&&&&});&&&&&&&&&&&&//地图&&&&&&&&&&var&baseMap&=&new&WebTiledLayer("http://${subDomain}./DataServer?T=vec_c&X=${col}&Y=${row}&L=${level}",&{&&&&&&&&&&&&"copyright":&"Tianditu",&&&&&&&&&&&&"id":&"Tianditu",&&&&&&&&&&&&"subDomains":&["t0",&"t1",&"t2"],&&&&&&"tileInfo":tileInfo&&&&&&&&&&});&&&&&&//底图标注&&&&&&&&&&var&baseMapMarker&=&new&WebTiledLayer("http://${subDomain}./DataServer?T=cva_c&X=${col}&Y=${row}&L=${level}",&{&&&&&&&&&&&&"copyright":&"Tianditu",&&&&&&&&&&&&"id":&"Tianditu2",&&&&&&&&&&&&"subDomains":&["t0",&"t1",&"t2"],&&&&&&"tileInfo":tileInfo&&&&&&&&&&});&&&&&&&&&&map.addLayer(baseMap);&&&&&&map.addLayer(baseMapMarker);&&&&&&//定位到北京&&&&&&map.centerAndZoom(new&esri.geometry.Point({"x":&116.39,&"y":&39.91,&"spatialReference":&{"wkid":&4326&}&}),14);&&&&&&&&});&&&&&&&/script&&&&&&/head&&&&&&body&class="nihilo"&&&&&&&&div&id="mainWindow"&&&&&&&&&&&&data-dojo-type="dijit/layout/BorderContainer"&&&&&&&&&&&&data-dojo-props="design:'headline',gutters:false"&&&&&&&&&&&style="width:&100%;&height:&100%;&margin:&0;"&&&&&&&&&&div&id="map"&class="shadow"&&&&&&&&&&&&&&data-dojo-type="dijit/layout/ContentPane"&&&&&&&&&&&&&data-dojo-props="region:'center'"&&&&&&&&&&&&&&&!--&drop&shadow&divs&--&&&&&&&&&&&&div&id="ds"&&&&&&&&&&&&&&div&id="ds-h"&&&&&&&&&&&&&&&&div&class="ds&h1&o1"&&/div&&&&&&&&&&&&&&&&div&class="ds&h2&o2"&&/div&&&&&&&&&&&&&&&&div&class="ds&h3&o3"&&/div&&&&&&&&&&&&&&&&div&class="ds&h4&o4"&&/div&&&&&&&&&&&&&&&&div&class="ds&h5&o5"&&/div&&&&&&&&&&&&&&/div&&&&&&&&&&&&/div&&&!--&end&drop&shadow&divs&--&&&&&&&&&&&&&&&&&&&&&&&&/div&&&&&&&&/div&&&&&&/body&&&&/html&&&&&&
关于瓦片地图服务地址的选取
天地图总共提供的8个可访问的服务器地址:
从第一方式的代码可以看出,是使用当前瓦片的col作为参数,向瓦片服务器编号映射,这样每个瓦片固定映射到某一个服务器上。比如瓦片(row=3,col=4,level=12)一定被映射到t4服务器。这样所有的服务器都被此代码使用,一但某一台服务器宕机,那么必然有瓦片不能正常加载。
个人观点是,第二种方式更好,可以在domain种输入总体比较稳定或者距离本地较近的几台服务器作为服务对象,比如只选择t0,t1,t3等。当然第一种通过设计公式也可以做到,这里只是一个观点 :).
TA的最新馆藏
喜欢该文的人也喜欢您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
ArcGIS_Server_Java讲座.doc 89页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:500 &&
你可能关注的文档:
··········
··········
ArcGIS Server 9.2 for Java 讲座 1、前言------为什么我们选择JSF,而不是其它framework 12、ArcGIS Server Java开发 JSF基础 23、ArcGIS Server Java ADF开发的JSF知识介绍 54、ArcGIS Server 开发初步 -- 自定义工具 75、使用图片和TrueType字体进行标注 106、Server Java讲座-----扩展Tasks框架 137、Server Java 开发实战---自定义command 198、 ArcGIS Server Java 讲座--ADF 体系结构 第一部分 219、ArcGIS Server JAVA讲座--实现后台JSF Bean和前台Javascript的联动 2410、ArcGIS Server JAVA讲座 --AJAX基础 2511、ArcGIS Server JAVA开发讲座--- ADF中的Ajax函数 2712、ArcGIS Server Java讲座--如何在用JSF在服务器端处理Ajax请求 2913、ArcGIS Server Java讲座----利用Ajax得到当前地图的比例尺(服务器端) 3214、ArcGIS Server Java讲座--用Ajax得到地图比例尺(客户端代码) 3315、ArcGIS Server JAVA 讲座 自定义Functionality 3516、ArcGIS Server Java讲座---用自定义functionality实现用户权限控制 3717、Server Java讲座-----扩展Tasks框架 4218、ArcGIS Server Java讲座--自定义Tools开发 4819、ArcGIS Server Java讲座-空间查询和高亮显示的实现 5220、Server Java 自定义开发-Network Analysis 5421、ArcGIS Server开发——控制图层是否可见 5922、航线查询问题-Server Java的实现方法 5923、ArcGis 航线查询完全例子 6424、ArcGis Server 中 如何在Task中实现 下拉列表和 checkbox 和 radiobutton.(完整例子) 7325、ArcGIS Server开发——标注 7426、ArcGIS Server Java开发--Born for SOA系列 前言 7527、ArcGIS Server Java开发--Born for SOA系列 Web Service基础 7528、ArcGIS Server Java讲座:Born For SOA--Server对于SOAP的支持 8129、Server Java开发--Born for SOA系列 通过代理类访问ArcGIS Server Web Service 84 1、前言------为什么我们选择JSF,而不是其它framework 在正式开讲之前,我们来探讨一下为什么要使用JSF来实现SERVER ADF,这也是很多开发商跟我讨论时经常会问到的问题。 ? ?? ?世界上有300种Java的framework,这个数字是我几个月前听到的,现在可能已经不止这个数了。我曾经用过的framework包括Structs,Hibernate,Spring。这些framework不但能加速开发,而且会带来全新的程序设计理念。我当时的感觉是:原来程序还可以这样写! 当然,这些framework都是开源免费,你不用担心自己的良心受到谴责,也不用担心比尔盖茨半夜敲门收钱。 ? ?? ? 在这300多种framework中,ESRI为什么选择了JSF?各个framework有各个framework的好处。JSF最大的优点就是:像 Swing 和 AWT 一样,JSF 是一个可以提供一组标准的、可重用的 GUI 组件的开发框架。 原因之一: 行为与表示的完全分离。 ? ???行为和表现不分离的一个典型例子是普通的JSP 技术,这一技术很好,因为很容易在 HTML(和类 HTML)页面中混合 Java 代码。这样我们就可以使用强大的Java API的功能。当然,很明显的坏处是行为表现黏合在一起。而且代码不容易重用。这让我想起刚使用JSP技术时,在文本编辑器下写JSP页面,读写数据库,并且在同一个页面上显示出来的痛苦回忆。 ? ?? ?Model1架构的出现使开发人员可以用javabean的方式进行开发,舒服多了。当然,还有更好的。 ? ?? ?这就不得不提到著名的MVC结构,(MVC) model-view-controller架构提供了一系列的设计模式,这些模式让你可以轻松地应用于程序地开发,特别是
正在加载中,请稍后...今天看啥 热点:
Arcgis for Js之鼠标经过显示对象名的实现,arcgisjs
在浏览地图时,移动鼠标经过某个对象或者POI的时候,能够提示该对象的名称对用户来说是很实用的,本文讲述在Arcgis for Js中,用两种不同的方式来实现该效果。
为了有个直观的概念,先给大家看看实现后的效果:
百度地图的效果
直观的看到了效果,下面说说在Arcgis for Js中实现的两种方式。在实现给效果的时候,有layer的两个事件,mouse-over和mouse-out事件,鼠标经过显示对象名称,鼠标移除清除显示。
1、通过TextSymbol和GraphicMarkerSymbol实现
通过这种方式显示是直接用Arcgis的方式实现的,实现的代码如下,效果为效果2:
function mouseOverLayer(e){
map.setMapCursor(&pointer&);
console.log(e.graphic);
= new esri.symbol.Font();
font.setSize(&10pt&);
font.setFamily(&微软雅黑&);
var cpoint = event.graphic.
var text = new esri.symbol.TextSymbol(event.graphic.attributes.name);
text.setFont(font);
text.setColor(new dojo.Color([0,0,0,100]));
text.setOffset(20,-35);
pmsTextBg.setOffset(20,-30);
var textLength=event.graphic.attributes.name.
pmsTextBg.setWidth(textLength*13.5+5);
var bgGraphic = new esri.Graphic(cpoint, pmsTextBg);
showTextLayer.add(bgGraphic);
var labelGraphic = new esri.Graphic(cpoint,text);
showTextLayer.add(labelGraphic);
function mouseOutLayer(){
map.graphics.clear();
showTextLayer.clear();
map.setMapCursor(&default&);
2、直接用div显示
通过获取鼠标点位置或者几何体位置,将位置转换为屏幕坐标,将信息用div的形式展示出来,代码如下,效果为效果1:
function mouseOverLayer(e){
map.setMapCursor(&pointer&);
console.log(e.graphic.attributes);
var scrPt = map.toScreen(e.graphic.geometry);
console.log(scrPt);
var textDiv = dojo.doc.createElement(&div&);
dojo.attr(textDiv,{
&id&:&text&
dojo.style(textDiv, {
&left&: scrPt.x+10 + &px&,
&top&: scrPt.y+10 + &px&,
&position&: &absolute&,
&z-index&:99,
&background&:&#fcffd1&,
&font-size&:&10px&,
&border&:&1px solid #0096ff&,
&padding&: &0.1em 0.3em 0.1em&,
&font-size&: &11px&,
&border-radius&: &3px&,
&box-shadow&: &0 0 0.75em #777777&
textDiv.innerHTML =e.graphic.attributes.
dojo.byId(&map&).appendChild(textDiv);
function mouseOutLayer(e){
map.setMapCursor(&default&);
dojo.byId(&map&).removeChild(dojo.byId(&text&));
以上两种方式都可实现相同的效果,但就实现的难易程度,第二种比第一种简单,在实现的美观程度上,第二种比第一种更好调整与控制,在实现效率上,第二种比第一种好一点,可是,就在与地图的结合上,很显然,第二种比第一种稍微差一点。
如有疑问,请联系:
相关搜索:
相关阅读:
相关频道:
Android教程最近更新503 Service Temporarily Unavailable
503 Service Temporarily Unavailable
openresty/1.11.2.4Recent Posts
- 853,126 views - 487,751 views - 88,441 views - 74,934 views - 68,866 views - 62,201 views - 59,775 views - 39,594 views - 38,504 views - 37,572 views}

我要回帖

更多关于 arcgis比例尺设置 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信