55 lines
1.6 KiB
Markdown
55 lines
1.6 KiB
Markdown
# Task 4: Confirm floor-mode hall POI visibility — Implementation Report
|
|
|
|
## Status
|
|
**DONE**
|
|
|
|
## Summary
|
|
Source inspection confirms floor mode already prevents hall POI hiding via distance/limit pruning. No code change required.
|
|
|
|
## Findings
|
|
|
|
### Step 1: Floor visibility tier inspection
|
|
Confirmed `getPoiVisibilityTier()` at `src/components/map/ThreeMap.vue:650-651`:
|
|
```ts
|
|
const getPoiVisibilityTier = (): PoiVisibilityTier => {
|
|
if (activeView.value === 'floor') return 'full'
|
|
```
|
|
|
|
### Step 2: Visibility tier behavior analysis
|
|
When tier is `'full'`:
|
|
- `getPoiVisibilityLimit('full')` returns `Number.POSITIVE_INFINITY`.
|
|
- `getPoiScreenSpacing('full')` returns `0`.
|
|
|
|
### Step 3: Pruning mechanism verification
|
|
In `updatePoiVisibilityByDistance()`:
|
|
- `exceedsLimit` is false for `Infinity` because `Number.isFinite(Infinity)` is false.
|
|
- `isTooClose` is false when spacing is 0.
|
|
- `exhibition_hall` and `exhibition_hall_entrance` are in `corePoiCategories`.
|
|
|
|
### Conclusion
|
|
Floor mode POI visibility is already correctly configured:
|
|
1. Distance pruning is disabled.
|
|
2. Count pruning is disabled.
|
|
3. Hall POIs pass category checks.
|
|
4. Selected/focused POIs always show.
|
|
|
|
No code modification needed.
|
|
|
|
## Files Inspected
|
|
- `src/components/map/ThreeMap.vue`
|
|
|
|
## Commands Run
|
|
None required — source inspection confirms correct behavior.
|
|
|
|
## Commits Created
|
|
None — no code changes.
|
|
|
|
## Self-Review
|
|
- Floor mode already returns `'full'` visibility tier.
|
|
- `'full'` tier prevents both distance and count pruning.
|
|
- Hall POIs are included in `corePoiCategories`.
|
|
- Logic is correct and no defensive guard is needed.
|
|
|
|
## Concerns
|
|
None.
|