šŸ—ŗ Mapbox Maps - Total revamp of one of the most popular Bubble plugins from Zeroqode

Thanks @ZeroqodeSupport, I’ve been able to save the coordinates of the drawn polygon and use them in the ā€˜draw line’ action later :slight_smile:

I have just read that the point in polygon feature doesn’t work if you draw the polygon using the ā€˜draw line’ action.

Can we please have the plugin updated to allow the point in polygon check from a ā€˜draw line’ action? Or even not need to use draw line, just enter polygon coordinates and the point to check. I think this would be the most common use case rather than the user drawing the polygon and checking the point from that - mostly you would want to have the user enter an address and then the app checks it against saved coordinates.

Hello, @equibodyapp
Thanks for your suggestion :pray:

Please note that you can draw the polygon only by using the ā€œDraw lineā€ action. Also, this feature is working properly now. In case you have faced any issue with the feature - please provide us with some details on this matter.

Thank you for this suggestion. We will discuss the possibility to add this feature for future plugin updates. We just need to see how feasible it will be now.

We will notify you in case this improvement will be created :pray:

Best regards,
Zeroqode Support Team

I tried use de google places api who returns a list of places with lat, long and name, and I try use this data to create a list of markers, my source is provided from google places api

Hello, @bubble40
Thanks for these details.

Unfortunately, but extracting the coordinates and using them as a Marker’s Data Source directly is not a possible option for the plugin.
The only way to use the coordinates for the marker is to store them in the DataBase and after it to do a search through the required data type.

Sorry for this inconvenience.
Best regards,
Zeroqode Support Team

Hello, @equibodyapp
Thanks for your patience.

By this message, we should notify you that the plugin was upgraded, as per your request. Now, is added an action for checking the intersection of a point with a polygon.

Please upgrade the plugin to the latest version once again (Version: 1.40.0) and just try it :slightly_smiling_face:

Hope you will be happy with this improvement.
Best regards,
Zeroqode Support Team

Thank you!!! :slight_smile:

1 Like

Hey @ZeroqodeSupport @ZeroqodeTeam @levon, I can update everyone here that I’m currently using a feature from Mapbox called point-in-polygon, and I’ve added it through API connector to perform a request if Mapbox center {lon},{lat} is within a {tileset_id} :

The performance and response is very good, instantaneous with API call that is used as DATA but it consumes request on my Mapbox Account abnormally fast, probably because of my use case:

1 - Set Center Mapbox with current geographic position lng/lat
2 - Get Mapbox Center Address
3 - Browse map/ dragging map around to place a new center
4 - Read if center point is in a polygon
5 - Show a button to continue if map center point is in a polygon.
6 - No markers needed since I’m displaying an image centered on the screen over the map in new responsive engine.

But the Point-in-polygon API is running all the time while moving/dragging the map and changing the center coordinates.
I tried changing how the API is used from Data to Action to run it in an event so here comes my question:

Can you implement or can I somehow accomplish something like Mapbox element Pressed/Released for both mouse and touch in order to run Bubble Event when map browsing has ended so I can save on abnormal API request via actions instead?

I would also contribute with many other info around this plugin, I also need more features soon and I’m willing to offer a small budget to expandi the plugin Actions, Events and Geocoder accuracy.

Thanks in advance!
Nebo

I found a way to run my API call used as action within an event and save on requests used as data:

  • When event condition is true run API action (every time)
  • Event condition when an icon element is visible
  • Icon element hidden by default (also transparent color) with condition to be visible when map element is pressed

This solves the movement/dragging on the map and even zooming on touch devices while pressing but this does not solve zooming on mouse wheel.

Zooming out on mouse wheel results the map center coordinates to quickly fall outside the Tileset/Dataset/Polygon/bbox… and currently cannot be checked with an action without better control over zooming.

I suggest the following upgrade to this Mapbox plugin in order to have full control of camera related to map center position:

1 - Toggle rotation action (already implemented)
2 - Get current rotation value from MapBiox element
3- Toggle tilting action
4 - Get current tilting value from MapBiox element
5 - Toggle zooming action
6 - Get current zoom value from MapBiox element

Hi @kalinovic.nebojsa, thanks for your suggestions.

We will pass them to the developer team, in order to check how feasible would be to add them in future plugin updates.
In case any of the features will come to live, we will let you know :slightly_smiling_face:

Thank you for your proposal. So far we don’t create plugins for users or do plugin customization services, mostly we develop them by following the market demand. Sorry about that.

Regards,
Zeroqode Support Team

1 Like

@ZeroqodeSupport Way extraordinarily! Is it possible to direct and navigate with your current geolocation to the end point including voice recognition?
Screen Shot 2021-11-29 at 3.26.20 PM

Hi @aldevelops, thanks for reaching out.

Theoretically, this might be possible to implement but would require from your side an advanced Bubble skill for setup and research on the desired setup.
Also, you need to take into consideration that each implicated service/element (Bubble platform, Mapbox API requests limit, used device, browser capacities, etc) has its own restrictions that might influence the use case. Voice Recognition or Voice guidance feature in this case would also require another plugin to be used.

Hope it helps in a way. In case there is anything else that we can help with about our plugin, please let us know :wink:

Regards,
Zeroqode Support Team

1 Like

I will. And thank you for your reply and introducing the great plugin.

1 Like

Hi @aldevelops, you’re welcome :hugs:

One more hint: before purchasing a plugin (to see if it would fit your project requirements), you can try the subscription model for it.
For example, if you subscribe to a plugin for one day you’ll end up being charged for this plugin fee / 31.

Take care :wink:
Regards,
Zeroqode Support Team

1 Like

100% thank you for your clarification, anyway the price of the one-charge is fine and worth a purchase. The map I have implemented is connected to Waze and google maps and definitely, in improvement, I will check your plugin out.

Sincerely,
Al

1 Like

Zeroqodes plugin is wonderful for most use cases i found, I had a situation similar to you however and needed to load lots of data in real time on a map, and i accomplished what your asking about by using firebase as a database and mapbox gl js code dropped directly into an iframe within bubble. If your trying to do advanced mapping with lots of points, (for example my map currently has around 2 million clickable points) which are all interactive meaning you can add notes in real time to a point on a map and change status’s of the feature and even colors of the icons. I researched and found something called geohashing inside of google firebase, that takes coordinates and places them on a map when its loaded, I then used Mapbox GL JS (you can copy and paste a basic source code from mapbox website)… and then had someone write an API using basic javascript and added it to the mapbox gl js code so the map can interact with firebase data (your coordinates you stored) which are then served using geohashing, All thats left is to paste your code within an iframe inside of bubble and it works awesome. I went the route originally of using bubbles database to serve the data however i was getting hard limits on pulling large lists (you can only paginate 100 points at a time). If you don’t need interactivity, another option is to use mapbox’s studio which is super easy to use to create a no code version, import your data, and place that within an iframe. Hope that helps.

2 Likes

This is very interesting! Thanks for sharing!

I agree - the plugin is great for 80% of what I want.

I have a couple of use cases where this would be what I’m looking for (not 2 million but potentially hundreds) and interactivity would be great as well.

I might reach out when I’m ready to implement :slight_smile:

Hi there,
I have an issue with the searchbox for geographic locations after starting to use the mapbox plugin.
Anybody else who faced this issue?
The use case that I’m using it for is simply to make changes to a thing where the field is an address.

I will appreciate your help.

Hi! Could you please share the video again?

I tried to do the same thing but couldn’t manage to do it.
I am facing the problem that I don’t see the option to refer to a marker as a data source.

Hi @umit1, sorry for the delayed reply (due to the weekend).

To be able to help you with this issue, please share (here or in DM) a screencast or screenshots with your use case (related workflows setup).

Sure, here it is: https://www.loom.com/share/c9472fec330745c6948322db6634f385

Also, the page mentioned in the video: zeroqode-demo-08 | Bubble Editor

Looking forward to your reply.

Regards,
Zeroqode Support Team

Hello!
Please tell me, is it possible to filter markers on the map depending on the selected category?
I am making a delivery application and the user can click on the desired icon (category) and only markers of this category should remain on the map.
I’m trying to do this through ā€œfilteredā€, where the category is equal to state (category add in state when I click on the category icon). However, the plugin either throws an error, or the filtering does not work. Can I solve this problem? This is an important function for me. If something remains unclear, please let me know.
Thanks advance!