DXF naar GeoJSON converteren

Deze converter zet een DXF-tekening uit AutoCAD, BricsCAD of een ander CAD-programma om naar één GeoJSON-bestand voor webkaarten zoals Leaflet, Mapbox, OpenLayers en geojson.io. U vult het coördinatenstelsel van de tekening in als EPSG-code, en de coördinaten worden omgerekend naar lengte- en breedtegraad, zoals standaard-GeoJSON vereist. Elk object houdt zijn CAD-laag, entiteittype, tekst en kleur als eigenschappen. De DXF wordt in uw browser gelezen en niet geüpload.

Is een bestand niet goed omgezet? Mail naar [email protected], liefst met een klein voorbeeldbestand, dan wordt het opgelost.

In het kort

DXF naar GeoJSON: waarom omzetten

Een situatietekening, een leidingnet of een inmeting uit CAD moet vaak op een webkaart, in een dashboard of in een script terechtkomen, en die werken met GeoJSON, niet met DXF. Deze pagina leest de DXF met GDAL, de opensourcebibliotheek achter QGIS, rekent de coördinaten om van het stelsel van de tekening (een UTM-zone of een nationaal stelsel zoals RD New of Lambert 72) naar lengte- en breedtegraad in WGS84, en schrijft één GeoJSON-FeatureCollection volgens RFC 7946. Lijnen en polylijnen worden LineStrings, gesloten polylijnen, cirkels en arceringen worden Polygons, punten en blokken worden hun onderdelen, en TEXT en MTEXT worden punten met de tekst in een eigenschap. De CAD-kleur en lijndikte worden ook als simplestyle-eigenschappen geschreven, zodat geojson.io en GitHub de tekening in haar CAD-kleuren tonen. De kaartweergave laat zien waar de tekening terechtkomt voordat u converteert, en er wordt niets naar een server gestuurd.

Zo zet u DXF om naar GeoJSON

  1. Sleep uw .dxf-bestand naar het vak, of klik om het te kiezen. Een .dwg moet eerst als DXF worden opgeslagen.
  2. Vul het coördinatenstelsel van de tekening in als EPSG-code, zoals EPSG:28992 voor RD New, of klik op een van de suggesties, en controleer of de kaart de tekening op de juiste plek toont.
  3. Laat “Gesloten polylijnen en cirkels worden polygonen” aangevinkt of vink het uit, klik op “Converteren naar GeoJSON” en laad het bestand in uw webkaart, geojson.io of QGIS.

Wat er verandert bij het omzetten

De EPSG-code bepaalt waar de tekening terechtkomt

Een DXF slaat coördinaten op als kale getallen zonder coördinatenstelsel, terwijl standaard-GeoJSON altijd lengte- en breedtegraad is, dus de converter moet het stelsel van de tekening kennen. Waarden als 155000, 463000 zijn RD-coördinaten in meters (EPSG:28992); in België wijzen waarden als 150000, 170000 meestal op Lambert 72 (EPSG:31370), en waarden als 556000, 6324000 zijn UTM-meters (bijvoorbeeld EPSG:25832). De suggesties onder het veld noemen stelsels waarin de getallen kloppen. Met de verkeerde code komt de tekening in het verkeerde land of een paar honderd meter verschoven terecht, wat de kaartweergave laat zien voordat u converteert.

Tekeningen in lokale coördinaten

Tekeningen van architecten zijn vaak rond 0,0 getekend, in millimeters of meters, en zijn helemaal niet aan het terrein gekoppeld. Geen enkele EPSG-code past daarop, en de statusregel waarschuwt als het resultaat bij 0° lengte en 0° breedte voor de kust van Afrika terechtkomt. Zo'n tekening moet eerst gegeorefereerd worden, bijvoorbeeld met de plug-in Vector Bender in QGIS, of in CAD naar meetcoördinaten worden verplaatst.

Eigenschappen van elk object

Elk object krijgt Layer (de CAD-laag), Entity (zoals AcDbPolyline, AcDbCircle of AcDbMText), Color als #rrggbb met ByLayer en ByBlock opgelost, LineWidth in millimeters, Linetype en de Handle van de entiteit. Teksten krijgen ook Text, TextSize in tekeningeenheden en TextAngle in graden tegen de klok in. Gebruik de eigenschap Layer om per laag te stylen in Leaflet of Mapbox, of in een expressie om te filteren in QGIS.

Bogen worden rechte segmenten

GeoJSON kent geen bogen, cirkels of splines, dus die worden veel korte rechte segmenten. Blokken zoals bomen, putten en noordpijlen worden geëxplodeerd tot hun lijnen, cirkels en teksten op de laag van de blokinvoeging. Lijntypen zoals stippellijnen, maatvoeringsstijlen en layouts in de papierruimte met titelblokken gaan niet mee.

Hoogtes en nauwkeurigheid van coördinaten

Echte hoogtes, zoals de hoogte van hoogtelijnen, blijven bewaard als derde coördinaat; platte tekeningen krijgen er twee. De coördinaten worden met 7 decimalen geschreven, ongeveer 1 cm op het terrein, wat het bestand klein houdt zonder iets zichtbaar te verschuiven.

Over de bestandsformaten

DXF

DXF (Drawing Exchange Format) is het open uitwisselingsformaat van AutoCAD, dat Autodesk sinds 1982 publiceert. Landmeters, architecten en ingenieurs gebruiken het om CAD-tekeningen tussen programma's uit te wisselen. Een DXF bevat lijnen, polylijnen, bogen, cirkels, tekst, arceringen en blokken op lagen met een naam, maar geen attribuuttabel en geen coördinatenstelsel.

  • Platte tekst (of binair) met tekenentiteiten op lagen met een naam; blokken zijn herbruikbare symbolen die vele keren worden ingevoegd.
  • Er is geen attribuuttabel: naast de geometrie heeft een entiteit een laag, een kleur, een lijntype en, bij tekst, de tekst zelf.
  • Het coördinatenstelsel wordt niet opgeslagen; coördinaten zijn gewoon getallen, vaak in een landelijk stelsel of in lokale bouwcoördinaten.
  • DWG is het eigen binaire formaat van AutoCAD, en niet hetzelfde als DXF.

GeoJSON

GeoJSON is een JSON-tekstformaat voor geografische objecten, in 2016 vastgelegd als RFC 7946. Het is het eigen formaat van webkaarten zoals Leaflet, MapLibre en Mapbox, en van veel API's.

  • Coördinaten zijn WGS84-lengtegraad en -breedtegraad (in die volgorde).
  • Punten, lijnen en polygonen kunnen in één bestand worden gecombineerd.
  • Eigenschappen kunnen elke JSON-waarde zijn, zonder limiet op de lengte van veldnamen.

Veelgestelde vragen

Kan ik de GeoJSON in RD New of een ander nationaal stelsel krijgen in plaats van lengte- en breedtegraad?

Niet op deze pagina, want GeoJSON volgens RFC 7946 moet in WGS84 staan en de meeste webkaarten verwachten dat. Hebt u het eigen stelsel van de tekening nodig, zet de DXF dan om naar een shapefile of GeoPackage, die een geprojecteerd stelsel behouden.

Waarom zijn de lijnen zwart op mijn kaart?

CAD-kleur 7 wordt wit getekend op een donker CAD-scherm en zwart op papier; ze wordt geschreven als #000000. Andere kleuren blijven zoals ze zijn. De simplestyle-eigenschappen stroke en fill bevatten dezelfde kleur, zodat u ze ook in uw eigen kaartstijl kunt gebruiken.

Hoe vind ik de EPSG-code van een tekening?

Vraag het aan degene die de tekening heeft gemaakt, of gebruik de suggesties die onder het veld verschijnen zodra de DXF is gelezen: ze noemen de coördinatenstelsels waarin de getallen van de tekening kloppen, en de kaartweergave laat zien waar elk stelsel de tekening neerzet.

Wordt mijn tekening geüpload?

Nee. De DXF wordt door uw browser op uw eigen computer gelezen en omgezet, en er wordt niets naar een server gestuurd.

Kan ik een GeoJSON weer terugzetten naar DXF?

Ja, met de converter van GeoJSON naar DXF. Die rekent lengte- en breedtegraad om naar UTM-meters of uw nationale stelsel en zet elk bestand op een eigen CAD-laag.