3 November 2026 · Version 18 · Van den Berg Architecten
Open https://so-locatieanalyse.pages.dev/. Enter an address in the Netherlands and choose a search result. Set the study width. Select one or more cadastral parcels or draw a closed project boundary. Planning information is optional: enable it, compare the available plans and explicitly confirm the plan you want to use. You can generate maps without choosing a plan.
Generate maps, then inspect the maps and source status. The selection fill disappears after generation; the red dashed project boundary remains. The centre marker is a selection aid and is excluded from exports. A larger study area requires more data, time and browser memory. The mouse wheel and +/− buttons use larger zoom steps for an overview and switch to very fine detail steps a little later; the configured print scale stays unchanged.
Overview, Buildings, Green structure, Water structure, Traffic, Cycling routes and Footpaths describe the spatial context. Traffic includes public transport symbols. Cycling routes distinguishes recorded paths, lanes, cycle streets and indicative mixed traffic. A 30 km/h limit alone does not establish a cycling route.
Building heights are registered roof height minus ground level from 3DBAG, not the permitted building height. Building uses are registered BAG uses, not permitted planning uses. Trees are available IMGeo and OpenStreetMap points; coverage is incomplete and symbols are not measured tree crowns. Maximum speeds come from RWS/WKD and do not provide live temporary restrictions. The aerial photograph is a raster image; its capture date can differ from its download date.
The optional Planning map contains the selected plan, building envelopes, available designations and dimensions. BH and GH indicate available maximum building/ridge and eaves heights. Overview shows the building envelope subtly; other thematic maps do not. Check the official rules and overlapping plans. The parser does not expose every current STOP/TPOD rule or replace a planning assessment.
Choose Nederlands or English in the header. Fixed interface text, map titles, legends, notes and export labels follow that choice. Project names, addresses, street names, official plan names, original rules and user-entered information remain unchanged. Translation is bundled and uses no AI service or tokens.
Hover over an information icon or focus it with the keyboard to read contextual help. Click to keep it open. Close with Escape, the close control or a click outside the help. Additional print settings are expandable, keeping the main controls compact.
Select one or several export formats. PDF and PNG offer the current map or all maps. SVG has its own map selector: Overview is the default, or choose a particular map or all maps in a ZIP. GeoJSON contains source geometries for the current theme and coordinate/source metadata.
PDF contains vector lines, fills and text; aerial photography and the office logo remain images. PNG uses the same composition at 150 or 300 DPI. Choose A4–A0 or custom dimensions, orientation and scale. The print preview lets you inspect and pan the crop or centre it on the project boundary. Cropping does not disable export. Print PDF at 100% for the stated scale. Paper and print scale do not resize CAD geometry.
Online CAD exports contain Overview at full size in metres, separate layers/tags and a legend outside the map. Available tree points are retained on visible source-specific green layers. Cadastral boundaries are fetched for the study extent and placed on a hidden layer. Aerial photography and requested 3DBAG LoD2.2 geometry are initially hidden too. These online models do not contain Layer States.
3DM contains editable planar Breps, native text, tree instances and 3D building meshes. DXF is delivered in its own ZIP with the linked aerial image and source metadata; extract it fully and keep Luchtfoto.jpg next to the DXF. CAD programs can interpret fills, text and images differently. For vector printing in Rhino, use the DXF hatches or export the vector PDF directly from the app.
SKP is a native SketchUp 2017 file, made entirely in the browser. It contains coloured editable faces, tags, groups, tree components, native labels and optional 3DBAG building groups. The writer converts metres to the internal SKP unit, inches. In full SketchUp, use Tags to show cadastral boundaries, 3DBAG and the aerial image. Desktop Viewer cannot switch those hidden tags on. Labels follow SketchUp screen-facing display conventions rather than the fixed PDF text layout. Use PDF for print composition.
No Rhino, AutoCAD, Revit or SketchUp installation is needed to generate online exports. The paused native local edition uses installed CAD software and provides the previously implemented Layer States/DWG/Revit workflow; it is separate from this online edition.
During preparation, the central export window remains open. It shows the requested formats, current operation, completed steps and elapsed time. Minimize becomes available once the export inputs and settings are fixed. The compact dock shows actual processing progress: the bar counts work steps and does not predict remaining time. Use Restore to reopen the full window. The complete map package uses the same display.
While export is minimized, you can switch maps, pan, zoom and centre the map. Project data, settings and language remain locked during export. Keep the browser tab open. After completion or an error, the dock stays visible until you restore the window or dismiss the dock. If one converter fails, the successful formats are retained, with an export summary in the ZIP.
Large outer ZIP packages are assembled in a separate browser worker. Map preparation yields between maps so progress can be drawn. CAD writers and independent 3DM/SKP checks use workers as well. Large vector PDFs and models still require processing time and memory.
BAG WFS is the primary source for Building uses, with the official BAG OGC API as fallback. The fallback request allows up to 90 seconds. If both sources fail, the exported map shows an explicit unavailable-data warning rather than inventing uses. Retry generation after the source recovers. The Utrecht test at 1,200 m returned 988 source buildings; 987 meet the existing current-use status filter.
GitHub repository acreanga/so-locatieanalyse stores the source and change history. Cloudflare Pages builds main using node build.mjs and publishes dist. The browser fetches public geographic data and generates export files. The protected server route handles planning requests using RP_API_KEY stored as a Cloudflare secret; never put that key in browser code, archives or a public repository.
Addresses and study extents are sent to the relevant data providers. The app does not centrally store project models. Feedback prepares a message in your own email client; you review and send it yourself. An app message saying the email was prepared is not delivery confirmation.
export-progress.mjs manages progress, export-batch.mjs preserves successful formats, zip-browser.mjs/zip-worker.mjs assemble ZIPs, and bag-source.mjs handles BAG paging and fallback. CAD metadata records the local RD origin and source information; 3DBAG heights retain NAP elevation. OpenSKP and rhino3dm are bundled with licences. The official SketchUp reader is used only for development QA and is not a runtime dependency.
Keep source archives, licence files, guides, test evidence and backups together. After every change, check Dutch and English interfaces and fixed export text, verify the live files against the tested source, and update the delivered copies. Imported data must remain unchanged. Hosting can be moved to another suitable host; it does not require a paid GPT/Sites subscription.
Concept and development: Andrei Creangă · Van den Berg Architecten