UTFGrid support for mod_tile
Maintainer thường phản hồi trong vòng 2 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 20/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc các ghi chú của issue về renderd, grid_renderer của Mapnik và mapnik/bindings/python/python_grid_utils.hpp. Truy vết cách các ID của feature được tạo và cách mã C++ hiện có ghi chúng vào một đối tượng Boost.Python. Công việc được hoàn thành khi mod_tile có thể tạo UTF8Grids mà không sao chép phần mã hóa JSON trong renderd.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Trying to get mod_tile producing UTF8Grids. Wondering if anyone else has looked at this. Apparently the fix would be in mapnik itself. Some notes on this from @springmeyer below.
The reason renderd does not support tile end points for interactivity/grids is that Mapnik support is partially in C++ and partially in the bindings (python or JavaScript). It ended up this way because to leverage the json support in each of those languages and not implement the full json encoding for utf8grids in C++. But in doing so, renderd needs to implement that json encoding on its own, which has not happened yet and likely shouldn't since ideally Mapnik would just do this in C++ to save the duplicative work.
The grid_renderer builds up an image like array of feature ids. Then that needs to be turned into json. The code to do it is is already in c++ actually but writes to a c++ boost python object. Instead it would need to write to a string that could be parseable as json. The bindings code is mapnik/bindings/python/python_grid_utils.hpp. We don't actually need a json encoder and the intermediate objects it would likely require.
- Ngôn ngữ chính
- C++
- Star
- 318
- Fork
- 200
- Merge trung bình
- 3 ngày 1 giờ
- Pull request đã merge (30 ngày)
- 21
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của openstreetmap/mod_tile
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
openstreetmap/mod_tile#501 · 2 bình luận · 1 reaction ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 65/100
openstreetmap/mod_tile#292 · 4 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
openstreetmap/mod_tile#477 · 7 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
openstreetmap/mod_tile#466 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
openstreetmap/mod_tile#462 · 7 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của openstreetmap/mod_tile
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
macOS: a double-click on a notarized altairsim is refused, and the docs give only the offline caseCó thể đã có người làm @anhaoXie đã nhận hôm nay. Đang mởdocumentation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
mutationpp/Mutationpp#337 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
bulletphysics/bullet3#4819 ·
-
[YSQL] Local-node initdb reads postgres.bki, but YB clusters bootstrap only from yb_postgres.bkiĐang mởarea/ysql kind/enhancement priority/low status/awaiting-triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
yugabyte/yugabyte-db#35763 ·
Maintainer thường phản hồi trong vòng 1 ngày