Dlaczego pliki DXF mają zbyt wiele segmentów do pracy z CNC
Plik DXF staje się zbyt gęsty, gdy wynik wektoryzacji, eksportowane krzywe, zduplikowane ścieżki lub fragmenty tworzą zbyt wiele encji. Ustal przyczynę, a potem uporządkuj plik przed użyciem w CAM.
Na tej stronie
- Co właściwie oznacza „zbyt wiele segmentów”
- Nasz test: od źródła przez SVG do DXF
- Pięć powodów, dla których DXF staje się zbyt gęsty
- 1. Wynik wektoryzacji już wcześniej zawierał zbyt wiele szczegółów
- 2. Krzywe zostały podzielone na segmenty podczas eksportu
- 3. Zduplikowane kontury nakładają się na siebie
- 4. Drobne fragmenty stały się osobnymi obiektami
- 5. Program docelowy nie radzi sobie z poprawną encją
- Łączyć, upraszczać, usuwać duplikaty czy rysować od nowa?
- Kolejność porządkowania, która zachowuje zamierzoną geometrię
- Gdzie przydaje się PerfectVector
- Najczęściej zadawane pytania
- Źródła
Plik DXF ma zbyt wiele segmentów, gdy krzywa trafia do niego jako setki krótkich linii, wektoryzacja odwzorowuje każdą drobną nierówność obrazu źródłowego, zduplikowane ścieżki nakładają się na siebie albo niepołączone fragmenty stają się osobnymi encjami. Samo rozszerzenie pliku nie stanowi diagnozy. Najpierw ustal, czy nadmierna gęstość istniała przed eksportem, pojawiła się podczas konwersji, czy dopiero stała się problemem w docelowej aplikacji CAM.
Ta kolejność ma znaczenie. Połączenie 500 segmentów w jedną polilinię może ułatwić zaznaczanie obiektu, ale nadal pozostawia 500 wierzchołków. Zamiana krzywej bez nadmiaru punktów na krótkie linie może wywołać odwrotny problem. Z kolei usuwanie punktów na ślepo może zmienić część, którą chcesz wyciąć.
Krótka diagnoza
- Gęsty SVG przed eksportem: popraw wektoryzację lub uprość źródłowy plik wzorcowy.
- Krzywa bez nadmiaru punktów po eksporcie zamienia się w wiele linii: zmień wersję DXF lub ustawienie eksportu krzywych, jeśli docelowe oprogramowanie obsługuje alternatywny typ encji.
- Dwa identyczne kontury: usuń duplikaty; łączenie nie usunie drugiej ścieżki.
- Setki drobnych, niepołączonych obiektów: usuń fragmenty lub odtwórz zamierzony kontur.
- Uporządkowany plik, powolny lub odrzucany import: sprawdź, jakie encje DXF i konwencje dotyczące warstw obsługuje ta konkretna wersja CAM.
Co właściwie oznacza „zbyt wiele segmentów”
DXF może opisywać geometrię za pomocą różnych typów encji. Polilinia zawiera sekwencję wierzchołków; dokumentacja Autodesk DXF POLYLINE reference opisuje następujące po niej rekordy VERTEX. Krzywa typu spline zawiera natomiast stopień, węzły, punkty kontrolne i powiązane dane; Autodesk opisuje te pola w dokumentacji SPLINE reference.
Te reprezentacje nie są wymienne w każdym programie docelowym. Jedna aplikacja CAM może bezpośrednio obsługiwać SPLINE. Inna może podczas importu zamienić ją na linie. Starszy sterownik może preferować łuki i polilinie. Dlatego zarówno „zachowaj każdą krzywą jako spline”, jak i „eksportuj wszystko jako polilinie” to niepełne odpowiedzi.
Przydatne pytanie jest bardziej konkretne: ile encji i wierzchołków opisuje kształt i czy program docelowy prawidłowo je obsługuje?
Nasz test: od źródła przez SVG do DXF
Aby oddzielić gęstość geometrii źródłowej od zachowania eksportera, przygotowaliśmy pięć syntetycznych plików testowych SVG przedstawiających ten sam ogólny kształt fali. Jeden wykorzystywał dwie natywne krzywe Béziera trzeciego stopnia. Trzy przybliżały kształt za pomocą 16, 64 lub 256 prostych segmentów. W ostatnim dokładnie zduplikowano ścieżkę złożoną z 64 segmentów.
Każdy plik testowy wyeksportowaliśmy przy wymiarze 100 mm za pomocą eksportera DXF używanego w tym repozytorium, a następnie policzyliśmy zapisane rekordy POLYLINE, SPLINE i VERTEX. Powtórzyliśmy test i uzyskaliśmy pliki identyczne bajt po bajcie.
| Źródłowy plik testowy | Polilinie DXF | Krzywe spline DXF | Wierzchołki DXF | Bajty DXF |
|---|---|---|---|---|
| 2 natywne krzywe trzeciego stopnia | 0 | 2 | 0 | 1 289 |
| 16 prostych segmentów | 1 | 0 | 16 | 2 900 |
| 64 proste segmenty | 1 | 0 | 64 | 9 128 |
| 256 prostych segmentów | 1 | 0 | 256 | 34 040 |
| 2 nakładające się ścieżki po 64 segmenty | 2 | 0 | 128 | 17 650 |

Wynik ma ograniczony zakres, ale jest przydatny: ten eksporter nie dodał dodatkowych prostych segmentów w tych plikach testowych. Zachował reprezentację źródłową. Natywne krzywe pozostały natywne; gęste linie pozostały gęste; duplikat pozostał duplikatem.
Nie traktuj tych liczb jako uniwersalnego punktu odniesienia. Nie opisują każdego konwertera, każdej wersji DXF, każdego importera CAM ani typowego wyniku wektoryzacji w PerfectVector. Pokazują metodę diagnostyczną, którą możesz powtórzyć na własnym pliku.
Pięć powodów, dla których DXF staje się zbyt gęsty
1. Wynik wektoryzacji już wcześniej zawierał zbyt wiele szczegółów
Wektoryzacja obrazu może rozmieszczać punkty wzdłuż szumu kompresji, krawędzi wygładzonych antyaliasingiem, tekstury skanu lub drobnych wypukłości, które nie mają znaczenia dla produkcji. Eksport takiego SVG do DXF zmienia jedynie format zapisu, jeśli eksporter zachowuje ścieżkę.
Sprawdź wektorowy plik wzorcowy przed konwersją. Jeśli prosty łuk już wygląda jak łańcuch punktów, zacznij od diagnozy nadmiernej liczby węzłów SVG. Poprawienie źródła jest bezpieczniejsze niż oczekiwanie, że CAM naprawi je później.
2. Krzywe zostały podzielone na segmenty podczas eksportu
Ścieżki SVG mogą zawierać polecenia linii, krzywych Béziera trzeciego stopnia, krzywych Béziera drugiego stopnia i łuków; definiuje je specyfikacja ścieżek W3C. Eksporter DXF musi odwzorować je na encje, które wybrana wersja DXF i program docelowy potrafią odczytać. Niektóre procesy zachowują krzywą jako SPLINE lub ARC. Inne przybliżają ją krótkimi prostymi segmentami.
Jeśli SVG zawiera krzywą bez nadmiaru punktów, ale DXF pokazuje gęstą polilinię, porównaj ustawienia i wersje eksportu. Użyj reprezentacji, która najmniej zmienia geometrię i którą program docelowy niezawodnie obsługuje, a następnie sprawdź zaimportowaną krzywą przy dużym powiększeniu i zweryfikuj znany wymiar.
3. Zduplikowane kontury nakładają się na siebie
Duplikat może być niewidoczny na ekranie. Staje się oczywisty dopiero wtedy, gdy podgląd CAM zaznacza dwa kontury, tnie krawędź dwukrotnie lub zgłasza dwa razy więcej encji, niż oczekujesz.
Nasz plik testowy z duplikatem zachował się dokładnie tak, jak powinien: dwie ścieżki po 64 segmenty stały się dwiema poliliniami o łącznej liczbie 128 wierzchołków. Połączenie segmentów każdego konturu nadal pozostawiłoby oba kontury. Rozwiązaniem jest usunięcie duplikatów.
4. Drobne fragmenty stały się osobnymi obiektami
Drobinki w obrazie rastrowym, przerwy w skanie lub nieudane łączenie mogą utworzyć wiele krótkich ścieżek. Importer CAM może potraktować każdy fragment jako kontur, obiekt do zaznaczenia lub obiekt, któremu można przypisać osobną operację. Usuń fragmenty, które nie należą do projektu, ale najpierw je sprawdź; krótka linia może też być zamierzonym detalem.
5. Program docelowy nie radzi sobie z poprawną encją
Plik DXF może mieć poprawną strukturę, a mimo to źle sprawdzać się w konkretnym procesie pracy z maszyną. SendCutSend wskazuje, że gęsto rozmieszczone węzły mogą pochodzić z konwerterów innych firm lub z krzywych spline podzielonych na segmenty liniowe, i zaleca sprawdzenie źródła oraz ustawień krzywych właściwych dla danego oprogramowania w swoich wskazówkach dotyczących gęsto rozmieszczonych węzłów.
Sprawdź plik w programie docelowym, a nie tylko w podglądzie na komputerze. Jeśli SPLINE nie działa, ale ARC działa, odtwórz rzeczywisty łuk. Jeśli aplikacja wymaga polilinii, wybierz udokumentowaną tolerancję i zmierz wynik. To program docelowy decyduje, która reprezentacja jest praktyczna.
Łączyć, upraszczać, usuwać duplikaty czy rysować od nowa?
Te polecenia rozwiązują różne problemy:
| Działanie | Co zmienia | Kiedy je stosować | Główne ryzyko |
|---|---|---|---|
| Łączenie | Łączy punkty końcowe w dłuższy obiekt | Poprawne fragmenty należą do jednego ciągłego konturu | Zachowuje tę samą nadmierną liczbę wierzchołków |
| Upraszczanie | Usuwa punkty lub ponownie dopasowuje krzywą w granicach tolerancji | Krzywa ma zbędne punkty | Zmienia narożniki, promienie, otwory lub dopasowanie |
| Usuwanie duplikatów | Usuwa pokrywające się kopie | Ten sam kontur występuje dwukrotnie | Przy zbyt dużej tolerancji usuwa zamierzoną geometrię równoległą |
| Ponowne narysowanie jako łuk lub krzywa spline | Zastępuje geometrię złożoną z prostych odcinków natywną krzywą | Projekt jest rzeczywiście kołowy lub ma gładki przebieg opisany parametrycznie | Krzywa dobrana na oko może nie odpowiadać zamierzonej części |
W przypadku dekoracyjnych szyldów może wystarczyć kontrolowane upraszczanie. W przypadku gniazda łożyska, profilu współpracujących części, uszczelki lub zwymiarowanej części mechanicznej nie odtwarzaj geometrii na podstawie zaszumionego wyniku wektoryzacji. Zbuduj ją od nowa w CAD na podstawie wymaganych wymiarów.
Kolejność porządkowania, która zachowuje zamierzoną geometrię
- Zapisz nienaruszony plik wzorcowy. Pracuj na kopii, aby każdy krok porządkowania dało się cofnąć.
- Sprawdź geometrię przed eksportem do DXF. W SVG lub źródłowym projekcie powiększ proste krzywe i policz podejrzane węzły. Szukaj duplikatów, niepołączonych punktów końcowych i drobinek.
- Wyeksportuj jedną krzywą testową. Pojedynczy okrąg, łuk lub krzywa Béziera pokaże Ci, jak eksporter i program docelowy radzą sobie z typami encji, bez dodatkowych elementów całego rysunku.
- Policz encje według typu. Zapisz liczbę encji LINE, ARC, POLYLINE/VERTEX i SPLINE przed importem i po nim, jeśli narzędzia udostępniają te dane.
- Wprowadzaj po jednej poprawce. Najpierw usuń duplikaty, potem fragmenty, połącz właściwe części, a następnie upraszczaj lub rysuj od nowa tylko tam, gdzie jest to potrzebne.
- Zweryfikuj geometrię. Zmierz znaną długość, sprawdź zamknięte profile i porównaj uporządkowaną krzywą z nienaruszonym plikiem wzorcowym.
- Wygeneruj podgląd ścieżki narzędzia. Upewnij się, że zamierzony kontur jest zaznaczony tylko raz, kierunek i kompensacja są poprawne oraz nie pojawiają się nieoczekiwane drobne ruchy.
Jeśli zaczynasz od PNG lub JPG zamiast od istniejącej grafiki wektorowej, przed tą kontrolą DXF przejdź przez szerszy proces przekształcania obrazu w SVG do CNC. Jeśli programem docelowym jest Onshape, skorzystaj z przewodnika po przenoszeniu obrazu do szkicu Onshape przez DXF, aby wybrać między ręcznym odtworzeniem a geometrią uzyskaną przez wektoryzację. Jeśli decydujesz, w jakim formacie przekazać plik, porównanie SVG i DXF do cięcia omawia zgodność i jednostki.
Jeśli używasz QCAD, przewodnik po konturach i liniach środkowych w Trace Bitmap pomoże Ci zdecydować, czy do tej kontroli DXF powinien trafić zwektoryzowany kontur zewnętrzny, czy świadomie narysowana geometria CAD.
Jeśli wektoryzację wykonujesz wewnątrz CAM, przed przypisaniem ścieżek narzędzia skorzystaj z kontroli konturów Trace Bitmap w VCarve lub przewodnika po wektoryzacji i imporcie w Carbide Create. Obie metody nadal wymagają sprawdzenia otwartych konturów, fragmentów i zbędnych węzłów w docelowym obszarze roboczym.
Gdzie przydaje się PerfectVector
PerfectVector może przekształcić źródłowy obraz rastrowy w grafikę wektorową i przygotować plik DXF do sprawdzenia, co przydaje się, gdy nie masz wektorowego pliku wzorcowego do uporządkowania. Nie zna tolerancji Twojej maszyny, zamierzonych wymiarów, frezu, sterownika ani zasad importu w CAM. Te kwestie nadal musisz sprawdzić przed produkcją.
Przekształć oryginalny obraz w DXF, a następnie sprawdź wynik, zamiast traktować rozszerzenie jako dowód poprawności. Sprawdź, czy proste krzywe nie mają zbyt gęsto rozmieszczonych wierzchołków, usuń niezamierzone fragmenty lub duplikaty, zmierz znany element i obejrzyj podgląd ścieżki narzędzia w docelowym oprogramowaniu. Jeśli grafika przedstawia w rzeczywistości zwymiarowaną geometrię techniczną, narysuj ją od nowa w CAD, zamiast traktować wynik wektoryzacji obrazu jako wiarygodny wzorzec.
Najczęściej zadawane pytania
Dlaczego mój DXF ma tysiące segmentów? Źródło może już zawierać gęstą geometrię po wektoryzacji, eksporter mógł zamienić krzywe na krótkie linie, zduplikowane ścieżki mogą się nakładać albo drobne fragmenty mogły stać się osobnymi encjami. Porównaj liczby elementów w źródle i DXF, zanim ustalisz, która przyczyna występuje w Twoim przypadku.
Czy łączenie segmentów DXF zmniejsza liczbę węzłów? Zwykle nie. Łączenie scala fragmenty w dłuższą polilinię, co może ułatwić zaznaczanie konturu, ale zazwyczaj zachowuje wierzchołki. Przy zbędnych punktach użyj upraszczania lub ponownego dopasowania krzywej, przy nakładających się kopiach usuń duplikaty, a gdy geometria to uzasadnia, narysuj od nowa rzeczywiste łuki lub krzywe spline.
Ile segmentów to zbyt wiele dla CNC? Nie ma uniwersalnego progu. Dopuszczalna liczba zależy od złożoności kształtu, tolerancji, oprogramowania CAM, sterownika i operacji. Prosty okrąg złożony z setek drobnych linii wymaga sprawdzenia; szczegółowy kontur dekoracyjny może zasadnie potrzebować większej ilości geometrii.
Czy eksportować krzywe DXF jako krzywe spline, czy jako polilinie? Użyj typu encji, którego obsługę dokumentuje Twoje docelowe oprogramowanie i z którym niezawodnie sobie radzi. Krzywe spline pozwalają zachować gładką geometrię w zwięzłej postaci, natomiast niektóre starsze lub wyspecjalizowane procesy preferują łuki lub polilinie. Przetestuj jedną krzywą, sprawdź import i zweryfikuj wymiary przed konwersją całego pliku.
Czy mogę zmniejszyć liczbę węzłów DXF bez zmiany cięcia? Tylko w granicach tolerancji, która musi wynikać z wymagań zadania. Upraszczanie może przesuwać krawędzie, łagodzić narożniki i zmieniać elementy odpowiedzialne za dopasowanie. Porównaj uporządkowaną geometrię z plikiem wzorcowym i zmierz kluczowe wymiary; gdy liczy się dokładność, odtwórz geometrię mechaniczną w CAD.
Źródła
- W3C — SVG Paths — Normatywna definicja poleceń ścieżek SVG i reprezentacji krzywych.
- Autodesk — POLYLINE DXF reference — Dokumentacja źródłowa struktury polilinii i następujących po niej rekordów wierzchołków.
- Autodesk — SPLINE DXF reference — Dokumentacja źródłowa stopnia krzywej spline, węzłów, wag i punktów kontrolnych.
- SendCutSend — Preventing dense nodes — Wskazówki dotyczące wymagań programu docelowego, konwerterów, krzywych spline podzielonych na segmenty i porządkowania krzywych.
Dobry DXF nie musi mieć najmniejszej możliwej liczby encji. Powinien zachowywać zamierzoną geometrię w postaci, którą program docelowy potrafi wykorzystać. Jeśli Twoim jedynym źródłem jest obraz, przygotuj plik DXF do sprawdzenia w PerfectVector, przeprowadź opisane wyżej kontrole encji i wymiarów, a jeśli wyniki wskazują na problemy, odrzuć lub popraw go przed użyciem w CAM.
Więcej z bloga

Przekształć obraz w SVG do cięcia plazmowego CNC
Przekształć obraz w SVG do cięcia plazmowego CNC, a następnie sprawdź wyspy, mostki, zamknięte kontury, drobne detale i ustawienia CAM przed pierwszym cięciem próbnym.

Od obrazu do szkicu w FreeCAD: twórz edytowalną geometrię
Wybierz odpowiednią metodę przekształcania obrazu w szkic w FreeCAD: obrysuj przeskalowany obraz referencyjny do precyzyjnej pracy w CAD lub przekonwertuj odpowiednią płaską grafikę do DXF i uporządkuj geometrię.