Konwersja DXF na GeoJSON
Ten konwerter zamienia rysunek DXF z AutoCAD-a, BricsCAD-a lub innego programu CAD w jeden plik GeoJSON dla map internetowych, takich jak Leaflet, Mapbox, OpenLayers i geojson.io. Podajesz układ współrzędnych rysunku jako kod EPSG, a współrzędne są przeliczane na długość i szerokość geograficzną, jak wymaga tego standardowy GeoJSON. Każdy obiekt zachowuje warstwę CAD, typ elementu, tekst i kolor jako właściwości. Plik DXF jest odczytywany w przeglądarce i nie jest wysyłany na serwer.
Plik nie przekonwertował się poprawnie? Napisz na [email protected], najlepiej z małym przykładowym plikiem, a błąd zostanie naprawiony.
Najważniejsze informacje
- Wejście: DXF (.dxf). Wyjście: GeoJSON (.geojson).
- Pliki nie są wysyłane: praca odbywa się w przeglądarce, na Twoim urządzeniu.
- Rozmiar pliku: brak stałego limitu; bardzo duże pliki ogranicza pamięć urządzenia.
- Wymaga aktualnej przeglądarki (Chrome, Edge, Firefox lub Safari) na komputerze, tablecie lub telefonie; nic nie trzeba instalować.
- Bezpłatnie i bez rejestracji.
DXF na GeoJSON: po co konwertować
Plan sytuacyjny, sieć uzbrojenia terenu albo pomiar narysowany w CAD często trzeba umieścić na mapie internetowej, w panelu analitycznym lub w skrypcie, a te posługują się GeoJSON-em, nie DXF. Ta strona odczytuje DXF za pomocą GDAL, otwartej biblioteki, na której opiera się QGIS, przelicza współrzędne z układu rysunku (strefy UTM albo układu krajowego, np. PUWG 1992 lub PL-2000) na długość i szerokość geograficzną WGS84 i zapisuje jedną kolekcję FeatureCollection GeoJSON zgodnie z RFC 7946. Linie i polilinie stają się obiektami LineString, zamknięte polilinie, okręgi i kreskowania stają się obiektami Polygon, punkty i bloki stają się swoimi elementami składowymi, a TEXT i MTEXT stają się punktami z tekstem we właściwości. Kolor i grubość linii z CAD są też zapisywane jako właściwości simplestyle, więc geojson.io i GitHub rysują rysunek w kolorach CAD. Podgląd mapy pokazuje, gdzie trafi rysunek, zanim go przekonwertujesz, i nic nie jest wysyłane na serwer.
Jak przekonwertować DXF na GeoJSON
- Upuść plik .dxf w polu albo kliknij, aby go wybrać. Plik .dwg trzeba najpierw zapisać jako DXF.
- Podaj układ współrzędnych rysunku jako kod EPSG, np. EPSG:2180 dla PUWG 1992 lub EPSG:2178 dla strefy 7 układu 2000, albo kliknij jedną z podpowiedzi, i sprawdź, czy mapa pokazuje rysunek we właściwym miejscu.
- Pozostaw zaznaczone lub odznacz „Zamknięte polilinie i okręgi stają się poligonami”, kliknij „Konwertuj na GeoJSON” i wczytaj plik do swojej mapy internetowej, geojson.io albo QGIS.
Co się zmienia podczas konwersji
Kod EPSG decyduje, gdzie trafi rysunek
DXF przechowuje współrzędne jako zwykłe liczby, bez układu współrzędnych, a standardowy GeoJSON zawsze zawiera długość i szerokość geograficzną, więc konwerter musi znać układ rysunku. Wartości typu 5 600 000, 7 450 000 to układ PL-2000 (pierwsza cyfra współrzędnej Y wskazuje strefę, np. 7 to EPSG:2178), wartości typu 500 000, 650 000 to zwykle PUWG 1992 (EPSG:2180), a 556000, 6324000 to metry UTM (np. EPSG:25832 w Niemczech). Podpowiedzi pod polem wymieniają układy, w których liczby mają sens. Przy złym kodzie rysunek trafia do innego kraju albo jest przesunięty o kilkaset metrów, co podgląd mapy pokazuje przed konwersją.
Rysunki we współrzędnych lokalnych
Rysunki architektoniczne często są narysowane wokół punktu 0,0, w milimetrach lub metrach, i w ogóle nie są powiązane z terenem. Nie pasuje do nich żaden kod EPSG, a wiersz stanu ostrzega, gdy wynik trafia w okolice 0° długości i 0° szerokości u wybrzeży Afryki. Taki rysunek trzeba najpierw zgeoreferencjonować, np. wtyczką Vector Bender w QGIS, lub przesunąć w CAD na współrzędne geodezyjne.
Właściwości każdego obiektu
Każdy obiekt dostaje Layer (warstwa CAD), Entity (np. AcDbPolyline, AcDbCircle lub AcDbMText), Color jako #rrggbb z rozwiązanymi kolorami JakWarstwa i JakBlok, LineWidth w milimetrach, Linetype oraz uchwyt (Handle) elementu. Teksty dostają też Text, TextSize w jednostkach rysunku i TextAngle w stopniach przeciwnie do ruchu wskazówek zegara. Aby stylować według warstw w Leaflet lub Mapbox, użyj właściwości Layer; aby filtrować w QGIS, użyj jej w wyrażeniu.
Krzywe stają się odcinkami prostymi
GeoJSON nie ma łuków, okręgów ani splajnów, więc stają się one wieloma krótkimi odcinkami prostymi. Bloki, takie jak drzewa, studzienki czy strzałki północy, są rozbijane na linie, okręgi i teksty na warstwie wstawienia bloku. Rodzaje linii, np. kreskowe, style wymiarowania i arkusze obszaru papieru z tabliczkami rysunkowymi nie są przenoszone.
Wysokości i dokładność współrzędnych
Prawdziwe wysokości, np. rzędne warstwic, są zachowywane jako trzecia współrzędna; płaskie rysunki dostają dwie. Współrzędne są zapisywane z 7 miejscami po przecinku, co odpowiada około 1 cm w terenie, dzięki czemu plik jest mały, a nic nie przesuwa się w widoczny sposób.
O formatach plików
DXF
DXF (Drawing Exchange Format) to otwarty format wymiany danych AutoCAD-a, publikowany przez Autodesk od 1982 roku. Geodeci, architekci i projektanci używają go do przekazywania rysunków CAD między programami. DXF przechowuje linie, polilinie, łuki, okręgi, teksty, kreskowania i bloki na nazwanych warstwach, ale nie ma tabeli atrybutów ani układu współrzędnych.
- Zwykły tekst (lub plik binarny) z elementami rysunku na nazwanych warstwach; bloki to symbole wielokrotnego użytku, wstawiane wiele razy.
- Nie ma tabeli atrybutów: poza geometrią element ma warstwę, kolor, rodzaj linii, a w przypadku tekstu jego treść.
- Układ współrzędnych nie jest zapisywany; współrzędne to zwykłe liczby, często w państwowym układzie współrzędnych albo w lokalnym układzie budowy.
- DWG to własny, binarny format AutoCAD-a, a nie to samo co DXF.
GeoJSON
GeoJSON to tekstowy format JSON dla obiektów geograficznych, ustandaryzowany jako RFC 7946 w 2016 roku. Jest natywnym formatem map internetowych, takich jak Leaflet, MapLibre i Mapbox, oraz wielu API.
- Współrzędne to długość i szerokość geograficzna w WGS84 (w tej kolejności).
- W jednym pliku można łączyć punkty, linie i poligony.
- Właściwości mogą być dowolną wartością JSON, bez limitu długości nazw pól.
Najczęściej zadawane pytania
Czy mogę dostać GeoJSON w układzie krajowym zamiast długości i szerokości geograficznej?
Nie na tej stronie, bo GeoJSON zgodny z RFC 7946 musi być w WGS84 i tego oczekuje większość map internetowych. Jeśli potrzebujesz układu samego rysunku, przekonwertuj DXF na shapefile lub GeoPackage, które zachowują układ odwzorowania.
Dlaczego linie są czarne na mojej mapie?
Kolor CAD 7 jest rysowany na biało na ciemnym ekranie CAD i na czarno na papierze; jest zapisywany jako #000000. Pozostałe kolory zostają bez zmian. Właściwości simplestyle stroke i fill zawierają ten sam kolor, więc możesz ich też użyć we własnym stylu mapy.
Jak ustalić kod EPSG rysunku?
Zapytaj autora rysunku albo skorzystaj z podpowiedzi, które pojawiają się pod polem po odczytaniu pliku DXF: wymieniają układy współrzędnych, w których liczby z rysunku mają sens, a podgląd mapy pokazuje, gdzie każdy z nich umieszcza rysunek.
Czy mój rysunek jest wysyłany na serwer?
Nie. Plik DXF jest odczytywany i konwertowany przez przeglądarkę na Twoim komputerze i nic nie trafia na serwer.
Czy mogę przekonwertować GeoJSON z powrotem na DXF?
Tak, za pomocą konwertera GeoJSON na DXF, który przelicza długość i szerokość geograficzną na metry UTM lub układ krajowy i umieszcza każdy plik na osobnej warstwie CAD.