feat(foundry): complete HGeoZone live layer
This commit is contained in:
@@ -144,6 +144,22 @@ Endpoint response содержит публичный URL, attribution, тип
|
||||
|
||||
Master token или asset credential в этом URL отсутствует. Map Gateway добавляет credential server-side только после cache lookup и только если действительно нужен upstream request.
|
||||
|
||||
### 4.3 Live domain layers
|
||||
|
||||
Map data-product binding разрешён только для live-data слотов шаблона:
|
||||
`points` (`entity-stream`) и `zones` (`zone-stream`). Оба слота используют один
|
||||
provider-neutral snapshot/patch transport, но разные renderer adapters.
|
||||
|
||||
`map.zone` не превращается в Cesium-specific сущность и не получает отдельный
|
||||
ontology type `HGeoZone`. HGeoZone — имя проекционного adapter layer в Foundry:
|
||||
Polygon/MultiPolygon facts пакетируются группами ограниченного размера в
|
||||
`GroundPrimitive`, все кольца границ — в `GroundPolylinePrimitive`. Заливка,
|
||||
граница и их прозрачности читаются из versioned Map presentation profile.
|
||||
Per-entity `PolygonGraphics` для массового слоя геозон не является production
|
||||
путём. Stable runtime entity id сохраняется для selection/focus, а изменение
|
||||
цвета обновляет per-instance attributes без перестройки геометрии; изменение
|
||||
толщины границы или cursor создаёт новое bounded batch generation.
|
||||
|
||||
## 5. Credential model
|
||||
|
||||
### 5.1 Cesium Ion master token
|
||||
|
||||
+12
-7
@@ -27,7 +27,7 @@ Engine/NDC остаётся средой создания и исполнени
|
||||
- ready/loading/empty/stale/error/offline states.
|
||||
|
||||
Размеры и внешний вид разновидностей сущностей задаются ссылками на
|
||||
`styleProfiles`. Для live entity-stream Application page хранит отдельные
|
||||
`styleProfiles`. Для live `entity-stream` и `zone-stream` Application page хранит отдельные
|
||||
versioned `presentationProfiles`, а binding выбирает один из них через
|
||||
`presentationProfileId`. Это позволяет одному доменному типу иметь разные
|
||||
подтверждённые варианты, не создавая новый renderer-specific тип.
|
||||
@@ -89,17 +89,17 @@ Runtime tile cache не является исходным кодом и не х
|
||||
Дальше:
|
||||
|
||||
1. уточнить единый Label Style contract и варианты размеров уже на живой сцене;
|
||||
2. спроектировать batching/instancing contract для больших потоков объектов и геозон;
|
||||
2. расширить существующий HGeoZone batching contract явной spatial tiling-политикой для десятков тысяч геозон;
|
||||
3. вынести development gateway в `platform/services/map-gateway` и подключить persistent cache;
|
||||
4. добавить реальный Gaussian Splat 3D Tiles acceptance asset;
|
||||
5. расширить entity-stream adapter с `points` на traces, routes и zones;
|
||||
5. добавить специализированные adapters для traces и routes;
|
||||
6. оформить renderer adapter capability matrix для Cesium и будущих providers.
|
||||
|
||||
## Live data-product runtime
|
||||
|
||||
`Map Page` хранит только provider-neutral binding: `dataProductId`, approved
|
||||
semantic types, field projection, `presentationProfileId` и `slotId` (`points`
|
||||
для live point entities).
|
||||
semantic types, field projection, `presentationProfileId` и `slotId`: `points`
|
||||
для live point entities или `zones` для polygon/multipolygon `map.zone`.
|
||||
При открытии Application page browser делает same-origin запрос к Foundry:
|
||||
|
||||
```text
|
||||
@@ -122,8 +122,13 @@ events с exact cursor и только после commit делает fan-out в
|
||||
создают несколько upstream EDP subscriptions. Timeline использует provider-neutral
|
||||
history route (`from/to/resolution/sourceIds/cursor`) через тот же BFF и не
|
||||
занимает общую L2 execution queue. Renderer держит отдельный `CustomDataSource`
|
||||
на binding и обновляет stable entity id без пересоздания viewer. Sampling и
|
||||
retention остаются политикой Data Plane, а не Map Template.
|
||||
на point binding и обновляет stable entity id без пересоздания viewer. `zones`
|
||||
рендерятся отдельным HGeoZone ground-projection layer: Polygon/MultiPolygon
|
||||
пакуются ограниченными batches в Cesium ground primitives, а границы — в
|
||||
ground-polyline primitives. Это renderer adapter, не новый тип онтологии:
|
||||
источником истины остаётся `map.zone`, а цвета и прозрачности остаются в
|
||||
provider-neutral presentation profile. Sampling и retention остаются политикой
|
||||
Data Plane, а не Map Template.
|
||||
|
||||
`fleet.positions.current.v2@2.0.0` является первым state-aware moving-object
|
||||
контрактом. Пользовательский status contract ограничен
|
||||
|
||||
Reference in New Issue
Block a user