• 0

Polecenie cofnij podczas wyłączania warstw


cajmer

Pytanie

Witam.

Przydatną funkcją jest cofnięcie podczas wyłączania warstw.

Wyłączam - gaszę kolejne warstwy na rysunku i jeśli się pomylę muszę włączyć wszystkie warstwy i  od nowa zaczynam gasić.

Nie można użyć ctrl+z aby cofnąć zgaszenie jednej warstwy.

Pozdrawiam

Odnośnik do komentarza
Udostępnij na innych stronach

17 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Zapewne chodzi, że przy wyłączaniu warstw funkcją _LAYOFF po wyłączeniu kilku warstw pod rząd trafi się na warstwę, której nie zamierzało się wyłączyć, to nie można cofnąć tylko ostatnio wyłączonej warstwy. Cofnięcie ostatniej operacji (_UNDO) powoduje, że zostaną włączone wszystkie warstwy kliknięte podczas ostatniej funkcji _LAYOFF.

Ogólnie przydałoby się, aby przy włączonej funkcji _LAYOFF, _LAYFRZ można było użyć _UNDO po kliknięciu na niezamierzoną warstwę i przywrócona zostałaby tylko ostatnio kliknięta warstwa.

Ja ten problem obchodzę w taki sposób, że po kliknięciu w niepożądaną warstwę zakańczam funkcję _LAYOFF Enterem a następnie z CommandLine kopiuję nazwę ostatnio wyłączonej warstwy i włączam ją np. bezpośrednio w menedżerze warstw poprzez wyszukiwarkę filtrem  w postaci:

Cytuj

*nazwa_wyłączonej_warstwy*

Teraz myślę, że problem autora jest bardziej zrozumiały.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

a nie wystarczyło by przytrzymując klawisz SHIFT w trakcie zaznaczania poszczególnych warstw od A do Z ...pomyłkowo wcisnąwszy warstwę N można z  SHIFTEM "odcisnąć" niepożądany wybór na warstwie N.... działa w trakcie wykonywania komendy ..po uruchomieniu już nie da się cofnąć..undo cofa z automatu całą komendę 😕

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

SHIFT ani CTRL tu nie pomaga, bo zaznaczenie obiektów przed uruchomieniem funkcji _LAYOFF powoduje ich odznaczenie po jej uruchomieniu.

SHIFT i CTRL przytrzymywany przy aktywnej funkcji _LAYOFF niczego nie zmienia, warstwy wyłączają się na bieżąco i nie ma możliwości cofnięcia zaznaczenia.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

Heh, szkoda, że ZWCAD tak intensywnie nie pracuje nad funkcjonalnością swojego programu jak Wy. Wasz starający się support mocno podnosi wartość tego oprogramowania z Chin :) Dzięki za Wasz trud, łatwiej mi będzie namówić kierownictwo do odświeżenia licencji ZWCAD jak już wyjdzie porządna wersja alfa np. ZWCAD 2021. 😉 

Póki co ZWCAD 2015+ jest naszym podstawowym narzędziem pracy.

Edytowane przez Marek-M
Poprawki stylistyczne.
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

Tak już bywa, że jak w jednym miejscu spotykają się użytkownicy tej samej aplikacji, to zawsze ktoś ma podobne problemy. Takiej funkcji też mi brakuje ale nauczyłem się z tym żyć znajdując obejście problemu. Ale jak ktoś oprócz mnie odczuwa brak tej funkcjonalności, to uznałem, że to jest dobra pora aby problem nagłośnić :)

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

Napisaliśmy nowe polecenie, które umożliwia włączenie ostatnio wygaszonej warstwy.

Za załadowaniu skryptu będzie dostępne nowe polecenie loff . Opcja "c" włącza ostatnio wygaszoną warstwę.

Działa ona w taki sposób:

loff-wylaczenie-warstw.gif

 

Skrypt lisp do pobrania loff_wylaczanie_warstw.lsp

Kod źródłowy skryptu

;;
;; Skrypt do wygaszania warstw. forum.cad.info.pl
;;

(defun c:loff (/ ans flag layername)

(setq flag t)
	(while flag
	(initget "Cofnij Wyjdz")
	(setq ans (entsel "\nWybierz obiekty na wartwach do wyłączenia lub [Cofnij/Wyjdź]:"))
	(cond ((= 'list (type ans))
		
	(setq entity (car ans))
	(setq name (entget entity))
	
	(setq layername (cdr (assoc 8 name)))
	(command "_-layer" "off" layername "")
	)
	((and ans (wcmatch ans "Cofnij"))
	(princ "\nMogę cofnąć tylko ostatnią operacje")
	(command "_-layer" "on" layername "")
	)

	((and ans (wcmatch ans "Wyjdz"))
	(setq flag nil)
	)
	((not ans)
	(princ "\nProszę wybrać obiekt, lub wpisać opcje")
	)
	)
	)
	(princ)
)

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

Super. Funkcja działa idealnie.

Jesteście wspaniali.

Dobrze by było udoskonalić funkcje żeby można było cofnąć więcej niż jedną (ostatnią)  warstwę i żeby działało ctrl+z. 

Ctrl+z jest jakoś bardziej intuicyjny niż "c".

Jednakowoż jestem bardzo wdzięczny za pomoc.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

Dziękuję za informacje.

Obawiam się, że skrótu klawiaturowego (Ctrl+z) nie można użyć w lispie, ale edytując nieco kod źródłowy można zmienić literę do cofnięcia wygaszenia warstwy.

Cofnięcie wygaszenia większej ilości warstw jest możliwe, ale wymaga znacznego przebudowania skryptu.
Jeśli jednak będzie więcej osób chętnych to przerobimy skrypt w tym kierunku :)

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

powinna  funkcja layoff być podobnie działająca jak LAYISO/LAYUNISO, z której b. często korzystam.. Izoluję warstwę/grupę warstw a potem wracam do stanu sprzed izolacji. W tej funkcji (LAYISO/LAYUNISO) natomiast brakuje mi działania cofającego "zagnieżdżone" działanie izolowania, tj kiedy dwu i więcej-krotnie izoluję jedno po drugim. Powinna funkcja LAYUNISO także przywracać, w odwrotnej kolejności kolejne kroki zmiany wyświetlania. Dodatkow pomysł z izolowaniem również warstw xrefa uważam za b dobry.. byle działała funkcja odwrotna..

to samo z oops, kasowanie wielokrotne i cofanie też wielokrotne wg kolejności od ostatniej kasowania... to mi się marzy..

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Odpowiedz na pytanie...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie