feat: implement comprehensive map editing system with advanced geometry tools, replay management, and project session state modules.
Build and Release / release (push) Successful in 55s
Build and Release / release (push) Successful in 55s
This commit is contained in:
@@ -0,0 +1,133 @@
|
||||
# Goong Map Web Structure
|
||||
|
||||
Nguồn JSON gốc được tải về tại:
|
||||
|
||||
- `FrontEndUser/tmp/goong-styles/goong_map_web.json`
|
||||
|
||||
File này là style vector/label đầy đủ hơn, phù hợp để dò:
|
||||
|
||||
- water và water labels
|
||||
- boundary theo cấp
|
||||
- place labels cho lịch sử
|
||||
|
||||
## Mermaid overview
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
ROOT[goong_map_web.json]
|
||||
|
||||
ROOT --> S1[source: base]
|
||||
ROOT --> S2[source: composite]
|
||||
|
||||
S1 --> B1[source-layer: boundary]
|
||||
S1 --> B2[source-layer: worldcountriespoints]
|
||||
S1 --> B3[source-layer: worldnationalcapitals]
|
||||
|
||||
S2 --> C1[source-layer: riversandlakes]
|
||||
S2 --> C2[source-layer: rivernames]
|
||||
S2 --> C3[source-layer: lakenames]
|
||||
S2 --> C4[source-layer: vietnam_administrator]
|
||||
S2 --> C5[source-layer: streets_label]
|
||||
|
||||
B1 --> BL0[boundary-land-type-0 / type-0-bg]
|
||||
B1 --> BL1[boundary-land-type-1 / type-1-bg]
|
||||
B1 --> BL2[boundary-land-type-2 / type-2-bg]
|
||||
|
||||
B2 --> PC1[place-country-1]
|
||||
B2 --> PC2[place-country-2]
|
||||
|
||||
B3 --> CAP0[place-city-capital]
|
||||
|
||||
C1 --> W1[water]
|
||||
C1 --> W2[water-shadow]
|
||||
|
||||
C2 --> RN0[river-name-0]
|
||||
C2 --> RN1[river-name-1]
|
||||
C2 --> RN2[river-name-2]
|
||||
|
||||
C3 --> LN0[lake-name_priority_0]
|
||||
C3 --> LN1[lake-name_priority_1]
|
||||
C3 --> LN2[lake-name_priority_2]
|
||||
|
||||
C4 --> VA0[place-city-capital-vietnam]
|
||||
C4 --> VA1[place-city1 / place-city2]
|
||||
C4 --> VA2[place-town1 / place-town2]
|
||||
C4 --> VA3[place-suburb / borough / neighbourhood]
|
||||
C4 --> VA4[place-village]
|
||||
|
||||
C5 --> RD0[highway-name-minor]
|
||||
C5 --> RD1[highway-name-medium]
|
||||
C5 --> RD2[highway-name-major]
|
||||
```
|
||||
|
||||
## Boundary layers
|
||||
|
||||
Các layer boundary nổi bật:
|
||||
|
||||
- `boundary-land-type-0-bg`
|
||||
- `boundary-land-type-0`
|
||||
- `boundary-land-type-1-bg`
|
||||
- `boundary-land-type-1`
|
||||
- `boundary-land-type-2-bg`
|
||||
- `boundary-land-type-2`
|
||||
|
||||
Minzoom quan sát được:
|
||||
|
||||
- `type-0`: từ zoom `1`
|
||||
- `type-1`: từ zoom `5`
|
||||
- `type-2-bg`: từ zoom `7`
|
||||
- `type-2`: từ zoom `13`
|
||||
|
||||
Suy luận thực dụng:
|
||||
|
||||
- `type-0` có khả năng là biên giới quốc gia
|
||||
- `type-1` có khả năng là cấp tỉnh/thành
|
||||
- `type-2` có khả năng là cấp sâu hơn
|
||||
|
||||
## Water layers
|
||||
|
||||
Water fill:
|
||||
|
||||
- `water`
|
||||
- `water-shadow`
|
||||
|
||||
Water labels:
|
||||
|
||||
- `river-name-0`
|
||||
- `river-name-1`
|
||||
- `river-name-2`
|
||||
- `lake-name_priority_0`
|
||||
- `lake-name_priority_1`
|
||||
- `lake-name_priority_2`
|
||||
|
||||
## Place labels
|
||||
|
||||
Những label đáng quan tâm cho historical use:
|
||||
|
||||
- `place-country-1`
|
||||
- `place-country-2`
|
||||
- `place-city-capital`
|
||||
- `place-city-capital-vietnam`
|
||||
- `place-city1`
|
||||
- `place-city2`
|
||||
- `place-town1`
|
||||
- `place-town2`
|
||||
|
||||
Những label dễ gây rối nếu bật nhiều:
|
||||
|
||||
- `highway-name-*`
|
||||
- `place-suburb*`
|
||||
- `place-neighbourhood*`
|
||||
- `place-village`
|
||||
|
||||
## Gợi ý mapping cho UI
|
||||
|
||||
Mapping hiện tại trong `tiles.ts` là heuristic runtime, không hardcode đúng từng id này:
|
||||
|
||||
- `Country Borders` -> ưu tiên `boundary-land-type-0`, bỏ `boundary-land-type-0-bg`
|
||||
- `Province Borders` -> ưu tiên `boundary-land-type-1`, bỏ `boundary-land-type-1-bg`
|
||||
- `District Borders` -> `boundary-land-type-2` và các layer cấp sâu hơn
|
||||
- `Country Labels` -> symbol layer có text field và tên/source-layer giống country/admin/place/city/town/capital
|
||||
- `Rivers` -> line/fill layer có tên/source-layer giống water/waterway/river/stream/canal/lake/reservoir/sea/ocean
|
||||
|
||||
Water label symbol như `river-name-*`/`lake-name_*` chỉ được đưa vào nếu heuristic sau này mở rộng; code hiện tại chủ yếu lấy line/fill water.
|
||||
Reference in New Issue
Block a user