Jak ustawić filtr warstwy w LISPie?


Rekomendowane odpowiedzi

Dyskusja zaczyna być jałowa. Dyskusja o ideologii używania czy nieużywania tego czy innego programu mnie nie pociąga. Jakieś tam przekonanie na temat swojej wiedzy o (A/V)LISP-ie, budowy struktury rysunkowej bazy danych DXF dokumentu AutoCAD-a, mam, być może przesadzone. Słysząc o 100% zgodności dwg ZwCAD-a z AutoCAD-em, także głębokiej zgodności implementacji LISP-a w tych dwóch programach, spodziewałem się że te rzeczy są zgodne, jak ma to miejsce w przypadku np. warstw, rodzajów linii czy stylów tekstu. Stąd też zabrałem głos na ten temat, widać niepotrzebnie. Choć nauka jakaś z tego płynie: choćby to że kruszy tem mit 100% zgodności.

kojacek

Cóż, mimo, że nie udało mi się jeszcze dowiedzieć wszystkiego czego potrzebowałem, żeby zrealizować zadanie to nie uważam, że dyskusja jest jałowa. Dowiedziałem się czegoś, i o ZW, i AutoCADzie :) , a do tego znalazłem rozwiązanie w 75% wystarczające! Główne pytanie wątku było stricte ZWcadowskie i ściśle techniczne.

Nikt natomiast nie pisał tu nic o ideologii, a pierwsze porównanie obu programów to było wyliczanie ich zgodności w procentach, i ustalanie jakiegoś standardu do jakiego wskazane jest się dostosować, żeby być "poprawnym". Akurat na tym forum, a szczególnie tym podforum, wszyscy dobrze sobie zdają sprawę z różnic między obu programami i właśnie tu rozgryzają pewne niezgodności i otrzymują wzajemne wsparcie. Większość operuje zarówno na ZW i AC. Ja akurat skupiam się na jednym, bo grzebanie w LISPie to moje poboczne zajęcie i mogę sobie na to pozwolić, żeby ułatwiać pracę swoimi programikami tylko i wyłącznie sobie i ludziom w mojej pracowni.

Nigdzie nie twierdziłem, że któryś program jest lepszy i daleko mi od fanbojskiego hejtowania ;) w stylu ludzików z białymi słuchaweczkami w uszach ;). Technologiczna jakość i doskonałość któregoś programu CAD to nie jedyny czynnik wyboru tego czy innego środowiska cad. Mogę powiedzieć, że autocad stoi technologicznie wyżej, ale w moim wypadku przeważyły zasady upgradu oferowane przez autodesk na początku lat 2000 i zachowanie w stylu korporacji Microsoft. Po prostu zraziłem się do samej korporacji, a nie aplikacji jako takiej - takie moje subiektywne odczucie.

Zdecydowana większość osób na tym forum zdaje sobie sprawę z ograniczeń i przewag ZW w stosunku do AC, świadomie wybrała ten a nie inny produkt i dlatego można tu zazwyczaj dostać fachową poradę i wsparcie... Nie przypominam sobie, żeby ktoś głosił na forum 100% zgodność, a tym bardziej budował tutaj takie mity.

Dla mnie nauka jest taka, że już nieźle musi być z ZWcadem na rynku, skoro starzy wyjadacze autocadowskiego świata kruszą swoje mity na ZWcadowym forum....

pozdr.

=2P=

Edytowane przez 2P
Odnośnik do komentarza
Udostępnij na innych stronach

Z zaciekawieniem przeczytałem dyskusję i wykonałem test we własnym zakresie ZwCAD2012 [2011.10.30(17176)]. Zapewne kol. 2P też taki test wykonał.

Test1.

Dwa identyczne rysunki (kopia1.dwg i kopia2.dwg) z identycznymi zestawami "filtrów warstw" w każdym z rysunków (u mnie dwa filtry filtr1 i filtr2). Filtry zdefiniowane poprzez GUI ZwCAD'a. Oba rysunki otwarte. Jeżeli wejdę do jednego i ustawię zestaw widocznych warstw za pomocą filtr1, na liście rozwijalnej mam tylko te warstwy. Po przełączeniu się na drugi rysunek na liście warstw niestety o zgrozo mam warstwy zgodnie z filtr1 a tego nie chcę. Wniosek jest taki, że na 100% aktualny filtr nie jest nawet trzymany w czasie sesji w rysunku nie mówiąc nawet o zapisie. Aktualny zestaw warstw opisanych za pomocą "filtra warstw" jest wspólny dla wszystkich rysunków w ramach jednej instancji ZwCAD'a. Aktualny "filtr warstw" jest cechą instancji a nie sesji rysunku dwg.

Test2.

kopia1.dwg otwarta w jednej instancji ZwCAD'a u stawiony filtr1. Otwieram kopia2.dwg w drugiej instancji ZwCAD'a. Lista rozwijalna pokazuje wszystkie warstwy. Po wejsciu do managera warstw mam aktualnie obowiązujący w pierwszej instancji filtr1. Po zatwirdzeniu OK filtr jest uaktywniony i mam w drugiej instancji listę warstw ograniczoną do filtr1. Zmiana na filtr2 i OK. Przejście na pierwszą instancję lista warstw zgodnie z filtr1 ale jak wejdę do managera warstw aktualny "filtr warstw" to filtr2. Po zatwierdzeniu oczywiście następuje zmiana na liście rozwijalnej. Wniosek: aktualny "filtr warstw" jest ustawiany przez GUI ZwCAD'a - okno managera warstw poprzez odczytanie klucza z rejestru, o którym pisał kol. 2P i obowiązuje dla całej instancji.

Zgadzam się z kol.Kojackiem. Abstrachując od pojęcia "100% zgodności" na której róznież niespecjalnie mi zależy, to taki sposób implementacji "filtra warstw" jest absurdalny. Wydaje mi się, kol. 2P póki co nie znajdzie dobrego rozwiązania ze względu na ograniczenia platformy. Może gdyby się pobawić API i w momencie aktywacji okna rysunku podmieniać klucz z rejestru a potem otworzyć i zamkąć z zatwierdzeniem okno managera warstw? ( taki żarcik ).

Edytowane przez perlon
Odnośnik do komentarza
Udostępnij na innych stronach

1) Moim zdaniem powinno wam zależeć na 100% zgodności zawsze, bowiem nie żyjecie tylko w swoim światku - prawdopodobnie pracujecie (czy spotkacie się) na plikach które mogą "przechodzić" przez różne aplikacje, poczawszy od AutoCAD-a, ZwCAD-y wszelkiej maści po wszystkie inne, zapisujące ogólnie dwg. Jak najszersza zgodność jest jak najbardziej pożądana.

2) Wobec powyzszej mojej opinii, wydaje mi się że brnięcie przez producenta ZwCAD-a, w filtry własnego pomysłu (ICAD_LAYERFILTERS) jest pomysłem złym. Zwłaszcza że funkcjonalnie, rozwiązaniem nie lepszym a jak widać raczej gorszym. Prędzej czy później (obawiam się że później jednak) przyjąć będzie musiał (powinien) jednak standard filtrów adesk-owy.

3) Póki co, (myslę że małym kosztem) możecie sobie wyLISPować coś na kształt nieudokumentowanego polecenia jakie jest w AutoCAD-zie, mianowicie +LAYER. Wygląda ono tak:

post-451-0-22690300-1353322050_thumb.png

czyli z listy dostępnych filtrów w aktualnym rysunku, tworzy listę słów kluczowych, a po wybraniu dowolnego z nich uruchamia menadzera warstw z włączonym określonym filtrem. LISP-owo wyglądać to może tak że wystarczy zrobić funkcję z argumentem w postaci nazwy filtra (jeden z istniejących w rysunku), która dokonywałaby zapisu w rejestrze i uruchamiała menadzera warstw. Sprawny LISP-acz mógły zrobić to pewnie w 10-15 minut.

kojacek

Odnośnik do komentarza
Udostępnij na innych stronach

Zapewne kol. 2P też taki test wykonał.

Tak wykonałem ten sam test (Test1), oczywiście z identycznym skutkiem. Porównywałem również dwa identyczne rysunki zapisane do dwg, ale z niby ustawionymi innymi filtrami. Nie różnią się ani o jeden bit. Tak więc sposób zarządzania filtrami w ZWcadzie 2012 mamy odgadniony :) Różnimy się siłą negatywnego stosunku do zastosowanego rozwiązania. Może dlatego, że ja rzadko kiedy pracuje równolegle na dwóch rysunkach i równorzędnym wykorzystywaniem filtrów.

Praktycznie do całkowitego rozwiązania mojego problemu brakuje wiedzy jak wpłynąć na zawartość wyświetlanej listy w toolbarze bez wchodzenia w okno warstw....

Pozdr.

Odnośnik do komentarza
Udostępnij na innych stronach

1) Moim zdaniem powinno wam zależeć na 100% zgodności zawsze, bowiem nie żyjecie tylko w swoim światku - prawdopodobnie pracujecie (czy spotkacie się) na plikach które mogą "przechodzić" przez różne aplikacje, poczawszy od AutoCAD-a, ZwCAD-y wszelkiej maści po wszystkie inne, zapisujące ogólnie dwg. Jak najszersza zgodność jest jak najbardziej pożądana.

Czy tylko ja odnoszę wrażenie, że, jak głoszą słowa pewnej piosenki, "Podzielono świat na części [...] Podzielono świat na klatki [...] Podzielono świat na frakcje [...] Podzielono świat na sekty [...] Podzielono świat na klasy [...]", a teraz jeszcze CAD-ludzi podzielono na "My i Wy", albo "My i Oni"... :-?

Również mogę napisać, że Wam autoCadowcom powinno zależeć na zgodności - zawsze - powinniście dręczyć autodeska, żeby zrównał możliwości wersji LT do podstawowej, bo jest odpowiednio tak samo nie zgodna z pełną wersją jak InteliCADy, tylko trochę w innych aspektach. A może to autodesk powinien wprowadzić to co mają inne CADy dla zgodności? Przecież autodesk nie jest jedynym podstawowy światem.

To jest właśnie typowa postawa monopolistyczno-korporacyjna!

Dążenie do zgodności oprogramowania może mieć sens, jeśli w jednej firmie korzysta się z obu programów. W dawnej mojej firmie konieczne było stopniowe dokupywanie stanowisk i okazało się, że nowe autocady nie potrafiły sensownie współpracować ze starszymi (bo zawalono upgrady). Jeden z IntelliCADów (nie ZW) stał się platformą pośrednią i został, z czasem przestawiając wszystko w firmie na różne IntelliCADy.

Drugi powód zgodności, to zgodność na poziomie GUI. Skoro wszyscy znają autocada, prosto przestawić nowego pracownika na program podobnie wyglądający. Powstaje pytanie jakie są koszty przestawienia, może wcale nie takie duże...

Mnie do szczęścia absolutna kopia acada nie jest potrzebna. Sorry, ale co mi po zgodności z tym niby podstawowym światem z którym współpracuje moja firma, jeśli to oni wciąż mnie proszą o pliki dwg, ale tylko w wersji 2007, a najlepiej to jeszcze 2004, bo nowszych nie otwierają. Mam im powiedzieć, że powinno im zależeć na 100% zgodności???

2) Wobec powyższej mojej opinii, wydaje mi się że brnięcie przez producenta ZwCAD-a, w filtry własnego pomysłu (ICAD_LAYERFILTERS) jest pomysłem złym. Zwłaszcza że funkcjonalnie, rozwiązaniem nie lepszym a jak widać raczej gorszym. Prędzej czy później (obawiam się że później jednak) przyjąć będzie musiał (powinien) jednak standard filtrów adesk-owy.

Z moich pobieżnych testów przeprowadzonych dzisiaj na ostatniej wersji ZWcada2012+ wysuwam wniosek, że zarządzanie filtrami zostało zmienione. Nie wgłębiłem się na dziś, czy zrealizowano to tak jak w autocadzie, ale możliwe, że tak. O ile we wcześniejszych ZW GUI filtrów było wzorowane na wcześniejszych AC, to w najnowszym okienko wygląda tak jak w nowszych AC - możliwe, że za tym również poszła zgodność wewnętrzna. Ciesz się ZWcadowy światku ;) ;) !!!

pozdr.

Odnośnik do komentarza
Udostępnij na innych stronach

Czy tylko ja odnoszę wrażenie, że, jak głoszą słowa pewnej piosenki, "Podzielono świat na części [...] Podzielono świat na klatki [...] Podzielono świat na frakcje [...] Podzielono świat na sekty [...] Podzielono świat na klasy [...]", a teraz jeszcze CAD-ludzi podzielono na "My i Wy", albo "My i Oni"... :???:

Ja odniosłem takie wrażenie parę postów wcześniej, ale w odwrotną stronę... ;)

Również mogę napisać, że Wam autoCadowcom powinno zależeć na zgodności - zawsze - powinniście dręczyć autodeska, żeby zrównał możliwości wersji LT do podstawowej, bo jest odpowiednio tak samo nie zgodna z pełną wersją jak InteliCADy, tylko trochę w innych aspektach. A może to autodesk powinien wprowadzić to co mają inne CADy dla zgodności? Przecież autodesk nie jest jedynym podstawowy światem.

Umówmy się jednak że rozróżnimy funkcjonalność programu od formatu pliku. W pełnym i LT tenże ostatni niczym się nie różni. Zatem nie ma o czym gadać. Na marginesie zaś - argument typu: "Wprawdzie u nas nie wszystko jest ok, aly wy Murzynów bijecie..." jest taki sobie... ;)
To jest właśnie typowa postawa monopolistyczno-korporacyjna!
Hmmm... a co co ja mam z tym wspólnego?
Dążenie do zgodności oprogramowania może mieć sens, jeśli w jednej firmie korzysta się z obu programów. W dawnej mojej firmie konieczne było stopniowe dokupywanie stanowisk i okazało się, że nowe autocady nie potrafiły sensownie współpracować ze starszymi (bo zawalono upgrady). Jeden z IntelliCADów (nie ZW) stał się platformą pośrednią i został, z czasem przestawiając wszystko w firmie na różne IntelliCADy.

Drugi powód zgodności, to zgodność na poziomie GUI. Skoro wszyscy znają autocada, prosto przestawić nowego pracownika na program podobnie wyglądający. Powstaje pytanie jakie są koszty przestawienia, może wcale nie takie duże...

Każdy może mieć zdanie na każdy temat. Ja uważam że zgodność powinna być jak najdalej idąca. Cały czas mówię o zgodności pliku, nie programów. To drugie to rzecz raczej wtórna według mnie.
Mnie do szczęścia absolutna kopia acada nie jest potrzebna. Sorry, ale co mi po zgodności z tym niby podstawowym światem z którym współpracuje moja firma, jeśli to oni wciąż mnie proszą o pliki dwg, ale tylko w wersji 2007, a najlepiej to jeszcze 2004, bo nowszych nie otwierają. Mam im powiedzieć, że powinno im zależeć na 100% zgodności???
Jak wyżej, nie zgadzam się z taką opinią - jednak zbyt wiele trzeba by o tym mówić, a to nie jest ten temat.
Z moich pobieżnych testów przeprowadzonych dzisiaj na ostatniej wersji ZWcada2012+ wysuwam wniosek, że zarządzanie filtrami zostało zmienione. Nie wgłębiłem się na dziś, czy zrealizowano to tak jak w autocadzie, ale możliwe, że tak. O ile we wcześniejszych ZW GUI filtrów było wzorowane na wcześniejszych AC, to w najnowszym okienko wygląda tak jak w nowszych AC - możliwe, że za tym również poszła zgodność wewnętrzna.
No i dotarlismy wreszcie do sedna. Opublikuj jakiś plik z tymi nowymi filtrami, z ciekawości pobadam jak to wygląda.

kojacek

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ść
Dodaj odpowiedź do tematu...

×   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