-
-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bings Maps geocoding control #498
Comments
As an alternative, I'm studying what can be done using the Overpass Turbo API, which queries OpenStreetMap data and requires no additional licenses / keys), eg: 👉 https://overpass-turbo.eu/s/1BKA 👋 Raruto |
I fear that OSM's database is not advanced enough to replace that of Bing or Google The customer is interested in commercial activities and I believe that the data on OSM is not that rich I would ask you to wait for a customer evaluation before delving into Overpass Turbo API |
@leolami Ok. Although they are not currently displayed in the search results, the Nominam API can also return desired data (eg. name and type of POI, and others depending on the amount of information available on OSM). However, in the latter case, it should be noted that there is maximum number of 40 results per request (ie. with no "pagination", which may cause annoyance at lower zoom levels):
Related info: |
Hi @Raruto , I did some tests with Galt which reports the following example cases of errors: If I type the location name Lumen Field, Bing and Nominatim locate the stadium in the map extent, but if I type the address: 702 S Jackson St, Seattle, WA which is also in the extent Nominatim finds it, but not Bing. If I text on the Bing online map the search works. Also, is there a way to only find addresses within a certain distance of the current extent, such as 100km, to reduce false matches that take you far from your current area of interest? I thought that in this regard we said that the search had to work only on the displayed area, can you verify? https://dev.g3wsuite.it/it/map/iim/qdjango/234/ Thanks |
@Raruto It seems return only Local Business activities |
@leolami bing provides two different APIs, it cannot be done with a single call: • Bing Local Search (implemented in #505)
• Bing Location by Query
Currently the two providers work in a different way:
In future releases, to avoid further confusion, I would consider leave the end user free to decide which behavior is best suited to them (eg. a checkbox like 👋 Raruto |
- add folder `src/assets/gecoding-providers` - extract `bing` into two new providers → `bing_places` and `bing_streets` (ref: #498 (comment)) - new gulp task `geocoding-providers`
* overall code cleanup + draft provider class: `Bing` * missing variables * Misspelling v-placeholder directive. Fix with right v-t-placeholder * Add comments and remove unused code * Comment and what TODO * add `name` and `type` * comment * remove helper funcion: `_createElement` * un-destructure * clean up query * move guard condition * set default options inside geocoding control * simplify default `options` assignment * dynamic extent * remove nested classes (replaced by static: `GeocodingControl.providers`) * move folder: `src/core/utils/` → `src/utils/` * todo * add `provider` attribute * move class: `OLControl` into `ControlsFactory` * add `pushin.svg` * PoC reusable `<context-menu>` component * watcher * comments * first attemp to handle multiple markers on map * move event listeners into: `MapControlGeocoding.vue` * make it vue - move DOM logic within `src\components\MapControlGeocoding.vue` - remove `src/components/MapControlNominatimResults.vue` * make use of `v-for` for list rendering * new function: `GeocodingControl::getExtentForProvider(provider)` * extract function: `_showResults(results)` + remove `cssClassess` * styling * remove unusued options * unusued variables * sort css * move class: `ControlsFactory` into `src/app/gui/map/mapservice.js` * remove inner factory object * comments * bind event value to: `_onItemClick($event, item)` * update index * Add @click.stop to avoid to propagate click event. Fix issue on search coordinates with a specific epsg * ✨ Add MarkersPanel.vue to show markers result on sidebar * Delete unused file: `src/app/core/map/mapsregistry.js` * Remove test MarkesPanel (sidebar panel) * Handle add remove marker feature on click result item using __uid proerty from search * Add marker layer to query results * Add MapControlGeocodingMarkerItem.vue and MapControlGeocodingMarkerItems.vue to show marker information to result content * Remove console.log * add space * Add action to marker layer on query result * Add reset button markers * Rename Marker components * Add MarkersEventBus * In case of layer.id __g3w_marker (layer use to stor markers) not add action to feature results * Add button on geoconding control to remove all markers and show marker info on result content. Change css * Use MarkerResultFeature on QueryResuls.vue component * Fix pass item.__uid * Add open (plus) close (minu) marker feature show hide info data * Add more than one markers action (zoom, remove) * Add checkbox icon to set add or not marker. Liste vents form MarkerEventBus * ✨ Edit (add) marker to Point layer * ✨ Add toggle visibility of marker layer on map * Fix visibility layer whe non marker are on map after remove * attempt to get rid of `<marker-result-feature>` * Chen geometry type of editable layer point and if is MultiPoint convert feature geometry to pass to editing api function * attempt to dump data using: `QueryResults.vue` * add showdat if to open close body marker * move marker result feature component * jsdoc * Remove pencil icon tool and leave select for editing * Fix show at least maxSubsetLength if layer is not __g3w_marker * pretty print json attributes * rename variable: `maxSubsetLength` → `MAX_SUBSET_LENGTH` * code format * comments * remove ternary condition * comments * ensure boolean return type: `isExternalLayerSelected` * remove short circuit condition * draft reusable queryresults * Add addActionsForLayers * add `is_results_panel_open` * create component: `QueryResultsActionChooseLayer.vue` * Add queryresults.state.actiontools[QueryResultsActionChooseLayer.name] = queryresults.state.actiontools[QueryResultsActionChooseLayer.name] || {}; * listen for: `removeFeatureLayerFromResult` * remove commented code * ♻️ Move feature tools action on top of atrributes. Add new component QueryResultsHeaderFeatureActionBody * remove `markers-visibility-layer` + move css stuff `g3w-mapcontrols.less` * Reomve contex menu from Map.vue * make it scoped * Fix edit amrker feature * remove console.log * add css var: `--skin-color` * Uncomment toggle marker layer visibility. Handel show hide marker list query result * css clean up * code clean up * Change style * sticky header * Fix open close marker results * attempt to use: `addCurrentActionToolsLayer` * missing config * Fix zoom to relation feature whe click on attribute table of alphanumeric layer with a geomety layer relation * attempt to simplify action registration * Pass config object to component actiontools * Disable control during editing * Clean code * ♻️ Set action tool configuration * Clean code * second attempt with `addCurrentActionToolsLayer` * Fix in case of iframe, move show/hide sidebar on top * todo * formatting * config label * decrease border left * Show edit tools only if there are point geometry layer editable * Remove spaces * Add remind to add translation * Hide selection layer tool button if layer is g3w marker * Update search_from_bing.js * attempt to open sidebar panel on open * workaround for click event listener * hide interal properties + include raw data in results * restore subset for g3w marker * check for single editable point layer * sort attributes * remove margins * count selected features * new utils: `flattenObject` * Add Multipoint to is3DGeometry types * Fix editing feature creation to pass on addLayerFeature editing api method * Add condition to not sho editing action onb marker when editing panel is open * enable/disable buttons on editing * Handle configuration mapcontrol from server has object (key: neme/type of mapcontrol, value: configuration) * disable control instead of clearing results * Set items aligned to center * comments * vertical spacing * wrong guard * unified common controls factories * Clean code * Space * call queryresultservice removeFeatureLayerFromResult method on clearMarkers * remove internals * simplify geoutils calls within `_editItem(layerId, feature)` * wrong remove item uid * keep markers results open when * alias without `raw_` prefix * replace `raw_` field prefix with provider name * rename internal prop: `__add` → `__selected` * add flag: `is_clearing` * i18n * replace directive: `v-html` → `v-t` * add i18n: `mapcontrols.geocoding.nolayers` * reduce delta * Fix search autocomplete * Chnage markers layer style to style function * Add marker for search in lon lat * Get configuration geocoding from server and pass it to provider, for example url * Clean code * attempt to use computed: `has_providers` * replace directive: `v-show` → `v-if` * add some help texts (eng only) * remove unused child' class * handle multiple tabs and subtabs color * wrong merge * Align skin tabs color base on blue * increase clickable marker area (pushpin icon) * Add common less g3w-tabs-form-query file to set common tab css rules * Change css less color of tabs * remove `v-else` * tab group title more contrast between background color e text color * remove console.log * attempt to increment contrast * Set group-title brackground tab * Fix wrong assignment splice().concat( * Add comment and remove logicop on filters string when value is single value and not an array * set options.value instead of options.key to create filter for valuerelation widget * Add event set-layerzindex to listen when a new layer is add to map and set a zindex * Listen set-layer-zindex map service event and set marker layer on top * Clean code * Clean code * Set footer map control more dark * Fix change mouse position map coordinate due refactor * Scale select map control arrow more dark * Clean code and add shadow to logo image g3w * Fix search value map dependency input * Fix misspelled method * Add field type bigint * Show previous field label and values only if layer result has more than one feature. In this case when info is not collapsed, hide header previous fields and values * Clean code * Remove tooltip after copy url * set tooltip width * Use v-t-tooltip directive to show tooltip on query feature action * closes: #501 - add folder `src/assets/gecoding-providers` - extract `bing` into two new providers → `bing_places` and `bing_streets` (ref: #498 (comment)) - new gulp task `geocoding-providers` * docs * comments * mispelling * add option: `icon` * replace `(new Error).fileName` → `document.currentScript.src` * mobile css * unusued rules * Remove console.log * Fix create right filter in case of input.attribute is not an array. Need to add logic operator * Add formatter 0 based on g3w-suite/g3w-admin#671 * Clean code * Add reference usage --------- Co-authored-by: volterra79 <boccacci.francesco@gmail.com>
Checklist
Motivation
As per 2020's Google Maps Terms,
it is no longer allowed to use google maps in custom applications (eg. Open Layers)
Suggested solution
Alternatives considered
Bing Maps
Arcgis
The text was updated successfully, but these errors were encountered: