-
Postów
434 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
36
Treść opublikowana przez perlon
-
Może recovera puścić na dxf'a
-
ZWCAD 2021 SP1 - przezroczystość
perlon odpowiedział(a) na alf temat w ZWCAD Standard i Professional
No niestety Architecture dostaje servicepacki z opóźnieniem. W kontekście : "For users who have bought ZWCAD Architecture, please rest assured that technical support will still be offered, and the last special package will be provided before December 31, 2020." Na czym ma polegać wsparcie techniczne i co kryje się pod pojęciem pakietu specjalnego? Raczej wątpię żebyś się doczekał poprawek tego co cię boli. ZwSOFT nie wydaje poprawek do poprzednich wersji nawet takich które miałyby usuwać ewidenetne błędy działania. Tak na prawdę, support producenta kończy się w momencie wydania kolejnej wersji. Chyba, że się mylę ale nie widziałem aktualizacji starszych wersji. -
2021_problem z wywalaniem programu
perlon odpowiedział(a) na alf temat w ZWCAD Standard i Professional
Wywalanie przy uruchomieniu "na pusto" też jest na porządku dziennym. Drugie i trzecie uruchomomienie to samo. Za czwartym razem sie udało. VERNUM = "2020.09.22(59468)_x64" (read only) -
2021_problem z wywalaniem programu
perlon odpowiedział(a) na alf temat w ZWCAD Standard i Professional
Koleżanka zgłaszała crasch report'y przy pracy w rzutniach. Raczej brak powtarzalności. Ja mam problem z tą wersją taki, że przy otwieraniu rysunków (raczej rysunki nie miały styczności z innymi systemami) wywala błąd krytyczny. Powtórne uruchomienie działa normalnie. Najczęsciej wywala przy otwieraniu pierwszego rysunku w sesji ale potrafi się wywalić przy otwieraniu któregoś kolejnego rysunku. Również brak powtarzalności. Jak mnie nerwy poniosą to wracam do 2020 bo ta wersja nigdy mi się nie wysypywała przy otwieraniu rysunków. 2021 wywala się nagminie. Szacuję że ok. 20 do 40% otwarć kończy się crasch reportem. Zrzucam to troche na zaśmiecony system operacyjny (nalezy mu się już reinstalacja), ale 2020 jakoś sobie z tym śmietnikiem radzi. -
Co dzisiaj robiłem w lispie?
perlon odpowiedział(a) na wedzik temat w Wsparcie programistyczne LISP i VisualLISP
LISP to fajna zabawa, choć nie na darmo ukuło się rozwinięcie tego skrótu : LISP = Lost in Stupid Parenthesis -
zw2021 - wdrożenie bloków dynamicznych - plany
perlon odpowiedział(a) na alf temat w ZWCAD Standard i Professional
Tak, ale te "bloki" to jest to co sobie wymyślił autor nakładki a nie to co potrzebuje w konkretnym przypadku użytkownik. Dylemat wędki i ryby i raczej rozmawiamy o pewnej funkcjonalności uniwersalnej a nie konkretnym rysowaniu kresek na krzyż 😉 Trzeba się jednak pogodzić, ze bloków dynamicznych przez następnyhc kilka lat w ZwCAD'zie nie uświadczymy. -
Wolfram ALFA Lambda1=1,13783
-
Martin. Sam doświadczasz niedostatków wersji Architecture. Wygląda, że zadziałała maksyma Francuskiej Legii Cudzoziemskiej. W każdym produkcie infomatycznym user oczekuje działania zgodnie ze specyfikacją i oczekuje, że problem, który ma do rozwiązania jest w tej aplikacji do rozwiązania. Konkurencja, szczególnie ta wiodąca ma kompletne i ugruntowane na rynku rozwiązania. Projektanci nie mają czasu na wymyślanie hacków na ułomności tylko chcą mieć skuteczne narzędzia CAD do osiągnięcia celu czyli stworzenia dokumentacji. Jeżeli dane narzędzie nie spełnia oczekiwań to je się zmienia. Sam miałem przykre doświadczenie z programem do statyki. Ostatecznie potraktowałem jego zakup jako stratę. Dla ZwSOFT'u to rozwiązanie zapewne było deficytowe i stratedzy uznali, że bieżące i przyszłe przychody nie zrównoważą nakładów na rozwój i dogonienie konkurencji. Nierentowne projekty się zamyka. Ot taka refleksja mię naszła.
-
Wstawianie bloków wg zadanych współrzędnych
perlon odpowiedział(a) na xposdi temat w Wsparcie programistyczne LISP i VisualLISP
A ja od razu z rybą 😉 Trochę pozlepiałem z tego co miałem u siebie i wyszło mi coś takiego. Lisp wczytuje plik csv z trzema atrybutami. Przy testach były kłopoty z kodowaniem polskich liter w pliku csv ale tym się nie zajmowałem. (princ "\nImport współrzędnych wstawienia bloku z pliku tekstowego v.0.1(beta)") (princ "\nCopyright (c)2020 by Perlon") (princ "\nŁadowanie funkcji c:txt2blocks.........") (defun c:txt2blocks ( / p_dat o_dat linia *error* counter) (defun *error* (msg) (if (not (member msg '("Function cancelled" "quit / exit abort"))) (princ (strcat "\nError: " msg)) ) (princ) ) (setq p_dat (getfiled "Wpisz nazwę pliku" "" "csv" 0)) (if p_dat (progn (setq o_dat (open p_dat "r")) (setq counter 0) (setvar 'osmode 0) (while (setq linia (read-line o_dat)) (progn (setq counter (1+ counter)) (if (> (strlen linia) 0) (progn (setq lista (cd:CON_String2List linia '(","))) (command "_.INSERT" "HP_B2" "_s" 1 "_r" 0 (list (car lista) (cadr lista)) (caddr lista) (cadddr lista) (cadr (cdddr lista))) ) ) ) ) ) ) (princ (strcat "\nPrzetworzono " (itoa counter) " punktow")) (princ) ) (princ " Załadowane.") (princ) ; =========================================================================================== ; ; Konwersja takstu z separatorami na liste / ; ; ------------------------------------------------------------------------------------------- ; ; (cd:CON_String2List "1;2;3;" '(";")) ; ; =========================================================================================== ; ;;;* ------------------------------------------------------------------------------------- *;;; ;;;* PODZIAŁ ŁAŃCUCHA TEKSTOWEGO NA LISTĘ *;;; ;;;* *;;; ;;;* Funkcja rozbija łańcuch tekstowy na listę *;;; ;;;* Autor: Bill Kramer - opublikowana w CADENCE 4/97 *;;; ;;;* *;;; ;;;* Argumenty funkcji: *;;; ;;;* =================== *;;; ;;;* S - łańcuch tekstowy do podziału *;;; ;;;* D - lista separatorów (lista łańcuchów tekstowych) *;;; ;;;* *;;; ;;;* Uwaga: Jeżeli w łańcuchu do rozbicia znajdują się liczby typu INT, funkcja *;;; ;;;* zwraca je jako REAL *;;; ;;;* ------------------------------------------------------------------------------------- *;;; (defun cd:CON_String2List (s d / buf res cnt ch digs isnum temp) (setq buf "" cnt 1 isnum T digs '("." "+" "-" "0" "1" "2" "3" "4" "5" "6" "7" "8" "9") ) (repeat (strlen s) (setq ch (substr s cnt 1) cnt (1+ cnt) ) (cond ((and (member ch d) (> (strlen buf) 0)) (cond ((= (strcase buf T) "nil") (setq res (cons nil res)) ) ((= isnum T) (setq res (cons (if (= (atoi buf) (atof buf)) (atoi buf) (atof buf) ) res ) ) ) (T (setq res (cons buf res))) ) (setq buf "" isnum T ) ) ((not (member ch d)) (setq buf (strcat buf ch)) (if (null (member ch digs)) (setq isnum nil) ) ) ) ) (if (> (strlen buf) 0) (setq res (cons (if isnum (atof buf) buf ) res ) ) ) (reverse res) ) -
[VBA] Szkic w UserForm
perlon odpowiedział(a) na pop3k temat w Wsparcie programistyczne LISP i VisualLISP
Nie testowałem i nie wiem czy ZwCAD to obsłuży, ale skoro coś dłubałeś w JS + HTML to może to warto przećwiczyc? https://kojacek.wordpress.com/2020/09/08/okno-html-w-autocad-zie/ https://www.keanw.com/2013/03/implementing-an-autocad-palette-using-html5-and-javascript.html -
[VBA] Szkic w UserForm
perlon odpowiedział(a) na pop3k temat w Wsparcie programistyczne LISP i VisualLISP
Takie coś naskrobałem na szybko w C#. Oczywiście kod jest siermiężny ale działa. Polecam używanie wysokopoziomowych języków .NET przy zabawach z WF ew. WPF. VBA miewa braki, aczkolwiek ma niezaprzeczalną zaletę, że jest "na pokładzie" i nie potrzeba zewnętrznego kompilatora. ZwForm.rar -
[C#] Zdarzenie zmiana schematu kolorów interfejsu
perlon odpowiedział(a) na perlon temat w Wsparcie programistyczne LISP i VisualLISP
Pomocne bo nie trzeba gmerać w rejestrze tylko od razu sprawdzić wartość zmiennej systemowej -
Tak zrobiłem, ale gapowato nie sprawdziłem czy faktycznie został skopiowany a nie został bo kartoteka należy do chronionych. Na administratorze mi podmienił naprawdę a nie na niby i jest ok. Nie pamiętam z którą z poprzednich wersji też miałem ten problem i musiałem podmieniać. A może z każdą?
-
A ja chciałbym potwierdzenia czy romans.shx ma czy nie ma polskie znaki. W 2020 nie maiłem problemów a w 2021 polskich znaków brak.
-
Bardziej mnie interesuje wpływ tej zmiennej a raczej jej składowych na kopiowanie. np. czym się różnią obiekty wklejone przy zmiennej 193 a 192 albo tylko 64. Czy wersja dwg (2018,2013 etc) dotyczy źródła czy celu kopiowania i po co w ogóle jest potrzebne ustawianie tej zmiennej. W AC jej nie znalazłem. Informacja w helpie jest dla mnie co najmniej enigmatyczna.
-
Poszło na PW
-
A i jeszcze jedno. Jaką wersję IFC obsługuje import, bo zapuściłem jakiś zewnętrzny plik, który dostałem z tekli i nie zaczytały się niektóre elementy, a widać je w przeglądarce BIM Vision
-
No i gitara. Import działa co w systemach CAD nie jest tak powszechne. Jak dla mnie super bo wymieniam modele i do tej pory prosiłem kolegę z AC architecture żeby mi to wciągnął do dwg'a. Jak widzę są tworzone poliface mesh'e. Czy jest opcja na solidy?
-
-
W okresie przed upływem 30 dni też nie było problemu bo komunikat się nie pojawia. Ale po 30 dniach kiedy komunikat się pojawia to wyświetla się w kółko. Ja mam klucz sprzętowy i jeżeli zapomnę go zabrać z biura do domu to mimo wszystko w wersji 2020 mogę otworzyć rysunek i sobie coś podglądnąć. Co 10min wyskakuje mi okno daję ok i działam dalej. W 2021beta okno upierdliwie wyskakuje w kółko i ja to interpretuję jako niezgodność z poprzednią wersją. Chyba, że Chińczycy uznali że należy uprzykrzać życie przy pracy w trialu po 30 dniach.
-
W trybie trial po zakończeniu 30 dni brak możliwości zapisu. Ok pojawia się po czasie autosave odpowiedni komunikat Problem jest taki, że wyskakuje w kółko nie dając szansy na zrobienie czegokolwiek innego nawet na zamknięcie programu. Trzeba mieć niezły refleks, żeby wcisnąć OK a potem szybko krzyżyk do zamknięcia programu. Chyba kolejne wyświetlenie tego komunikatu powinno być po upływie czasu kolejnego autozapisu, a nie w kółko. Rozwiązaniem jest wyłączenie autozapisu w ogóle, ale w poprzedniej wersji tak nie było. Komunikat pojawiał się raz w odstępach autozapisu.
-
Czy ktoś ma problemy z uruchomieniem wersji 2021 beta? U mnie nagminnie pojawia się błąd: Podpis problemu: Nazwa zdarzenia problemu: APPCRASH Nazwa aplikacji: ZWCAD.exe Wersja aplikacji: 21.0.1002.58130 Sygnatura czasowa aplikacji: 5f1bca0e Nazwa modułu z błędem: ntdll.dll Wersja modułu z błędem: 6.3.9600.19678 Sygnatura czasowa modułu z błędem: 5e82c88a Kod wyjątku: c0000005 Przesunięcie wyjątku: 00000000000547eb Wersja systemu operacyjnego: 6.3.9600.2.0.0.256.48 Identyfikator ustawień regionalnych: 1045 Dodatkowe informacje 1: a824 Dodatkowe informacje 2: a8246ba26b9c8432b80fab90807e66d1 Dodatkowe informacje 3: 00fa Dodatkowe informacje 4: 00fa19f8e584792a02cbec6a72e7ba4d Po kilku próbach się uruchomi. Po którymś uruchomieniu problem powraca. W 2020 tego problemu nie ma.
-
Uwaga ogólna: Oddzielaj kod obsługi zdarzeń od kodu wykonawczego. Kod wykonawczy dziel na mniejsze funkcje. Spagetti code jest trudny do analizy i testowania. Jeżeli kod wykonawczy tworzy encje to te encje twórz w podfunkcjach które będą je zwracały do kodu wykonawczego. Zgromadzone encje do zgrupowania przekaż do osobnej funkcji jako argument. Funkcja ta powinna zwrócić identyfikator grupy. Co do grupowania to może taki krótki przykład pomoże Function Rysuj() Dim Points(3) As Double Dim PIERWSZY, DRUGI, TRZECI, CZWARTY As Variant Dim ObjectsToGroup(1) As ZcadEntity Dim Group As ZcadGroup PIERWSZY = ThisDrawing.Utility.GetPoint(, "Podaj punkt P1 (początek pręta):") DRUGI = ThisDrawing.Utility.GetPoint(PIERWSZY, "Podaj punkt P2 (koniec pręta):") Points(0) = PIERWSZY(0) Points(1) = PIERWSZY(1) Points(2) = DRUGI(0) Points(3) = DRUGI(1) Set ObjectsToGroup(0) = ThisDrawing.ModelSpace.AddLightWeightPolyline(Points) PIERWSZY = ThisDrawing.Utility.GetPoint(, "Podaj punkt P1 (początek pręta):") DRUGI = ThisDrawing.Utility.GetPoint(PIERWSZY, "Podaj punkt P2 (koniec pręta):") Points(0) = PIERWSZY(0) Points(1) = PIERWSZY(1) Points(2) = DRUGI(0) Points(3) = DRUGI(1) Set ObjectsToGroup(1) = ThisDrawing.ModelSpace.AddLightWeightPolyline(Points) Set Group = ToGroup(ObjectsToGroup) End Function Function ToGroup(Objects() As ZcadEntity) As ZcadGroup Dim GroupObject As ZcadGroup Set GroupObject = ThisDrawing.Groups.Add("*") GroupObject.AppendItems Objects Set ToGroup = GroupObject End Function