gruzin

Użytkownik forum
  • Postów

    493
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    18

Treść opublikowana przez gruzin

  1. tak jest dużo zgrabniej
  2. (defun c:kolortla () (if (= (getvar "bkgcolor") 0) (setvar "bkgcolor" 7) (setvar "bkgcolor" 0) );if (princ) );defun kolortla taka funkcja zmienia z czarnego na białe i odwrotnie
  3. gruzin

    Wywiad z Martin_S

    ja już widziałem :-)
  4. Oczywiście że "zapomnieli". Też miałem taką nadzieję ale mówią, że podobno nadzieja matką ...
  5. w LISPIE sporo poprawek widzę. jest lepiej, dużo lepiej. Kilka błedów jeszcze jest ale muszę dokładniej przyjrzeć się jak to wygląda w kodzie. p.s. prawego przycisku myszy jako ENTER nadal nie naprawili :-(
  6. Proszę umieścic blok z pierwszego posta na dycku c: i potestować jego wstawienie za pomocą tego kodu, zmieniając jednostki w rysunku na "cm" i na "m" (defun c:mmm () (vl-load-com) (setq PunktWstawienia (getpoint "\nWskaż punkt wstawienia rysunku: ") NazwaBloku "C:\\IS_PZT_STUDNIA_100cm.dwg") (vla-insertblock (vla-get-ModelSpace (vla-get-ActiveDocument (vlax-get-acad-object))) (vlax-3d-point (trans PunktWstawienia 1 0)) NazwaBloku 1.0 1.0 1.0 0.0 ; tutaj dodac odczytywanie aktualnego obrotu luwa ) ) (defun c:mmmm () (setq PunktWstawienia (getpoint "\nWskaż punkt wstawienia rysunku: ") NazwaBloku "C:\\IS_PZT_STUDNIA_100cm.dwg") (command "_insert" NazwaBloku PunktWstawienia "_XYZ" "1.0" "1.0" "1.0" "0.0") )
  7. wstawiam zawsze z zewnętrznego pliku (przykład takiego pliku byl w załączniku) wieczorem postaram się skopiować trochę większy kawałek kodu jak znajdę chwilkę. studnia z załącznika jeżeli rysujemy w "m" powinna wstawiać się ze skalą 0.01 i mieć średnicę = 1 (tak nie jest) studnia z załącznika jeżeli rysujemy w "cm" powinna wstawiać się ze skalą 1 i mieć średnicę = 100 jest ok
  8. zacząłem kombinować jak by tu zacząć rysować zagospodarowanie terenu w "m" lub w "cm". Dodam że do tej pory zawsze rysowałem w "cm" i wszystkie bloki do wklejania w terenie mam zrobione w cm. bloki wstawiałem za pomocą funkcji vla-insertblock ale pojawił się teraz problem ponieważ bloki takie nie przeskalowują się z zachowaniem jednostek bloku i jednostek aktualnego rysunku. Albo coś źle robię albo jest to błąd Zwcada 2015+ ?? (vla-insertblock (mh:ACX_ActiveSpace) (vlax-3d-point (trans PunktWstawienia 1 0)) NazwaBloku 1.0 1.0 1.0 0.0 ) (command "_insert" NazwaBloku PunktWstawienia "_XYZ" "1.0" "1.0" "1.0" "0.0") wstawianie tego samego bloku za pomocą command i vla-insertblock daje zupełnie inne rezultaty, pomimo tego że skalę xyz mam taką samą w obu poleceniach. polecenie command "_insert" przeskalowuje wstawiane bloki tak jak trzeba ale wolałbym poprawić funkcję z vla-insertblock jeżeli coś mam w niej nie tak W załączniku przykładowy blok który próbuję wstawiać na zagospodarowaniu terenu IS_PZT_STUDNIA_100cm.dwg
  9. ja przepraszam że odpisuje tak tylko raz na kilka dni, ale w robocie mam taki nawał pracy że nie mam czasu wgłebić sie w błędy zw2017 i dokładnie ich poanalizować i poszukac. obecnie nie mam czasu na takie przyjemności. jednak kolejne wersje zwcada bede sukcesywnie testował w wolnej chwili :-) i bede zgłaszał wszystko co uda mi sie znaleźć.
  10. hmmm. Mi nie udało się tego uruchomić na zw2017 wyskakuje: Command: TEST:DCL ; error: quit / exit abort Command: dokładnie tak. nie da się nic wpisać w kontrolki i są one na początku puste bez domyślnych wartości. Okna też się nie da zamknąć. No właśnie. Uprościłem to trochę do stwierdzenia że kontrolki editbox nie działają.
  11. założenie jakie mi kiedyś przyświecało było takia aby w polu EDIt BOX można było wpisać cyfry zarówno z przecinkiem jak i z kropką. Następnie warunkiem: (if (> (atof (mh:MsgCommaToDot DCL_srednica_studni)) 0) sprawdzałem, czy rzeczywiście jest to liczba dodatnia bo tylko taka wprowadzona jest poprawna jako dana do dalszej pracy programu. W zwcad 2017 nie działa mi po prostu pole z wprowadzaniem danych. Nie da się nic w te pola wpisać i nie chodzi tu o funkcje zamiany przecinków na kropki. Jak się głębiej nad tym zastanowić to może masz rację.
  12. (defun mh:MsgCommaToDot ( msg / dd OutMsg) ; zwraca przetworzony tekst z zamienionymi przecinkami na kropki (np. w celu przeanalizowania tekstu czy nie jest liczbą) ;========================================================================= (setq dd 1 OutMsg "" );setq (repeat (strlen msg) (progn (if (= (substr msg dd 1) ",") (setq OutMsg (strcat OutMsg ".")) (setq OutMsg (strcat OutMsg (substr msg dd 1))) );if (setq dd (1+ dd)) );progn );repeat OutMsg );defun ;========================================================================= (defun c:studnia ( / dcl_id DCL_srednica_studni DCL_osadnik zamkniecie srednica_studni osadnik PG PD A1 A2 A3 A4 A5 A6 B1 B2 B3 B4 B5 B6) ;(mh:ustzap) ;=========================================================== (setvar "dimzin" 0) (setvar "osnapcoord" 1) ;============================================================= (setq dcl_id (load_dialog "profilek-profile.dcl")) (if (not (new_dialog "studnia" dcl_id)) (progn (alert "Nie znaleziono pliku profilek-profile.dcl") (exit) );progn );if ;================== (if (null *DCL_studnia*) (setq *DCL_studnia* (list "42,5" "0")) ) (setq DCL_srednica_studni (car *DCL_studnia*) DCL_osadnik (cadr *DCL_studnia*) ) ;================== (foreach % (list "DCL_srednica_studni" "DCL_osadnik") (set_tile % (eval (read %))) (action_tile % (strcat "(setq " % " $value)")) ) ;================ (start_image "sldStud") (fill_image 0 0 (dimx_tile "sldStud")(dimy_tile "sldStud") -0) (slide_image 0 0 (dimx_tile "sldStud")(dimy_tile "sldStud") "profilek_studnia") (end_image) ;================ (action_tile "accept" "(done_dialog) (setq zamkniecie 1)") (action_tile "Cancel" "(done_dialog) (setq zamkniecie 0)") (start_dialog) (unload_dialog dcl_id) (if (= zamkniecie 1) (progn (setq *DCL_studnia* (list DCL_srednica_studni DCL_osadnik)) );progn );if ;========================================================================= ;Sprawdzenie i podstawienie do zmiennych numerycznych wartości z editbox'ów (if (> (atof (mh:MsgCommaToDot DCL_srednica_studni)) 0) (setq srednica_studni (atof (mh:MsgCommaToDot DCL_srednica_studni))) (progn (alert "Średnica studni nie jest wpisana poprawnie!") (setq zamkniecie 0) ) ) (if (>= (atof (mh:MsgCommaToDot DCL_osadnik)) 0) (setq osadnik (atof (mh:MsgCommaToDot DCL_osadnik))) (progn (alert "Głębokość osadnika nie jest wpisana poprawnie!") (setq zamkniecie 0) ) ) ;========================================================================= (if (= zamkniecie 1) (progn (setq PG (getpoint "\nKliknij górę studni") PD (getpoint PG "\nKliknij dół studni") );setq (setq A1 (polar PG pi (/ srednica_studni 2)) A2 (polar PG 0 (/ srednica_studni 2)) A3 (polar A1 (* 1.5 pi) 10) A4 (polar A3 0 3) A5 (polar A4 0 (- srednica_studni 6)) A6 (polar A5 0 3) B1 (polar (polar PD pi (/ srednica_studni 2)) (* 1.5 pi) (+ 5 osadnik)) B2 (polar B1 0 srednica_studni) B3 (polar B1 (/ pi 2) 10) B4 (polar B3 0 3) B5 (polar B4 0 (- srednica_studni 6)) B6 (polar B5 0 3) );setq (setvar "celweight" 020) (command "_line" A1 A2 B2 B1 A1 "" "_line" A3 A6 "" "_line" B3 B6 "" "_line" A4 B4 "" "_line" A5 B5 "" );command ;(setvar "clayer" "IS_niedruk") (setvar "celweight" -1) (command "_point" PD) );progn );if ;(mh:ustprzywr) );defun studnia ;========================================================================= oraz plik dcl: "profilek-profile.dcl /////////////////////////////// // okno główne komendy PKS // /////////////////////////////// profil : dialog { label = "Opisywanie profili podłużnych"; : boxed_column { label = "Dane:"; : edit_box { edit_limit = 10; edit_width = 10; key = "DCL_POZIOM"; label = "Wpisz wartość poziomu por. [m]: "; } : edit_box { edit_limit = 10; edit_width = 10; key = "DCL_odl0"; label = "Odległość dla punktu \"0\" [m]: "; } : edit_box { edit_limit = 10; edit_width = 10; key = "DCL_srednica"; label = "Średnica rurociągu [mm]: "; } : edit_box { edit_limit = 10; edit_width = 10; key = "DCL_skalapoziom"; label = "Skala pozioma <1:xxx>: "; } : edit_box { edit_limit = 10; edit_width = 10; key = "DCL_skalapion"; label = "Skala pionowa <1:yyy>: "; } : edit_box { edit_limit = 10; edit_width = 10; key = "DCL_nrwezla"; label = "Numer pierwszego węzła: "; } spacer; } : boxed_column { label = "Ustawienia:"; : popup_list { edit_width = 20; label = "Opisywanie kolizji:"; key = "DCL_opis_kolizji" ; } : popup_list { edit_width = 20; label = "Metryka tabelki:"; key = "DCL_METRYKA" ; } : popup_list { edit_width = 20; label = "Sposób rysowania sieci:"; key = "DCL_spodos" ; } : popup_list { edit_width = 20; label = "Sposób liczenia zagłębienia:"; key = "DCL_zaglebienie" ; } : popup_list { edit_width = 20; label = "Materiał rurociągu:"; key = "DCL_ruramaterial" ; } : popup_list { edit_width = 20; label = "Oznaczenie węzłów:"; key = "DCL_wezel" ; } spacer; } ok_cancel; } /////////////////////////////////// // okno główne komendy STUDNIA // /////////////////////////////////// studnia : dialog { label = "Studnia w przekroju"; : boxed_column { label = "Dane:"; : edit_box { edit_limit = 10; edit_width = 10; key = "DCL_srednica_studni"; label = "Średnica studni [cm]: "; } : edit_box { edit_limit = 10; edit_width = 10; key = "DCL_osadnik"; label = "Głębokość osadnika [cm]: "; } spacer; } : image { height = 17 ; width = 20 ; key = "sldStud" ; color = 0 ; } ok_cancel; } mam nadzieje ze kod będzie działać (wyciąłem go z większego pliku) plik z załacznika wymaga zmiany rozszerzenia na "*.sld" pozdrawiam profilek_studnia.zip
  13. Toolpalettes i designcenter będą dodane do zwcada 2017? Wiadomo kiedy? Editboxy nie działają i postaram się skopiować kawałek kodu jak tylko będę przy kompie a nie tablecie.
  14. ;========================================================================= (defun c:obrlll () (mh:obrotwidoku "L") ); defun ;========================================================================= ;========================================================================= (defun c:obrrrr () (mh:obrotwidoku "R") ); defun ;========================================================================= ;========================================================================= (defun mh:obrotwidoku ( mode / widok wyswidoku punktnax punktnay) ; mode [L, R] - L-obrót w lewo, R-obrót w prawo ;========================= ;(setq MHSelMember (mh:SYS_GetSelection)) ;(mh:ustzap) ;========================= ;(trans PP 1 0) (setq widok (trans (getvar "VIEWCTR") 1 0) wyswidoku (getvar "VIEWSIZE") punktnax (polar widok (if (= mode "R") (* pi 0.5) (* pi 1.5)) 10) punktnay (polar widok (if (= mode "R") (* pi 1) (* pi 0)) 10) ) (command "_ucs" "3" widok punktnax punktnay) (command "_plan" "_c") (command "_.zoom" "_c" (trans widok 0 1) wyswidoku) ;========================= ;(mh:ustprzywr) ;(mh:SYS_SetSelection MHSelMember) (princ) );defun ;========================================================================= proszę na tym protestować i porównać wyniki z zwcada 2015 2017 Okienka do wprowadzania wartości liczbowych nie działają. Listy wyświetlaja się już dobrze.
  15. kolejny błąd: - dla ułatwienia piszemy teks jednowierszowy poziomo (kąt obrotu równy 0) np "jeden" - obracamy LUW o 90° prawo - ustawiamy widok na aktualy "_plac" "_c" - piszemy teks jednowierszowy poziomo (kąt obrotu równy 0) np "dwa" <<<tekst jest do góry nogami>>> kolejny błąd (command "_.zoom" "_c" (trans widok 0 1) wyswidoku) polecenie nie przyjmuje poprawnie ani punktu środka widoku ani jego wysokości (używam tego do obracania widoków o 90° i przywracania środka widoku po obrocie
  16. VERNUM = "2016.08.26(8293)_x64" (read only) - edytor tekstu wielowierszowego - nie można zamknąć poprzez ctrl+enter - fazowanie z SZIFTEM nie działa tak jak powinno - nie da się wczytać pasków narzędzi dodatkowych jeżeli korzystamy z interfejsu wstążki LISP się znacząco poprawił ale obsługa okien DCL jeszcze nie jest zadowalająca
  17. Wysłałem licencję na prywatna wiadomość. Komunikat może znaczyć że nie dodany zostal plik "profilek.lsp" do autostaru Zwcada. W razie pytań proszę dzwonić (będzie szybciej).
  18. W Classicu jest standardowo na pasku wielolinii W 2017 nie ma. Trzeba zgłosić potrzebę uzupełnienia ale zapewne sa świadomi tego braku w Zwsoft.
  19. Z Lispem jest tak samo. Nie działa wiele ale już zaczęło się uruchamiać..... Jeszcze kilka wersji beta Zwsoftu i może będzie można zacząć prace nad ewentualnymi poprawkami kodu lub wskazywaniem błędów. Co do stabilności zauważyłem, że na jednym komputerze przesuwanie pasków jest płynne a na drugim pasek podczas przesuwania miga jak przy odświeżaniu ekranu ~5Hz :-) Bardzo irytujące to jest
  20. prosze zainstalowac nakladke "profilek" połowa okien zawiesza zwcada
  21. jak w widoku wstążki włączyć paski dodatkowe. Nie działa polecenie "customize" ? Niektóre okienka DCL zawieszają Zwcada (chyba te z polami do wyboru opcji)
  22. oo. wreszcie nakładka profilek się uruchomiła. nie wszystko jeszcze działa ale juz da sie testować. Najbardziej przeszkadza brak poprawnej obsługi prawego klawisza myszy.
  23. Fazowanie nie działa z SHIFTem. powinno fazować z odległosciami równymi 0. Zaokrąglanie z shiftem działa na promieniu równym zero.