Hot answers tagged

14

Try this instead: function getJson(simp){ //Removed unneeded arguments here var url = 'file' + simp + '.json'; map.removeLayer(geojsonLayer); //geojsonLayer.clearLayers(); I don't believe this needed. $.getJSON(url, function(data){ geojsonLayer = L.geoJson(data, { style: defaultStyle, onEachFeature: ...


11

Use the OpenLayers.Format.WKT class. Try replacing this line: var fea=new OpenLayers.Feature.Vector(data); //this doesn't work For this line(if data.d = "POLYGON((516000 ..."): var fea = new OpenLayers.Format.WKT().read(data.d); Here's an example on how to use it: http://dev.openlayers.org/examples/vector-formats.html


8

GeoServer has its own convention for JSONP callbacks, which is described here (coudn't find it mentioned in the official docs). So I quickly hacked a jsfiddle showing how you can use it with jQuery, just remember to set the url, workspace and layers so that they point to your geoserver.


8

You have to explicitly specify a width and height to your #map container : In css add : #map { width:600px; height:400px; } Or in HTML : <div id="map" style="width:600px; height:400px;"> And you will see correctly your map!


6

You are almost there. Another .each for val.properties should work: $.each(data.features, function (key, val) { $.each(val.properties, function(i,j){ items.push('<li id="' + i + '">' + j + '</li>'); }) });


6

You have two options: hook into the create event to adjust layer opacity as sliders are created provide a global cfg array so that layers are already init'ed to same value as the sliders The first solution is simple, just provide a create: function(event, ui) { ... } as an init option to the slider like the following: $( "#slider1" ).slider({ [...] ...


5

The C# part of this question is a duplicate of Is there a free .Net library to convert OSGB36 to WGS84? The answers list two free libraries.


5

What is written above will loop through each element in each JSON object. Those are JSON objects so you want to treat them as the objects geometry and properties then simply reference them using dot notation. $.each(data.features, function (key, val) { geometry = val.geometry; properties = val.properties; alert (properties.place); });


5

Essentially, you are just passing an array to the autocomplete widget. If the data is in a map or feature service, query for the data from the service. If you start with a table in your mxd/msd that contains the data, when you publish it, you will get a REST endpoint for the table to query for in the same way. Next, parse out the data and push onto an array ...


4

To complete unicoletti's answer. You can have a look on opengeo workshop. There is an example combining openlayers and Jquery UI slider. The full OL tutorial is available here.


4

First of all, OpenLayers 3 doesn't have a LayerSwitcher control. In OpenLayers 2 however, there is a .olControlLayerSwitcher style which can be animated by JQuery without any further styling options. You can use JQuery's animate function for this task: $(".olControlLayerSwitcher").animate({top: "55px"}); There is no need for the 30px animation, except if ...


4

Normally you would associate a marker with an object or at least an Identifier (an Objectid) by simply defining a variable for it on the marker object. Leaflet also uses an internal id (marker._leaflet_id) for each marker by default which you can use for your purposes. It depends mainly on how you create your markers and its associated sidebar divs so that ...


4

Here's an example that accomplishes what you want (I think): http://jsfiddle.net/tschaub/Lkgx0qaa/ I've created a map with three layers, only the first one (named roads) is visible: var roads = new ol.layer.Tile({ source: new ol.source.BingMaps({key: key, imagerySet: 'Road'}) }); var clipped = { imagery: new ol.layer.Tile({ source: new ol.source....


3

Use .on() instead of .live() - the element is not onpage when you bind your event handler, so you'll need to bind it dynamically. $('click', 'a .smallPolygonLink', function(e){ console.log("One of the many Small Polygon Links were Clicked"); });


3

For anybody interested in how to correctly use ajax and return jsonp from geoserver this is how its done: var url = "http://localhost:8080/geoserver/Common/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=cite:markers&outputFormat=text/javascript&format_options=callback:getJson"; $.ajax({ ...


3

Thanks unicoletti, the callback change worked. I now have: $.ajax({ url: "http://localhost:8090/geoserver/cite/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=cite:markers&maxFeatures=50&outputFormat=json&format_options=callback:processMarkers", dataType: "jsonp", }); and it returns the json, which I successfully ...


3

Is this for UTM zone northing/eastings? I wrote a utility for that in javascript: http://cambertx.com/utm/


3

Yes, many people do use JQuery Mobile together with their choice of mapping API. I use both google maps and ESRI's JavaScript web mapping APIs with JQuery Mobile. If you are planning on doing it with the Google Maps v3 API here is a great set of examples.


3

Please put your code, or a short version, at http://jsfiddle.net/ so we can play with it. Also try: <div id="map"></div> <div id="makeMeDraggable"></div>


3

The "map.setExtent()" method should work in this case. This method will take your coords and center the map over them. else if (RegionID == 2){ var xmin = '-9323482.962110244'; var ymin = '4350184.153764758'; var xmax = '-8922341.437669657'; var ymax = '4557481.374474147'; var regionname = 'Far Sourthwest'; map.setExtent(xmin, ymin, ...


3

I really appreciate all the suggestions, but I never got the esri/dijit/Popup to be moveable and still be able to highlight and copy the text inside. Instead I used a jQuery Dialog, which I figured would be the case but it just took a while to get all the experience needed to make it work the way I wanted it to. My boss and I both worked on it and we still ...


3

According to the code, getFeaturesAtCoordinate needs a method containsXY on the geometry class to works. But this function is not defined for point geometry and the parent class return always falsesee here. May be the use of ol.source.Vector.getClosestFeatureToCoordinate is more appropriate for a list of point features. Or you can provide a buffer around ...


3

What I've done is set a single click event for the map and checked for features at that location like below. This seems to work well. map.on("singleclick", singleClickCB); function singleClickCB(event) { var feature = map.forEachFeatureAtPixel(event.pixel, function (feature) { return feature; }); if (feature) { ... if (feature.get("...


3

If you still have the reference to your marker, simply use marker.options to access the options object assigned to it. In your case: marker.options.draggable.


3

If my understanding is correct, in fact you remove and re-load your exp_Fields GeoJSON data into a new GeoJSON layer so that it comes with a new fill color? In that case, why not simply changing the style of your GeoJSON layer, rather than remove and re-load? Use the setStyle() method. Changes styles of GeoJSON vector layers with the given style ...


3

You can initialize your Borne geoJson layer without any data but with a styling function specified in the options: var Borne = new L.GeoJSON(false, { style: function (feature) { return {color: feature.properties.color}; } }); This style will be applied to any data you add later with addData.


3

Your code is a bit complicated concering your callback:loadFeatures function. Within the function you add features for both requests to both sources. Try to distinguis them using two separate functions and see if this is your case. var geojsonFormat = new ol.format.GeoJSON(); var vectorSource = new ol.source.Vector({ loader: function(extent, resolution, ...


2

See this DEMO. I've recreated your code in the DEMO and it works fine. Without the complete source it's hard to tell what is causing your problem. Your code was throwing an error and was easily fixed by doing what Vadim mentioned: "switch last 2 statements". I have a feeling it has something to do with the source of rPoly(reading from KML). Because that's ...


2

Switch last 2 statements. Add to map first, then activate.



Only top voted, non community-wiki answers of a minimum length are eligible