33*********************************************************************-->
44<!DOCTYPE html>
55< html >
6+
67< head >
78 < meta charset ="utf-8 ">
89 < title data-i18n ="resources.title_gridInfosQuery "> </ title >
3536 }
3637 </ style >
3738</ head >
39+
3840< body >
39- < div id ="map "> </ div >
40- < script type ="text/javascript " include ="bootstrap,widgets.alert " src ="../js/include-web.js "> </ script >
41- < script type ="text/javascript " exclude ="iclient-classic " src ="../../dist/classic/include-classic.js "> </ script >
42- < div id ="queryresult "> </ div >
43- < script >
44- var featuresOrigin = [ ] ;
45- var map , layer , pointLayer , drawPoint ,
46- host = window . isLocal ? window . server : "http://support.supermap.com.cn:8090" ,
47- url = host + "/iserver/services/map-jingjin/rest/maps/京津地区地图" ,
48- url1 = host + "/iserver/services/data-jingjin/rest/data" ;
49-
50- init ( ) ;
51-
52- function init ( ) {
53- map = new SuperMap . Map ( "map" , {
54- controls : [
55- new SuperMap . Control . LayerSwitcher ( ) ]
56- } ) ;
57-
58- map . events . on ( {
59- "click" : mapClicked
60- } ) ;
61-
62- //新建点矢量图层
63- pointLayer = new SuperMap . Layer . Vector ( "pointLayer" ) ;
64-
65- layer = new SuperMap . Layer . TiledDynamicRESTLayer ( "china" , url , { transparent : true , cacheEnabled : true } ) ;
66- layer . events . on ( { "layerInitialized" : addLayer } ) ;
67- }
68-
69- function addLayer ( ) {
70- map . addLayers ( [ layer , pointLayer ] ) ;
71- map . setCenter ( new SuperMap . LonLat ( 116.85 , 39.79 ) , 2 ) ;
72- }
73-
74- function query ( lonlat ) {
75- if ( ! ! lonlat ) {
76- var gridCellQueryParam = new SuperMap . REST . GetGridCellInfosParameter ( {
77- datasetName : 'JingjinTerrain' ,
78- dataSourceName : "Jingjin" ,
79- X : lonlat . lon ,
80- Y : lonlat . lat
41+ < div id ="map "> </ div >
42+ < script type ="text/javascript " include ="bootstrap,widgets.alert " src ="../js/include-web.js "> </ script >
43+ < script type ="text/javascript " exclude ="iclient-classic " src ="../../dist/classic/include-classic.js "> </ script >
44+ < div id ="queryresult "> </ div >
45+ < script >
46+ var featuresOrigin = [ ] ;
47+ var map , layer , pointLayer , drawPoint ,
48+ host = window . isLocal ? window . server : "http://support.supermap.com.cn:8090" ,
49+ url = host + "/iserver/services/map-jingjin/rest/maps/京津地区地图" ,
50+ url1 = host + "/iserver/services/data-jingjin/rest/data" ;
51+
52+ init ( ) ;
53+
54+ function init ( ) {
55+ map = new SuperMap . Map ( "map" , {
56+ controls : [
57+ new SuperMap . Control . LayerSwitcher ( ) ]
8158 } ) ;
82- var gridCellQueryService = new SuperMap . REST . GetGridCellInfosService ( url1 , {
83- 'eventListeners' : {
84- 'processCompleted' : querySuccess ,
85- 'processFailed' : queryFailed
86- }
59+
60+ map . events . on ( {
61+ "click" : mapClicked
8762 } ) ;
88- gridCellQueryService . processAsync ( gridCellQueryParam ) ;
89- } else {
90- widgets . alert . showAlert ( resources . msg_geographicPosition , false , 240 ) ;
63+
64+ //新建点矢量图层
65+ pointLayer = new SuperMap . Layer . Vector ( "pointLayer" ) ;
66+
67+ layer = new SuperMap . Layer . TiledDynamicRESTLayer ( "china" , url , { transparent : true , cacheEnabled : true } ) ;
68+ layer . events . on ( { "layerInitialized" : addLayer } ) ;
9169 }
92- }
93-
94- function mapClicked ( evt ) {
95- var pixel = new SuperMap . Pixel ( evt . clientX , evt . clientY ) ,
96- lonlat = map . getLonLatFromPixel ( pixel ) ;
97- addFeature ( lonlat ) ;
98- query ( lonlat ) ;
99- }
100-
101- function addFeature ( lonlat ) {
102- pointLayer . removeAllFeatures ( ) ;
103- var point = new SuperMap . Geometry . Point ( lonlat . lon , lonlat . lat ) ;
104- var feature = new SuperMap . Feature . Vector ( point ) ;
105- pointLayer . addFeatures ( [ feature ] ) ;
106- }
107-
108- function querySuccess ( evt ) {
109- var str = resources . text_gridQueryResult ,
110- result = evt . result ;
111- for ( var objName in result ) {
112- if ( result . hasOwnProperty ( objName ) ) {
113- str += "<span>" + objName + ":" + result [ objName ] + "</span> " ;
70+
71+ function addLayer ( ) {
72+ map . addLayers ( [ layer , pointLayer ] ) ;
73+ map . setCenter ( new SuperMap . LonLat ( 116.85 , 39.79 ) , 2 ) ;
74+ }
75+
76+ function query ( lonlat ) {
77+ if ( ! ! lonlat ) {
78+ var gridCellQueryParam = new SuperMap . REST . GetGridCellInfosParameter ( {
79+ datasetName : 'JingjinTerrain' ,
80+ dataSourceName : "Jingjin" ,
81+ X : lonlat . lon ,
82+ Y : lonlat . lat
83+ } ) ;
84+ var gridCellQueryService = new SuperMap . REST . GetGridCellInfosService ( url1 , {
85+ 'eventListeners' : {
86+ 'processCompleted' : querySuccess ,
87+ 'processFailed' : queryFailed
88+ }
89+ } ) ;
90+ gridCellQueryService . processAsync ( gridCellQueryParam ) ;
91+ } else {
92+ widgets . alert . showAlert ( resources . msg_geographicPosition , false , 240 ) ;
11493 }
11594 }
116- document . getElementById ( "queryresult" ) . innerHTML = str ;
117- }
11895
119- function queryFailed ( evt ) {
120- console . log ( evt ) ;
121- document . getElementById ( "queryresult" ) . innerHTML = evt . originResult . error . errorMsg ;
122- }
96+ function mapClicked ( evt ) {
97+ var pixel = new SuperMap . Pixel ( evt . clientX , evt . clientY ) ,
98+ lonlat = map . getLonLatFromPixel ( pixel ) ;
99+ addFeature ( lonlat ) ;
100+ query ( lonlat ) ;
101+ }
123102
124- widgets . alert . showAlert ( resources . msg_gridQueryNote , true , 400 ) ;
103+ function addFeature ( lonlat ) {
104+ pointLayer . removeAllFeatures ( ) ;
105+ var point = new SuperMap . Geometry . Point ( lonlat . lon , lonlat . lat ) ;
106+ var feature = new SuperMap . Feature . Vector ( point ) ;
107+ pointLayer . addFeatures ( [ feature ] ) ;
108+ }
125109
126- </ script >
110+ function querySuccess ( evt ) {
111+ var str = resources . text_gridQueryResult ,
112+ result = evt . result ;
113+
114+ for ( var objName in result ) {
115+ if ( result . hasOwnProperty ( objName ) ) {
116+
117+ str += `<span>${ objName } :${ ( result [ objName ] instanceof Object ? [ result [ objName ] . x , result [ objName ] . y ] : result [ objName ] ) } </span>` ;
118+ }
119+ }
120+ document . getElementById ( "queryresult" ) . innerHTML = str ;
121+ }
122+
123+ function queryFailed ( evt ) {
124+ document . getElementById ( "queryresult" ) . innerHTML = evt . originResult . error . errorMsg ;
125+ }
126+
127+ widgets . alert . showAlert ( resources . msg_gridQueryNote , true , 400 ) ;
128+
129+ </ script >
127130
128131</ body >
132+
129133</ html >
0 commit comments