[general]
name=PlanX 3D City Viewer
qgisMinimumVersion=3.28
description=Export QGIS layers and launch the interactive PlanX 3D City web viewer.
version=0.7.8
author=Yusuf Eminoglu
email=yusuf.eminoglu@deu.edu.tr
about=PlanX 3D City Viewer maps user-exported DEM, ROI, road, building, block, parcel, optional urban furniture layers, and optional raster plan texture workflows to a browser-based Three.js city cockpit with narrative keyframes, terrain quality controls, mobility, wind impact, and building statistics overlays. Developed with feedback from educational workflows at Dokuz Eylul University, Department of City and Regional Planning.
tracker=https://github.com/YusufEminoglu/planx_3d_city/issues
repository=https://github.com/YusufEminoglu/planx_3d_city
category=Web
homepage=https://github.com/YusufEminoglu/planx_3d_city
tags=planx,3d city,urban planning,three.js,geojson,geotiff,dem,raster texture,mobility,wind,narrative,keyframe,QGIS
icon=icons/icon_main.svg
qgisMaximumVersion=3.99
experimental=False
deprecated=False
hasProcessingProvider=no
plugin_dependencies=
license=MIT
changelog=
    PlanX 3D City Viewer 0.7.8 - Plugin Hub security/quality scan cleanup.
        - Removed unused imports and stray local variables flagged by Flake8 in dialog.py, main_plugin.py, and sample_generator.py.
        - Excluded plugin-level .zipignore from the released package so the Plugin Hub suspicious-file scanner no longer flags a hidden file. .zipignore stays in the repository for build hygiene.
        - No functional changes to the viewer or QGIS publisher.
    PlanX 3D City Viewer 0.7.7 - Terrain low-edge stability, first-run onboarding, and a built-in sample dataset.
        - Added a median + MAD clamp to terrain vertices so low-elevation outliers no longer pull edge triangles upward. Removes the persistent spike line along the DEM/ROI low-elevation contour.
        - Added a first-run welcome dialog with a quick-start guide, a sample-project shortcut, and an online documentation link.
        - Added an in-plugin synthetic sample-project generator (DEM, ROI, blocks, buildings, roads, trees) so new users can publish the 3D viewer with zero data preparation.
        - Made Required / Recommended / Optional roles update live when the publish mode changes; Vector mode now only stars the DEM as required.
    PlanX 3D City Viewer 0.7.6 - Island plateau alignment and flexible Vector Plan Mode inputs.
        - Added Island Plateau: under each block polygon, DEM vertices are pulled to the block's local median height with a configurable transition ramp (default 6 m) toward the surrounding terrain. Eliminates the remaining DEM/island interpenetration.
        - The plateau cache is shared with terrainLocalYAt() so buildings, trees, and street furniture inside a block also clamp to the plateau height instead of the underlying raw DEM.
        - New viewer toggles: "Flatten DEM under islands" (default on) and "Plateau edge ramp (m)" slider in the Terrain panel.
        - Vector Plan Mode now requires only the DEM; ROI, blocks, parcels, buildings, and roads are reclassified as recommended but optional. The viewer skips empty layers gracefully so minimal exports (DEM-only, DEM + buildings, etc.) render cleanly.
        - QGIS publisher quality report now distinguishes Required / Recommended / Optional roles and warns when recommended Vector layers are missing without blocking export.
        - Bounds derivation in the viewer falls back through ROI -> blocks -> roads -> buildings -> parcels so any single vector layer is enough to anchor the scene.
    PlanX 3D City Viewer 0.7.5 - DEM edge stability, island layer overhaul, and themed facade textures release.
        - Hardened terrain edge cleanup further: widened the boundary blend band, strengthened the spike clamp toward the local median, increased the boundary median sampling radius, and out-of-ROI vertices snap to a robust DEM average so the raster halo around the export window no longer pulls triangles up or down.
        - Reused a single ROI polygon cache between the terrain vertex pass and the boundary spike limiter for faster terrain rebuilds.
        - Islands now render as a clean second layer above the DEM: raised the island elevation offset, subdivided block polygons so they drape across DEM curvature instead of cutting through it, and removed the unused island alpha-mask code path and its stale comment.
        - Added four themed island materials: ParkGreen, ResidentialBeige, CivicGravel, and CoastalSand.
        - Rewrote procedural facade textures for theme facades (CampusGlass, EcoTimber, CivicStone, DenseBrick, CoastalWhite, MediterraneanStucco, UrbanE) with real window grids, floor lines, optional ground-floor shopfronts, and per-theme column patterns.
        - UrbanA-D PNG facades remain unchanged for backwards-compatible feature-level styling.
    PlanX 3D City Viewer 0.7.4 - Security scan compliance and vendor cleanup release.
        - Removed unused Draco codec, zstddec, and other unreferenced Three.js vendor libraries that triggered false-positive secret detections on the QGIS Plugin Hub.
        - Added detect-secrets pragma allowlist comments to the bundled GeoTIFF library to suppress false-positive high-entropy string warnings.
        - Stripped unused Three.js build variants, source maps, loader modules, and large binary assets to reduce the plugin package size significantly.
        - No functional changes to the viewer or QGIS publisher.
    PlanX 3D City Viewer 0.7.3 - English-first bilingual interface and publisher polish release.
        - Makes English the primary default language in both the QGIS publisher and browser cockpit, with Turkish available as the secondary language.
        - Extends browser i18n coverage to dashboard metrics, tooltips, camera controls, Narrative Studio, Walk HUD, minimap, status pills, and placeholders.
        - Updates the QGIS publisher wording, reports, publish summaries, overwrite prompts, portable export messages, and style assistant to English-first labels with Turkish guidance where useful.
        - Adds a language note to quality reports and keeps project workflow terminology consistent between QGIS and the web viewer.
    PlanX 3D City Viewer 0.7.2 - Terrain boundary stability and portable tour ZIP release.
        - Hardens DEM sampling at raster and ROI boundaries so edge pixels are no longer repeated into artificial upward triangle spikes.
        - Adds a terrain boundary spike limiter around DEM edges and ROI clip edges to smooth isolated elevation outliers without flattening the whole terrain.
        - Adds a QGIS Portable ZIP command for complete viewer handoff, including app files, vendor libraries, exported data, launch scripts, and optional planx_tour.json.
        - Lets the browser auto-load data/planx_tour.json from a portable package so Narrative Studio keyframes travel cleanly to another computer.
    PlanX 3D City Viewer 0.7.1 - Expanded procedural material library and offline viewer polish.
        - Expands the curated asset theme library with Civic Heritage and Coastal Light themes.
        - Adds more procedural street furniture variants including heritage lanterns, bollards, campus lights, stone seats, eco benches, compact stops, steel canopies, and solar bins.
        - Adds procedural facade, roof, paving, hardscape, and road textures so the viewer no longer depends on external texture URLs.
        - Improves theme switching so roof, paving, street furniture, and function facade defaults follow the selected asset theme.
    PlanX 3D City Viewer 0.7.0 - Portable viewer folder export release.
        - Adds a QGIS Publish page command to create a portable viewer folder for classroom, review, and presentation handoff.
        - Copies the embedded viewer app, bundled vendor libraries, exported project data, and launch instructions into one timestamped folder.
        - Adds Windows launch scripts inside the portable folder for easier student and jury review.
        - Clarifies that Narrative Studio JSON stores camera/tour/viewer state only and must travel with the viewer data for a complete scene handoff.
    PlanX 3D City Viewer 0.6.9 - Procedural pedestrians and curated asset theme release.
        - Adds a QGIS Asset Theme / Material Pool selector with curated themes and active variant counts.
        - Writes assetTheme, assetPools, and pedestrianStyle metadata into planx_manifest.json.
        - Upgrades pedestrians from body/head markers to low-poly procedural people with arms, legs, shoes, and walk-cycle limb motion.
        - Uses theme-aware restrained palettes for pedestrians, cars, trees, and street furniture style fallbacks.
    PlanX 3D City Viewer 0.6.8 - Stable reference release and ROI-clipped terrain/base imagery.
        - Marks the 0.6.7 render-loop fix as the first verified stable cockpit baseline.
        - Clips the terrain, raster plan texture, and QGIS basemap texture visually to the exported ROI boundary.
        - Keeps the terrain opaque inside the ROI while hiding untrimmed DEM/basemap pixels outside the study area.
    PlanX 3D City Viewer 0.6.7 - Render loop startup hotfix.
        - Moves the recording state initialization before the animation loop starts.
        - Fixes the blank blue viewer regression where dashboard statistics loaded but the 3D scene did not render.
        - Confirms dock activation works after the render loop fix.
    PlanX 3D City Viewer 0.6.6 - Viewer visibility and dock activation hotfix.
        - Keeps the vector-mode terrain surface opaque so exported projects do not collapse into a blank blue background when island masks hide the ground.
        - Makes dock button activation more robust with delegated click handling for Scene, Layers, Analysis, Style, Mobility, Street Furniture, and Narrative panels.
        - Raises dock and toolbar z-index values so viewer controls stay clickable above the 3D canvas.
    PlanX 3D City Viewer 0.6.5 - Terrain texture smoothing, basemap resolution, and recording stability release.
        - Applies robust median DEM sampling and percentile clamping to terrain mesh vertices, not only ROI model-base sides.
        - Smooths terrain vertices near the study-area boundary to reduce DEM edge spikes under plan and basemap textures.
        - Adds a QGIS basemap export size selector with 1024, 2048, 4096, and 8192 pixel options.
        - Writes selected basemap texture size into the manifest.
        - Stabilizes WebM recording by using a consistent non-postprocessed render path while recording.
    PlanX 3D City Viewer 0.6.4 - Premium icon and QGIS basemap texture export release.
        - Replaced the plugin icon with a more polished PlanX 3D City mark while keeping it as a lightweight SVG.
        - Added an optional QGIS basemap/XYZ raster layer selector in the publisher dialog.
        - Renders the selected QGIS basemap layer to web/data/texture/basemap.png during export.
        - Adds basemap texture metadata so the browser viewer can drape the rendered QGIS basemap over the terrain.
    PlanX 3D City Viewer 0.6.3 - Tree height mapping and clean ROI model-base edge release.
        - Added QGIS field mapping for tree height so tree sizes can be controlled from a selected attribute field.
        - Updated the viewer to read mapped tree height fields with safe fallback aliases.
        - Stabilized ROI model-base side heights with median DEM sampling, percentile clamping, and smoothed boundary profiles.
        - Reduced DEM boundary spikes that previously made the model base look broken near the study-area edge.
    PlanX 3D City Viewer 0.6.2 - Surface alignment, walk mode, global modes, and dialog usability release.
        - Improved building and street-furniture ground clamping so objects stay on the terrain, road, or sidewalk surface.
        - Replaced fully random car and pedestrian colors with restrained urban palettes.
        - Improved walk mode with smoother terrain following, sprint/crouch controls, and a compact help HUD.
        - Added scrollable QGIS publisher pages for smaller windows and mouse-wheel navigation.
        - Clarified Narrative Studio JSON export scope and documented portable viewer export as the next package workflow.
        - Added viewer controls for building footprint/extrusion modes and DEM topography tint modes.
    PlanX 3D City Viewer 0.6.1 - Corrected ROI model base, dock completeness, language consistency, and placement fixes.
        - Reworked build-sides into a solid ROI model base with a bottom polygon at DEM minimum minus the configured drop.
        - Added missing advanced controls into the new dock system while keeping lil-gui available from Advanced.
        - Improved Turkish/English dock label consistency across the browser viewer.
        - Corrected vehicle elevation so cars stay attached to the road surface.
        - Improved street furniture orientation with explicit angle fields and road-based fallback rotations for lights, benches, bins, and bus stops.
    PlanX 3D City Viewer 0.6.0 - Professional cockpit, Narrative Studio, terrain, and orientation release.
        - Reorganized the viewer into Scene, Layers, Analysis, and Narrative docks while keeping advanced controls secondary.
        - Added Narrative Studio keyframes for camera, target, layer states, analysis states, sun time, captions, local storage, and JSON import/export.
        - Added manifest field mappings for building statistics, land-use, odor/noise sources, and furniture orientation fields.
        - Improved ROI-based terrain build-sides as a solid negative extrusion from the valid DEM minimum minus the configured side drop.
        - Added DEM mesh quality control inspired by terrain resampling workflows for smoother terrain surfaces.
        - Improved building base placement on sloped DEM by using footprint terrain samples so buildings do not hover above the terrain.
        - Added automatic furniture alignment to the nearest road direction when no explicit angle field is provided.
    PlanX 3D City Viewer 0.5.5 - Corrected terrain build-sides to follow ROI geometry instead of the rectangular scene extent.
        - Build-sides now use the exported ROI polygon boundary as the primary side-wall footprint.
        - Falls back to the DEM/terrain extent only when ROI geometry is unavailable.
    PlanX 3D City Viewer 0.5.4 - Made terrain build-sides fully opaque.
        - Removed side transparency/softness control and renders build-sides as solid light teal model-base walls.
    PlanX 3D City Viewer 0.5.3 - Added soft terrain build-sides around the DEM surface.
        - Added a default light teal terrain side skirt to give exported scenes a finished model-base appearance.
        - Computes the side base elevation from the minimum valid DEM pixel value minus the configured drop, defaulting to 5 meters.
        - Added Style Dock and GUI controls for build-sides visibility, side drop, color, and opacity/softness.
    PlanX 3D City Viewer 0.5.2 - Removed embedded sample/export data from the plugin package and added first planning analysis overlays.
        - Excluded generated web/data DEM and settlement exports from the source package to reduce Plugin Hub zip size.
        - Added road analysis coloring modes for amenity-distance and access/traffic reading.
        - Added wind plume screening overlay for industrial/waste-like source functions and prevailing wind direction.
        - Enriched building click details with estimated floor area, dwellings, population, and vehicles where source fields are missing.
    PlanX 3D City Viewer 0.5.1 - Fixed raster plan texture orientation and added sidewalk/road access controls.
        - Corrected CanvasTexture orientation so clipped site plan GeoTIFFs no longer appear mirrored on the DEM terrain.
        - Added optional sidewalk polygon input exported as web/data/yerlesim/mysidewalks.geojson.
        - Added optional road access field metadata so cars can be blocked from pedestrian-only roads while pedestrian/crosswalk logic remains available.
    PlanX 3D City Viewer 0.5.0 - Added Raster Plan Texture Mode for publishing a clipped 2D plan GeoTIFF as the DEM terrain texture.
        - Added Vector Plan and Raster Plan Texture publishing modes in the QGIS dialog.
        - Added plan texture GeoTIFF export to web/data/texture/siteplan.tif and manifest mode metadata.
        - Made blocks and parcels optional in raster texture mode while keeping buildings, roads, ROI, DEM, and plan texture required.
        - Updated the browser viewer to read RGB/RGBA or single-band GeoTIFF plan textures and apply opacity, brightness, and contrast controls.
    PlanX 3D City Viewer 0.4.2 - Added DEU educational context to Plugin Hub metadata and refreshed the stable release package.
    PlanX 3D City Viewer 0.4.1 - Fixed QGIS Hub metadata links and marked the plugin stable.
    PlanX 3D City Viewer 0.4.0 - Added auto layer matching, export manifest, viewer project metadata panel, and persisted cockpit settings.
    PlanX 3D City Viewer 0.3.0 - Productized the QGIS publisher workflow with quality reports, style assistant, viewer dashboard, and layer/style docks.
    PlanX 3D City Viewer 0.2.0 - Added guided QGIS interface and per-feature styling fields for blocks and buildings.
    PlanX 3D City Viewer 0.1.0 - Initial QGIS launcher/exporter for PlanX 3D City.
