step 4: add async tiles and persistent cache
This commit is contained in:
14
README.md
14
README.md
@@ -2,7 +2,7 @@
|
||||
|
||||
`dpg-map` is a Dear PyGui map widget package under rebuild.
|
||||
|
||||
The Step 3 widget shell is in place:
|
||||
The Step 4 tile manager is in place:
|
||||
|
||||
```python
|
||||
import dpg_map as dpgm
|
||||
@@ -28,15 +28,16 @@ Implemented so far:
|
||||
- thread-safe logical map state and map registry
|
||||
- command queue with coalescing for overlay and view updates
|
||||
- logical marker, polyline, trajectory, and layer models
|
||||
- persistent disk cache path, metadata, scanning, and prune planning
|
||||
- persistent disk cache paths, metadata, scanning, pruning, and clearing
|
||||
- Dear PyGui `child_window` + measured-size `drawlist` widget shell
|
||||
- GUI-thread frame pump that drains commands and redraws a placeholder background
|
||||
- GUI-thread frame pump that drains commands, manages textures, and draws raster tiles
|
||||
- sizing helpers that preserve the last non-zero size across hidden layouts
|
||||
- interaction hit-rectangle calculation for the measured map area
|
||||
- asynchronous tile workers that read disk cache, fetch HTTP, and decode images
|
||||
- memory cache with visible-tile protection and GUI-thread texture deletion
|
||||
|
||||
Real tile loading and overlay drawing are not implemented yet. Step 4 will add
|
||||
the asynchronous tile manager, persistent tile loading, and GUI-thread texture
|
||||
creation.
|
||||
Overlay drawing is not implemented yet. Step 5 will add pan/zoom interaction and
|
||||
view command projection.
|
||||
|
||||
Examples:
|
||||
|
||||
@@ -46,4 +47,5 @@ uv run python examples/sizing_window.py
|
||||
uv run python examples/sizing_child.py
|
||||
uv run python examples/sizing_table.py
|
||||
uv run python examples/hidden_tab.py
|
||||
uv run python examples/cache_stress.py
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user