-
Notifications
You must be signed in to change notification settings - Fork 67
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
Display boundaries and borders #948
base: main
Are you sure you want to change the base?
Conversation
I tried to use the The situations where I think simplification should occur are:
What do you think? 🤔 |
It seems that some parts of the lines are not visible, possibly due to incomplete data being saved in the database. |
I think the boundaries should be simplified using materialized views in the sql database with I think that on the java side, we should probably add logic to build complex geometries corresponding to Boundaries which are not necessarily MultiPolygons. For instance, these geometries may be MultiLineString or GeometryCollection. There is probably some openstreetmap documentation reading to be made as I'm not sure how communities create boundaries. According to the wiki, all types are involved (nodes, ways corresponding to lines, ways corresponding to polygons, and relations). As the name suggests, the current implementation of the |
Thank you! 👍🏻 I’ll go ahead and implement it while reading through the document you provided. |
I’ve been quite busy lately, so this task has been delayed. |
@YongGoose No problem, same situation here with many deadlines. Looking forward for your contributions. |
After reading your comment, I tried adding
Could you provide a more detailed explanation? I’ve been spending some personal time studying the documentation for Thank you, as always! PS. I think I'll be able to dedicate more time next week. |
No problem. I hope the following will help clarify the steps. The natural layer is taken as an example. Geometry Validation and Storage: The current Java code is responsible for processing OpenStreetMap data to create valid polygons geometries for the ways and relations tagged with natural. These geometries are then stored in the PostGIS database without further simplification. This is the java class we discussed. Simplification in the Database: Instead of simplifying the geometries in the Java code, this is currently handled within the database. Materialized views are used to store simplified geometries. This allows to perform advanced operations (e.g. filtering, clustering, buffering, etc.) to merge nearby
Vector Tile Querying: The materialized views containing the simplified geometries are finally queried in the tileset.js file to generate vector tiles. The variable $zoom can be used in queries to select the right table or materialized view (e.g.
I hope this help. Do not hesitate to ask if you need further details, it really helps at figuring out where additional documentation is needed. |
First, I decided to implement the Java code first. d17166d As a result, I introduced This class is still in its early stages and will likely require many modifications. |
@YongGoose I think it is a great start. I havn't used the From what I understand, the |
Regarding the build, you may want to run |
Thank you! I followed your advice by adding the license and applying I really appreciate your help! 🙂 |
Done in d128e7b ! |
Additionally, this is unrelated to the PR, but are you able to see the demo map on the Baremaps site? It doesn’t seem to be displaying properly for me. If you're experiencing the same issue, I'll investigate it further tomorrow or the day after and create an issue if necessary. I was about to open an issue in the |
@YongGoose I saw a couple of emails related to the deployment of strict CSP headers on the server of the apache software foundation. Let me know what you find tomorrow, I may have time to have a look at this as well on thursday. |
I think it's good idea to open an issue to track this. |
I’ve created an issue to track this problem.
I’m not quite sure how to fix it yet, so it would be great to discuss possible solutions together. 🙂 |
|
Thanks for the feedback! Based on your suggestion, I implemented chaining multiple Consumers using .andThen to ensure they don’t interfere with each other. Now, the test is failing in
|
@YongGoose Sorry, I missed this notification. Do not hesitate to ping me when this happen. I believe that the openstreetmap relation of the test case 950 is not handled by the default consumer anymore. Maybe we should limit the tests to this consumer for now and ensure that the new one is tested independently. |
It’s a common occurrence, so no need to worry! As you mentioned, I’ll add test cases for the newly added consumer. |
fixes #928