Ma ktoś może skrypt albo jakiś przykład jak przypisać sobie do skrótu klawiszowego włączanie i wyłączanie warstwy (toggle) bo to klikanie myszkOM doprowadza mnie do szału?
Chodzi o to, żeby pozbyć się tej kretyńskiej funkcji (z helpa do Eagle'a):
"If tPlace or bPlace is selected, t/bNames, t/bValues, t/bOrigins and t/bDocu are automatically selected, too."
Dnia 10/7/2004 7:37 PM, Użytkownik Górski Adam napisał:
To znam ale chodzi konkretnie o warstwe t/bplace, chcę miec możliwość włączania i wyłączania tylko tej jednej, a ona jest połączona z kilkoma innymi. Niestety to strasznie upierdliwy 'ficzer' i próbuję się go jakoś pozbyć.
No tak ale jeszcze się włączają dodatkowo, Origins, Names i Values i jak zrobię włącz/wyłącz to stracę te warstwy, które były pokazane. Dlatego właśnie myślę o skrypcie, który by zapamiętał wyświetlone warstwy wyłączył/włączył Place i ustawił pozostałe jak były.
No właśnie o to mi chodzi, mógłbyś się podzielić jak to masz zrobione (priv)? Miałbym przynajmniej punkt zaczepienia jak się za to zabrać, jeszcze się w skrypty nie bawiłem ale powoli do tego zmierzam.
Mam jeszcze takie pytanie może będziesz wiedział. Podmontowałem sobie wszystkie funkcje pod skróty klawiszowe lewy Alt + klawisz, ale to jeszcze w wersji 4.09. Teraza pracuję na wersji 4.11 no te skróty chodzą teraz nieciekawie bo pod Alt coś tam sami podmontowali i muszę naciskać ten skrót dwa razy, żeby wywołać funkcję. Czy da się jakoś wyłączyć te wewnętrzne przypisania eagla, żeby Alt był wolny i moje skróty chodziły normalnie? Już się do nich przyzwyczaiłem i nie chciał bym ich zmieniać.
Adam Jurkiewicz wrote on Fri, 08 Oct 2004 09:01:38 +0200:
Zwykłym skryptem tego nie zrobisz. Myślałem żeby zrobić to przy pomocy ULP, ale natknąłęm się na problem - do pola obiektu nie można przypisać wartości!. Np. [.....] UL_LAYER l; l.visible = 0; <- tutaj wyskakuje parse error [.....] Wygląda tak, jakby obiekty były read-only. Kurna, ale w helpie nic na ten temat nie widziałem.
Spokojnie można to zrobić poprzez kombinację ULP-a i skryptu: ULP otczytuje aktualny stan warstw i generuje odpowiedni skrypt który zostaje zapisany np. w pliku dupa.scr. I jeśli nasz ULP znalduje się np. w pliku dupa.ulp, to podpięcie pod jakiś klawisz sekwencji komend "run dupa.ulp; script dupa.scr;" powinno dać oczekiwany efekt. Problem w tym że jest to IMO mało eleganckie rozwiązanie.
AFAIR podpieli pod Alt-a chwilowe przełączanie się na alternatywną siatkę. Przy czym u mnie pod Linuksem nigdy to nie działało, a gdy bawiłem się przez chwilę wersją pod Win, to ten ficzer też jakoś nie chciał działać. Inna sprawa że nigdy tego nie potrzebowałem. W każdym bądź razie nie zauważyłem problemu o którym piszesz.
Dnia 10/8/2004 10:29 AM, Użytkownik Jan Dubiec napisał:
Wow, pomysł czadowy :) ciekawe jak by się rozkładało czasowo takie wywołanie. Jak się przegryzę przez te skrypty to może spróbuje.
No faktycznie jest coś takiego, nawet mi to działa. Jak się prowadzi ścieżkę to po przytrzymaniu Alt chodzisz z drugim gridem przy czym grid wizualny pozostaje bez zmian.
Poszukam, może da się ten ficzer wyłączyć albo przenieść pod inny klawisz. Tez z tego nie korzystam bo zmianę gridu mam podmontowaną pod osobne klawisze.
Jan Dubiec wrote on Fri, 8 Oct 2004 11:15:35 +0000 (UTC):
W przypływie weny twórczej napisałem małego ULP-a który tworzy skrypt w pamięci, tzn. nie ma potrzeby użycia dodatatkowego pliku na dysku na ciało skryptu. ULP włącza/wyłącza warstwę tPlace zachowując przy tym aktualny stan warstw tOrigins, tNames, tValues i tDocu.
Instrukcja obsługi:
Zapisujemy ULP-a do pliku, np. dupa.ulp i umieszczamy go gdzieś na ścieżce ULP-ów tak aby Eagle go widział.
Dla jakiejś kombinacji klawiszy przypisujemy komendę "run dupa.ulp;"
Kolejne przyciśnięcia wybranej kombinacji powodują zmianę stanu warstwy tPlace na przeciwny, tj. jeśli była ona włączona, to po wciśnięciu wybranej kombinacji będzie wyłączona, itd.
A oto i ULP który może posłużyć jako baza do napisania czegoś bardziej zaawansowanego:
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.