We’re rewarding the question askers & reputations are being recalculated! Read more.
11

Here is some code I'm successfully using to toggle a Fusion Tables layer in one of my maps: google.maps.event.addListener(map, 'zoom_changed', function() { zoomLevel = map.getZoom(); if (zoomLevel >= minFTZoomLevel) { FTlayer.setMap(map); } else { FTlayer.setMap(null); } }); it looks almost identical to your code, apart ...


11

Clip sets the mask of the image outside the geometry with which you're clipping to zero. Note that clip() is a function on images (NOT image collections). On the other hand, filterBounds() passes elements of the input collection that have geometries intersecting the geometry with which you're clipping. If the images in the collection are global composites ...


7

check out this example here which uses arcgis service time geoprocessing service and google maps. if your points locate in US, u can use CreateDriveTimePolygons from ESRI here. you need to do is that write Input Location, Drive Times and format as json then execute your process. beside this you should check out similar ques.: Creating drive time polygons ...


7

You are filtering year in the correct way. This is how I'd do it: //Load and filter the Hansen data var gfc2014 = ee.Image('UMD/hansen/global_forest_change_2015') .select(['treecover2000','loss','gain','lossyear']); // list for filter iteration var years = ee.List.sequence(1, 14) // turn your scale into a var in case you want to change it ...


6

There is the Route360 API that also works with Google Maps. https://developers.route360.net/index.html It offers quiet a few functionalities. Including different modes of transportation or the intersection of polygons As well you can add a few hundred points at once and see the result: It works for most countries in Europe and North America


5

Disclaimer: I work for iGeolise You can use the TravelTime API to draw maps based on drive times here, it works for location-based searches (for consumer-facing sites for example) or one off maps. This example is for drive times from Norwich, UK. There are multiple polygons for 15 minute intervals from 15 mins - 1 hour, starting at midday. It uses lat/ ...


5

You can specify the property to use as the geometry by passing it as the second parameter to ee.FeatureCollection: var fc = ee.FeatureCollection('ft:1Eii75QFBlQcYILLBFsU6zv9LhgJLa8FPHNGSZijQ', "geometry")


4

Yes. You are correct. Currently the functionality to zoom/fit bounds does not exist for polygon or line data from fusion tables. You will need to use the GVIZ (Google Visualization API) and the geoxml3 parser. I used some of the code from the following applications. One is a polygon example and the other is a line/arc example. There is a post in the Google ...


3

You might want to re-think the overall approach. Displaying that many symbols is usually not a good idea, for performance and useability reasons (the labels would either over-print each other, or be so small as to be unreadable). Perhaps only show numbers when zoomed in to a certain scale (eg street level). You could also implement clustering to show "hot-...


3

Unfortunately none of the google api's support this query beyond simple rectangles or circles. Your options are to pre-process using QGIS or the OGR API. Or you can implement the ray casting algorithm in JavaScript. Also - check out the source of this example: http://www.geocodezip.com/v3_collection-map2e_FT.html If you implement the algorithm yourself ...


3

What you describe is finding the best route along a network which has each segment assigned an impedance representing risk of accident. For this you could use a license for the Network Analyst extension to ArcGIS for Desktop. A good place to start reading about this topic is here. Having the route based on your assigned impedances solved using Google ...


3

While I can't test it, your VRT is different to that specified here: http://www.webrian.ch/2011/09/google-fusion-tables-in-qgis.html Try this: <OGRVRTDataSource> <OGRVRTLayer name="ps"> <SrcDataSource>GFT:refresh=<MY_VERY_LONG_TOKEN_IN_HERE></SrcDataSource> <SrcLayer>1kQSkw-...


3

It is trivial with ogr2ogr and SQLite SQL dialect. Next examples write 10 first lakes into one KML file and next 10 lakes into another KML file ogr2ogr -f kml batch_1.kml lakes.shp -dialect sqlite -sql "select * from lakes limit 10" ogr2ogr -f kml batch_2.kml lakes.shp -dialect sqlite -sql "select * from lakes limit 10 offset 10"


3

You can use the Proj4 converter: http://trac.osgeo.org/proj/ Yes, it is a converter but you can convert bulk coordinates. Create a simple text file (let's say sweref99.txt) with the coordinates, e.g. 606905.22 6970515.93 635765.54 7223101.41 In order to convert all coordinates from this file the command is like this: cs2cs +init=epsg:3006 +no_defs +to +...


3

To solve my issue, I had to use the debug option in the command ogr2ogr --config CPL_DEBUG ON -f GFT "GFT:access=<authorization token>" ~/countries.shp The returned output was Shape: DBF Codepage = LDID/87 for countries.shp Shape: Treating as encoding 'ISO-8859-1'. OGR: OGROpen(france.shp/<persistent_session_code>) succeeded as ESRI Shapefile. ...


3

For a single (and big) table it's just one more piece of the mamushka: var mapfunc = function(feat) { var geom = feat.geometry() var addProp = function(img, f) { var newf = ee.Feature(f) var date = img.date().format('yyyy-MM-dd') var bands = img.bandNames() var value = img.select(bands) .reduceRegion(ee.Reducer.first(), geom, 30) ...


3

In your case you have just a single part Polygon, I give you a solution for both, single and multi part Polygons: // coordinates is a list of list (each list is a part) var coordinates = geometry.coordinates() // map over coordinates, each element is a part (list) var fg_points = coordinates.map(function(part) { // map over current part, each element is ...


3

You should be able to import GeoJSON geometry objects directly. Here is an example of a MultiPolygon: feature_geometry = { 'type': 'MultiPolygon', 'coordinates': [[[ [-90, 24], [-90.001, 40], [-90.001, 39.001], [-90, 31.001], [-90, 27] ]]] } Also, as mentioned in the comments, you can directly convert geojson into a shapefile using ...


2

You have to export your table to csv Maybe use google refine to improve the data of your articles csv Import csv in a Fusion Table Geocode the table, its a feature in the user interface, you Geocode by the column "Article text" where the addresses are Click on the map view, and you could view the points, some of them will be missing because of an ...


2

You can wrap the Fusion Table in the Open GeoServices REST api and make it look like a native AGS MapServer or FeatureServer. That's pretty much what Arc2Earth Sync will do for you automatically for your Fusion Tables or Earth Builder layers (in addition to synchronizing with a local FGDB) The FT table you described above has an ID of 1236296 AGS ...


2

You can make a custom tiled layer that makes direct requests for FusionTables tiles, though you'll need to play with the URL to figure out what X/Y/Z parameters are in the URL, and you'll need to check the T&C to make sure you're not breaking them. I had it figured out a couple months back, but I honestly cannot remember what X/Y represent. Z is the ...


2

The official answer from Google's Fusion Tables team is that this is not currently possible. I've added an enhancement request for this.


2

This seems to work - it doesn't seem to be a problem to call setMap if it's already set: google.maps.event.addListener(map, 'zoom_changed', function() { zoomLevel = map.getZoom(); if (zoomLevel >= minZoomLevel) { FTlayer.setMap(map); } else { FTlayer.setMap(null); } }); Thanks to Chris Broadfoot from the GM team for this ...


2

You can get your all your table data and find the bounds from the response: var bounds = new google.maps.LatLngBounds(); for(i = 0; i < numRows; i++) { var point = new google.maps.LatLng( parseFloat(response.getDataTable().getValue(i, 0)), parseFloat(response.getDataTable().getValue(i, 1))); bounds.extend(point); ...


2

For this many features, you will want to render them into raster tiles. My recommendation would be to evaluate products that serve up Web maps like MapServer, GeoServer, Mapnick, etc. MapServer has C# bindings, but you could likely just use the standard WMS or CGI interface. Depending on your specific use case, you could look at caching with something ...


2

As GeoSpatialpython.com mentioned, javascript based ray-casting is a good choice. Here is a script from tparkin : https://github.com/tparkin/Google-Maps-Point-in-Polygon/blob/master/maps.google.polygon.containsLatLng.js It extends the google maps api v3 polygon class with a new method called containsLatLng which accepts a single LatLng object, which ...


2

Recent updates to Google Maps v3 allow you to change the symbol using the API (from fusion tables) For example 'gold star' var goldStar = { path: 'M 125,5 155,90 245,90 175,145 200,230 125,180 50,230 75,145 5,90 95,90 z', fillColor: "yellow", fillOpacity: 0.8, scale: 1, strokeColor: "gold", strokeWeight: 14 }; var marker = new google.maps....


2

I know this post was from a while ago, but we ran into the same problem so we went off and built it as a premium service for our Google Maps enterprise offering. Needless to say it is a paid solution, so I am not going into a marketing pitch on a technical forum. However, this was one of the first posts that I found when I was actually looking fora ...


2

If you don't mind a 3rd party app, you could try Arc2Earth Sync It will connect to Fusion Tables on your account's behalf and make it look like an ArcGIS Feature service. It can also use your ArcGIS.com credentials to create/update web maps so your FT tables show up automatically in the ArcGIS iOS/Android apps (or any of the ArcGIS Online apps/apis). Check ...


2

Google Fusion tables is pretty limited beyond basic use cases. May I suggest bringing your data to CartoDB, this is exactly made to resolve level of problems.


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