wycinanie napisów z gerbera

Nov 15, 2017 117 Replies

W dniu 18.11.2017 o 10:47, EdiM pisze:

No to napisać własny sofcik (skrypt) który za linią G04 APERTURE END LIST* zachowuje wszystko między G54D11* a kolejnym G54. D11 to akurat u mnie w pliku silk apertura 0,008 czyli powiedzmy odpowiedzialna za obrysy.

W dniu 18.11.2017 o 18:17, JS pisze:

Napisałem obok, teraz uzupełnię. Może być że obrysy są dla różnych obudów robione różnymi liniami. Skoro to jeden klient to ma pewnie te same biblioteki w różnych projektach. Musiałbyś napisać program który pozostawia nienaruszony początek aż do G04 APERTURE END LIST*, a potem sprawdza czy pojawia się apertura z listy tych przypisanych do obudów np D10 i D11. Wtedy np. pisze do jednego pliku) to co jest między G54D10 lub G54D11, a następnym G54. Do drugiego pliku pisze to co jest kreślone aperturami nie wymienionymi w tym configu. Masz rozdzielone obrysy od pozostałych obiektów. Piszesz w czym lubisz: c, basic, bash, awk

W dniu 18.11.2017 o 13:09, Marek S pisze:

Ma plik z warstwą silk i musi to rozbić na warstwy obudów i napisów.

W dniu 19.11.2017 o 18:19, JS pisze:

Współczuję ci współpracy z takimi klientami. Nie sądziłem, że komuś chce się jeszcze ręcznie robić rysunki do płytek.

W dniu 18.11.2017 o 20:17, Marek S pisze:

Czyli mergowałeś warstwy, bo CAD nie radził sobie z plikami z Eagla. To już wiemy po co wszystkie warstwy w jednym pliku :)

No ale on dostaje zmiksowane i musi rozdzielić bo ciężko mu wymóc na projektancie zmiany w projekcie.

W dniu 2017-11-19 o 19:07, Mario pisze:

Zgadza się. Mergowałem wybrane, te które chciałem aby się połączyły - to dla tych, którzy nie doczytali całości dialogu.

Ja wiem, że JS dostaje burdel w jednym pliku. Sam to napisał w wątku otwierającym. Dlatego proponuję JS bunt i zaprzestanie przyjmowania takich zleceń - oczywiście, o ile nie musi wchodzić w d... zleceniodawcy. Jeśli musi... no cóż, ma przesrane :-)

A to czy na projektancie nie może wymóc takiej strategii - tego nie wiemy przecież. Czytałem wątek i nigdzie o tym nie było napisane... o ile czegoś nie przeoczyłem lub po moim komentarzu zostało napisane.

Jak to gdzieś napisałem... jeśli masz kwadratowe opony po ostrym hamowaniu bez ABS i dobre układy, to możesz wymóc aby w asfalcie porobili dziury pasujące do Twoich opon. Wtedy przestanie trząść autem. JS właśnie szuka takich znajomości próbując zająć się tematem od d... strony :-)

W dniu 2017-11-19 o 19:02, Mario pisze:

Proponuję podczepienie się pod mój komentarz udzielony Tobie oczko wyżej ;-)

W dniu 18.11.2017 o 18:17, JS pisze:

Hmm, czyli nakładasz nowy opis z tego co rozumiem. Co za problem użyć do tego prostokąta jako tło, który zakryje to, co pod spodem. I tak musisz to zrobić na piechotę.

W dniu 19.11.2017 o 20:30, Marek S pisze:

Nasz klient nasz Per Pan. Dodatkowa robota powinna dać dodatkową cenę.

Bez przesady. Raz zmarnuje parę godzin aby napisać program, a potem przy przetwarzaniu projektu będzie siedział dodatkową godzinkę aby porozdzielać oznaczenia od obrysów. I to aby zdefiniować kryteria dla danego projektanta. Następnym razem przepuszcza gerbera przez swój program i patrzy czy wynik prawidłowy.

W dniu 2017-11-19 o 22:15, Mario pisze:

Stąd moja asekurancka odpowiedź dla JS: jeśli nie może wymóc standardów, to musi mieć motywację, pewnie finansową, aby dziabać się z oczyszczaniem gerberów z pierdyliona krzywych.

No chyba, że następnym razem tenże projektant odkryje guzik "font size / font face" w swoim programie i JS będzie znów parę godzin pisał soft. Nie tędy droga, no chyba, że klient szczodry. Wtedy to nie ma problemu by soft pisać do każdej jego wizyty :-D

W dniu 20.11.2017 o 02:09, Marek S pisze:

Dopóki apertury opisów będą się różnić od apertur obrysów to tylko w configu musi wpisać które apertury ma traktować jako obrysy. Nie mówię że załatwi wszystkie przypadki, ale być może w znacznej części upierdliwych projektów może sobie to zadanie zautomatyzować.

W dniu 2017-11-18 o 20:17, Marek S pisze:

Nie mam takich informacji - stąd użyłem słowa 'chyba'.

Nie podyskutujesz ze mną, bo nigdy nie wychodziłem poza wygenerowanie gerberów i wysłanie do zrobienia. Jeszcze jakiś czas temu jak wypuszczałem gerbery to przy obrysie płytki zaznaczałem flagę "dołącz do każdej warstwy", ale każdy z wynikowych gerberów rozumiałem jako gerbery dla jednej warstwy, a nie połączonych warstw.

Rozumiem, że tworzyłeś jeden plik gerbera zawierający dane z różnych warstw, ale podejrzewam (czyli chyba! - bo nie znam formatu gerbera), że wtedy znikała informacja co jest z której warstwy. Jeśli te informacje znikają, to nie nazwałbym takiego pliku "plikiem gerbera _dla_ wszystkich warstw" bo nie zawiera już informacji przeznaczonych dla poszczególnych warstw. O takim, który by zawierał te informacje pisałem, że chyba nie istnieje.

Dobra. Głowy nie dam. Tak po prostu zrozumiałem, że z warstwy opisowej chce usunąć teksty zostawiając obrysy elementów. W temacie gerber od 20 lat siedzę w swojej własnej jednoosobowej enklawie i chyba niepotrzebnie się wychylałem, bo moja wiedza ogranicza się tylko do tego ca ja sam robię. P.G.

W dniu 2017-11-18 o 18:17, JS pisze:

Moim zdaniem to nigdy nie powinno tak działać. Ten kto ma u siebie projekt płytki może przecież wygenerować odpowiednie pliki kilkoma kliknięciami.

Ja, w ramach dokumentacji, robię zawsze dwa pdf-y dla strony płytki z elementami. Na jednym są obrysy i oznaczenia elementów (na tle szarych ścieżek), na drugim obrysy i wartości elementów (na tym samym tle). Robienie dwóch plików wynika z tego, że jak poukładam na styk elementy

0603 i trochę 0402 to nijak mi się jedno i drugie nie chce zmieścić, aby jeszcze było czytelne. Jak na drugiej stronie jest tylko kilka elementów to wtedy tak ustawiam oznaczenia i wartości aby nie były na sobie i robię jednego pdf-a dla tej strony.

Jakiś czas temu postanowiłem przenieść się z Protela do KiCada i właśnie w wolnych chwilach tworzę od zera moją bibliotekę footprintów, bo te które są z KiCadem nie umożliwiają wykonania takiej dokumentacji. Nie wezmę się za robienie pierwszej płytki zanim nie będę pewny, że uda mi się zrobić dla niej dobrą dokumentację.

Jak ci projektanci od których dostajesz te pliki nie umieją ich zrobić jak trzeba to niech Ci dostarczą pliki źródłowe. Powinno być Ci łatwiej. P.G.

W dniu 2017-11-20 o 02:49, Mario pisze:

No właśnie to "jeśli" mam na myśli. Zmiana czcionki lub jej parametrów (bold, rozmiar, itp) = zmiana apertury. Po drugie: użycie ścieżek ze zbliżonymi parametrami do czcionki zniweczy przedsięwzięcie. A już jeśli ktoś wpadnie na pomysł umieszczenia powtarzającego się logo na silkscreenie, to też będzie wyzwanie. Tak więc uważam, że filtrowanie za pomocą apertur to obejście a nie rozwiązanie.

W dniu 2017-11-20 o 09:52, Piotr Gałka pisze:

Ok

Tak założyłem i dlatego chciałem tylko Ci przedstawić jak to w praktyce wygląda na przykładzie Eagle, którego używam.

Ilość sposobów miksowania warstw ogranicza tylko fantazja twórcy oprogramowania oraz użytkownika. Jak się domyślam "dołącz do każdej warstwy" oznacza - jak sama nazwa wskazuje - umieszczenia klona tejże warstwy podczas eksportowania do gerbera każdej innej.

Jak wspomniałem, w Eagle jest to dużo lepiej rozwiązane. Oczywiście jako ciekawostkę to opisuję. Tam jest tzw CAM Processor -to taki moduł, w którym definiujesz sobie dowolną liczbę plików do wyeksportowania. Mogą to być gerbery i mnóstwo innych typów dla przeróżnych maszyn. Przy każdym z tych eksportów określasz warstwę lub warstwy jakie będą uwzględnione. W konsekwencji jednym kliknięciem możesz wygenerować całą baterię plików. Zmieniasz coś w projekcie, klikasz i wszystkie pliki masz zaktualizowane. Jak dla mnie rozwiązanie the best. Trudno o bardziej elastyczne podejście.

Już tłumaczę jak to jest. Po prostu - nigdy takiej informacji w pliku gerbera NIE MA. Plik gerbera to tylko lista koordynat typu pociągnij linię z (X,Y) do (X1,Y1) i na tym koniec. A która warstwa czy warstwy były do tego użyte - gerber "nie wie". To tak jakbyś do notepada wkleił treść newsa z jakiejś strony internetowej a drugi fragment z Worda, potem zapisał jako TXT. Też nie będzie żadnej informacji o pochodzeniu teksu a także poszczególnych jego fragmentów.

Aby obejść to ograniczenie przyjęto konwencję nadawania gerberom różnych rozszerzeń. Te rozszerzenia informują operatora o tym co dany plik zawiera: czy układ ścieżek, czy sposób cięcia PCB czy... itd. Rozszerzenie pliku tylko w szczególnym przypadku może być powiązane z konkretną warstwą programu projektowego. Plik gerbera ma zawierać komplet informacji dla poszczególnych operacji - a czy te informacje pochodzą z jednej lub 10ciu warstw - nikogo nie obchodzi.

A ja bym w ogóle nie nazywał tego bo to już filozofowanie. Po prostu plik gerbera dla miedzi warstwy górnej, dolnej, plik gerbera do wycinania PCB i mnóstwo innych. Liczy się wyłącznie zastosowanie zestawu plików jakie przekazujesz operatorowi a nie skąd je masz.

Zrozumiałem to podobnie lecz z wyłączeniem pojęcia "warstwy". Dostał po prostu groch z kapustą: zmiksowane (zapewne w locie - podczas eksportowania) 2 warstwy, których nigdy nie powinno się miksować - przynajmniej nie przychodzi mi do głowy praktyczne zastosowanie takiej czynności. Obie warstwy powinny stanowić dwa różne pliki gerbera.

Eeee tam... moim zdaniem zawsze warto pogadać i dowiedzieć się czegoś nowego. Wiele razy przytrafiło mi się dowiedzieć zupełnie nowych rzeczy w temacie, który wydawało mi się, że znam dobrze. :-)

W dniu 2017-11-20 o 12:19, Marek S pisze:

U mnie (w Protelu 3.0) to jest jedna warstwa na której są:

- obrysy elementów (to co namaluję tworząc footprint),

- desygnatory elementów (R1,...),

- wartości elementów (1k,....).

Dlatego ja jego problem rozumiałem jako jedna warstwa i wcale nie zmiksowana z dwu różnych.

Jak ta warstwa ma być widoczna to obrysy są zawsze widoczne, a o desygnatorach i wartościach mogę indywidualnie dla każdego elementu decydować czy jest widoczny, czy nie. Zazwyczaj włączam/wyłączam dany typ opisu dla wszystkich, ale czasem aby nie zaśmiecały obrazu wyłączam np. opisy punktów lutowniczych, które nie są fizycznymi elementami a tylko na miedzi.

Jak generuję gerbera tej warstwy to wejdzie do niego to co jest aktualnie widoczne.

Nie wiedziałem, że tak powinno być :) Nie znam innych programów niż ten Protel, którego używam. Jedno i drugie to farba na płytce więc nie widziałem jakiejś niezwykłej zdrożności w tym, ze w Protelu to jedna warstwa. Tak samo nie widzę zdrożności, że pady elementów są na warstwie top i ścieżki (a przecież to co innego) też są na warstwie top. To też według ciebie powinno być na różnych warstwach i dopiero przy generowaniu gerberów byłoby łączone w jeden dla warstwy top? P.G.

użytkownik Piotr Gałka napisał:

To tylko sposób edycji, w eagle są warstwy, w protelu klikadło. Nie umiem uzasadnić rozumowania Marka z rozbijaniem warstwy opisu na obrys i desygnatory, historia nie zna przypadku obwodu z opisem dwukolorowym.

Nie umiem też wejść w głowę projektanta bibliotek eagle co to obrys beztrosko walnął na pady, oczywiście można wtedy poprosić płytkarnię o edycję i zdejmą opis z padów, o ile mają soft z taką opcją.

W dniu 20.11.2017 o 11:47, Marek S pisze:

Ale w sumie on to potrzebuje jako pomocniczą ściągę dla ludzi kładących elementy ręcznie, o ile dobrze zrozumiałem. Ma oczyszczać z natłoku przeszkadzających napisów. To że się zaplącze logo nie ma znaczenia. Nie jest rozwiązaniem idealnym ale lepsze niż całkowicie ręczne usuwanie desygnatorów. Może oczywiście odesłać takich trudnych klientów na drzewo, ale zależy jaka część klientów jest trudna. Odesłanie wszystkich kłopotliwych może oznaczać znaczny spadek dochodów. W sumie taki program to wysiłek kilku godzin pracy. Jak się nie sprawdzi - nie da oszczędności w czasie, to trudno.

W dniu 2017-11-20 o 15:53, Mario pisze:

Widzę, że w innej gałązce tego wątku temat rozwija się. Przemycasz tu informacje, do których się nie ustosunkowałem bo kiedy rozpocząłem dyskusję - ich jeszcze nie było.

Dlatego napisałem, co podkreślę po raz trzeci, że wszystko zależy czy może sobie pozwolić na ten komfort (w podtekście i jawnie napisałem, że to zależy konkretnie od kasy jaką za to dostaje).

Skoro jednak właściwa dyskusja toczy się w innej gałązce, to proponuję EOT. Tu już porozumieliśmy się :-)

W dniu 20.11.2017 o 12:19, Marek S pisze:

To tak jak w Kicadzie. Też generuje wszystkie pliki gerbera za jednym kliknięciem. I t6ez można trochę konfigurować. Np które warstwy eksportować ,czy dołącza obrys płytki do wszystkich warstw, czy w opisowej dawać desygnatory, wartosci elementów, teksty ukryte. No i wybór czy eksportujesz do Gerbera, dxf,ps, svg, czy HPGL.

Dlatego nie ma większego sensu mergowanie dowolnych warstw. Po połączeniu warstwy Front z Back uzyskasz sieczkę połączonych ze sobą ścieżek, która do niczego sie nie nadaje. Co najwyzej przyda się łączenie warstwy komentarzy czy rysunkowej z Silk, lub co mogę sobie wyobrazić z w którąś warstwą miedzi.

Napisałeś: "Ja zrozumiałem, że kolega JS ma jeden plik dla wszystkich warstw" Nie wiem jak w Eagle, ale na przykład w Kicad obrysy, desygnatory i wartości elementu są na jednej warstwie. Można jednak przy tworzeniu gerberów zaznaczyć czy opisy lub wartości lub ukryte teksty mają być rysowane na Silk razem z obrysami. Tak więc filozoficzna kwestia jednego pliku dla wszystkich warstw wywołana jest twoim tekstem, a nie czyimś brakiem zrozumienia co to są warstwy w CADzie :)

Nie w każdym programie jest to możliwe, co wyjaśniłem powyżej. W Kicadzie byłaby co najwyżej możliwość wygenerowania warstwy Silk ze wszystkimi obiektami (czyli obrysy plus teksty) lub tylko z obrysami. Nie da się wydrukować z tekstami ale bez obrysów. No chyba że w ostatniej wersji się coś zmienił, ale do niej mi nieśpieszno bo nastąpiła dość istotna zmiana, która wymusiłaby na mnie trochę pracy.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required