<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>Create a Map</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <!-- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.6/js/dojo/dijit/themes/tundra/tundra.css"> <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.6"></script> --> <link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.5/js/dojo/dijit/themes/tundra/tundra.css"> <link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.5/js/esri/dijit/css/Popup.css"> <script>var dojoConfig = { parseOnLoad: true };</script> <script src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.5"></script> <script type="text/javascript"> dojo.require("esri.map"); // dojo.require("esri.graphic"); // dojo.require("esri.geometry.Point"); // dojo.require("esri.symbol"); dojo.require("dijit.form.NumberTextBox"); dojo.require("esri.tasks.geometry"); var myMap, myTiledMapServiceLayer, gsvc; var projX, projY; function init() { myMap = new esri.Map("mapDiv"); myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer ("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer"); myMap.addLayer(myTiledMapServiceLayer); } // geometry Service gsvc = new esri.tasks.GeometryService("http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer"); function CreatePoint() { var x =dijit.byId('tXCord').value; var y =dijit.byId('tYCord').value; // alert(x); if((!dijit.byId('tXCord').value || !dijit.byId('tYCord').value)) { alert("Please enter X and Y co-ordinates"); return false; } else { myMap.graphics.clear(); // var pt = new esri.geometry.Point(-100, 40, new esri.SpatialReference({'wkid': 4326})); var pt = new esri.geometry.Point(x, y, new esri.SpatialReference({wkid: 4326})); var wm = esri.geometry.geographicToWebMercator(pt); //var symbol = new esri.symbol.SimpleMarkerSymbol(); // var graphic = new esri.Graphic(esri.geometry.geographicToWebMercator(pt), symbol); // var projPt = new esri.geometry.Point(projX, projY, new esri.SpatialReference({'wkid':32629})); // convert client side var graphic = new esri.Graphic(wm, // geometry new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_SQUARE,10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255,0,0]),1), new dojo.Color([0,255,0,0.25])), // symbol {'title': 'Test Point Location', 'content':'Your point feature'}, // attributess new esri.InfoTemplate('${title}', '${content}') ); myMap.graphics.add(graphic); var outSR = new esri.SpatialReference({wkid:102113}); gsvc.project([pt], outSR, function(result) { dojo.byId('results').innerHTML = "X:" + ' ' + result[0].x.toFixed() + ',' + "Y:" + ' ' + result[0].y.toFixed(); projX = result[0].x.toFixed(); projY = result[0].y.toFixed(); alert(projX + "," + projY); }); myMap.centerAndZoom(pt, 10); } } dojo.addOnLoad(init); </script> </head> <body> <div id="mapDiv" class="tundra" style="width:900px; height:600px; border:1px solid #000;"></div> <h4>Work flow:</h4> <ul> <li>Create a map.</li> <li>Add an ArcGISTiledMapServiceLayer.</li> </ul> <label for="txCord">Enter X Co-ordinate(Longitude):</label> <input id="tXCord" type="text" data-dojo-type="dijit.form.NumberTextBox" name="Latitude:" required="true" /> </br> <label for="tYCord">Enter Y Co-ordinate (Latitude):</label> <input id="tYCord" type="text" data-dojo-type="dijit.form.NumberTextBox" name="Longitude:" required="true" /> </br> <input type="button" onclick="CreatePoint();" value="ZoomtoXY"/> <div id="results"></div> </body> </html>
Solved! Go to Solution.
//create a WGS84 geometry var pt = new esri.geometry.Point(x, y, new esri.SpatialReference({wkid: 4326})); //because our tiled map service is 4326, we can add our new point directly to the map var wm = esri.geometry.geographicToWebMercator(pt); var graphic = new esri.Graphic(pt //... ...
/////////////////****************************//////////////////////////////////////// var gp = new esri.Graphic(pt, new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_SQUARE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25]))); myMap.graphics.add(gp); /////////////////****************************////////////////////////////////////////
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>Create a Map</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <!-- <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.6/js/dojo/dijit/themes/tundra/tundra.css"> <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.6"></script> --> <link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.5/js/dojo/dijit/themes/tundra/tundra.css"> <link rel="stylesheet" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.5/js/esri/dijit/css/Popup.css"> <script>var dojoConfig = { parseOnLoad: true };</script> <script src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.5"></script> <script type="text/javascript"> dojo.require("esri.map"); // dojo.require("esri.graphic"); // dojo.require("esri.geometry.Point"); // dojo.require("esri.symbol"); dojo.require("dijit.form.NumberTextBox"); dojo.require("esri.tasks.geometry"); var myMap, myTiledMapServiceLayer, gsvc; var projX, projY; function init() { myMap = new esri.Map("mapDiv"); myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer ("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer"); myMap.addLayer(myTiledMapServiceLayer); } // geometry Service gsvc = new esri.tasks.GeometryService("http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer"); function CreatePoint() { var x =dijit.byId('tXCord').value; var y =dijit.byId('tYCord').value; // alert(x); if((!dijit.byId('tXCord').value || !dijit.byId('tYCord').value)) { alert("Please enter X and Y co-ordinates"); return false; } else { myMap.graphics.clear(); // var pt = new esri.geometry.Point(-100, 40, new esri.SpatialReference({'wkid': 4326})); var pt = new esri.geometry.Point(x, y, new esri.SpatialReference({wkid: 4326})); var wm = esri.geometry.geographicToWebMercator(pt); //var symbol = new esri.symbol.SimpleMarkerSymbol(); // var graphic = new esri.Graphic(esri.geometry.geographicToWebMercator(pt), symbol); // var projPt = new esri.geometry.Point(projX, projY, new esri.SpatialReference({'wkid':32629})); // convert client side var graphic = new esri.Graphic(wm, // geometry new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_SQUARE,10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255,0,0]),1), new dojo.Color([0,255,0,0.25])), // symbol {'title': 'Test Point Location', 'content':'Your point feature'}, // attributess new esri.InfoTemplate('${title}', '${content}') ); myMap.graphics.add(graphic); var outSR = new esri.SpatialReference({wkid:102113}); gsvc.project([pt], outSR, function(result) { dojo.byId('results').innerHTML = "X:" + ' ' + result[0].x.toFixed() + ',' + "Y:" + ' ' + result[0].y.toFixed(); projX = result[0].x.toFixed(); projY = result[0].y.toFixed(); alert(projX + "," + projY); }); myMap.centerAndZoom(pt, 10); /////////////////****************************//////////////////////////////////////// var gp = new esri.Graphic(pt, new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_SQUARE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25]))); myMap.graphics.add(gp); /////////////////****************************//////////////////////////////////////// } } dojo.addOnLoad(init); </script> </head> <body> <div id="mapDiv" class="tundra" style="width:900px; height:600px; border:1px solid #000;"></div> <h4>Work flow:</h4> <ul> <li>Create a map.</li> <li>Add an ArcGISTiledMapServiceLayer.</li> </ul> <label for="txCord">Enter X Co-ordinate(Longitude):</label> <input id="tXCord" type="text" data-dojo-type="dijit.form.NumberTextBox" name="Latitude:" required="true" /> </br> <label for="tYCord">Enter Y Co-ordinate (Latitude):</label> <input id="tYCord" type="text" data-dojo-type="dijit.form.NumberTextBox" name="Longitude:" required="true" /> </br> <input type="button" onclick="CreatePoint();" value="ZoomtoXY"/> <div id="results"></div> </body> </html>
//create a WGS84 geometry var pt = new esri.geometry.Point(x, y, new esri.SpatialReference({wkid: 4326})); //because our tiled map service is 4326, we can add our new point directly to the map var wm = esri.geometry.geographicToWebMercator(pt); var graphic = new esri.Graphic(pt //... ...