e_CAD Opublikowano 21 Grudnia 2017 Zgłoś Udostępnij Opublikowano 21 Grudnia 2017 (edytowane) Już od wersji ZWCAD 2017-2018 istnieje problem z kreskowaniem zamkniętych obrysów polilinii (ale raczej tylko tych z nadaną wypukłością) z poziomu języka VBA. Jest to błąd występujący losowo i trudno jest go zasymulować, znaleźć jakiś przykład. W czystym pliku DWG pierwsze wstawianie/rysowanie z VBA obiektów (zamknięta Polilinia + wypukłość) rysuje się bez problemu. Jednak gdy w rysunku pojawią się z czasem inne obiekty, gdy coś narysujemy (nie jestem w stanie określić co i kiedy ponieważ podczas testowania nie natrafiliśmy na jakąś powtarzalną regułę) to po czasie ten sam obiekt rysuje się już bez kreskowania. Zauważyliśmy jeszcze, że inne obiekty rysowane bez nadanej wypukłości polilinii (kąty ostre, proste) z identycznym kreskowaniem, rysują się nadal prawidłowo. Polilinia.SetBulge Edytowane 21 Grudnia 2017 przez e_CAD Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kruszynski Opublikowano 21 Grudnia 2017 Zgłoś Udostępnij Opublikowano 21 Grudnia 2017 Napotkałem taki problem ostatnio w wersji 2018 SP1 (we wcześniejszych nie) ale kiedy wyciagnąłem z aplikacji samą funkcję rysującą polilinie i kreskowanie narysowało poprawnie. Przyglądam się temu uważnie, ale również nie potrafię znaleźć w tym zasady. Gdyby udało się Panu przygotować taki przykład, na którym będzie można powtórzyć problem bardzo proszę o przesłanie. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Parikon Opublikowano 21 Grudnia 2017 Zgłoś Udostępnij Opublikowano 21 Grudnia 2017 (edytowane) Miałem problem w C# z kreskowaniem profili stalowych. Po zakreskowaniu profilu gdy tak wstawiony profil chciałem przesunąć, skopiować, czy usunąć polilinię, która była loopem dla hatcha to hatch się rozkraczał w dziwny "kwantowy" sposób. Pomogło tworzenie hatcha przed dodaniem polilinii do blocktabelrekord i do transakcji. Ważne aby obiekt hatch dodać do blocktabelrecord i transakcji przez polilinią. Problem pojawił się w 2018 SP1. Wcześniej nie występował. Można porównać wersję PI 1.28 i PI 2018. Jeśli w wersji PI 1.28 wstawimy profile stalowe pod 2018 SP1 to hatch będzie rozwalony. Przy czym wcześniej tego nie było. Edytowane 21 Grudnia 2017 przez Parikon Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
e_CAD Opublikowano 21 Grudnia 2017 Autor Zgłoś Udostępnij Opublikowano 21 Grudnia 2017 Niestety bardzo trudno będzie ustalić przyczynę błędu i przygotować przykład (pomimo szczerych chęci), ponieważ ten sam/identyczny kod programu powoduje że raz kreskowanie się rysuje a raz nie. Ale jeżeli już się narysuje to narysuje się prawidłowo, tak jak powinno być. Kreskowanie samo w sobie nie jest błędne, tylko czasami go po prostu nie ma. Wykonując przyjętą do testów dowolną sekwencje poleceń (np. rysowania jakiś elementów w rysunku jeden po drugim i na końcu element z kreskowaniem) w identycznej kolejności, w nowo otwieranym DWG i nowej sesji ZWCAD, raz kreskowanie się rysuje, a raz nie (przypominam że wykonujemy dokładnie te same polecania w tej samej kolejności). Jeżeli kreskowanie przestanie się już rysować w danym rysunku DWG (dla polilinii z wypukłościami) to nawet przy próbach naprawiania rysunku, usuwania obiektów, nie udało nam się podczas testów jego wskrzesić. Dopiero otworzenie nowego DWG (nawet w tej samej sesji ZWCAD), znów pozwala na jego rysowanie. W związku z tym można założyć że kod programu jest prawidłowy. Ponadto ten sam kod odpowiedzialny za rysowanie kreskowania, prawidłowo działa w innych CADach, oraz poprzednim ZWCAD. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Parikon Opublikowano 21 Grudnia 2017 Zgłoś Udostępnij Opublikowano 21 Grudnia 2017 Tak jak pisałem powyżej po zainstalowaniu SP1 do Zw2018 moje moduły rysujące profile (czyli polilinie) zaczęły się dziwnie zachowywać jeśli chodzi o ich hatchowanie. Ostatecznie nie zgłaszałem tego, gdyż zmieniłem kod tak jak wcześniej opisałem. Wcześniej hatch był generowany tak jak jest to w przykładach Autodesk. Aktualnie najpierw dodaje obiekt hatch a potem polilinie do rekordów tabeli blocków i problem zniknął. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
e_CAD Opublikowano 21 Grudnia 2017 Autor Zgłoś Udostępnij Opublikowano 21 Grudnia 2017 Celem nie jest szukanie obejść i drogi na skróty, tylko znalezienie przyczyny w ZWCAD i naprawienia jej. To zaowocuje ulepszeniem ZWCAD. Tym bardziej, że wiemy iż taka poprawność jest możliwa i była w poprzednich wersjach ZWCAD. Kod programu generujący kreskowane obiekty nie jest wadliwy (dlatego nie widzę potrzeby zmiany) bo jak napisałem już powyżej on działa dobrze nawet w ZWCAD 2017/2018. Problem natomiast polega na losowości, czyli na tym że ZWCAD 2017/2018 raz wykonuje dobrze program (prawidłowo kreskuje) a innym razem w ogóle nie kreskuje (jakby nie wstawia obiektu HATCH). Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Parikon Opublikowano 21 Grudnia 2017 Zgłoś Udostępnij Opublikowano 21 Grudnia 2017 32 minuty temu, e_CAD napisał: Celem nie jest szukanie obejść i drogi na skróty, tylko znalezienie przyczyny w ZWCAD i naprawienia jej. To zaowocuje ulepszeniem ZWCAD. Tym bardziej, że wiemy iż taka poprawność jest możliwa i była w poprzednich wersjach ZWCAD. Kod programu generujący kreskowane obiekty nie jest wadliwy (dlatego nie widzę potrzeby zmiany) bo jak napisałem już powyżej on działa dobrze nawet w ZWCAD 2017/2018. Problem natomiast polega na losowości, czyli na tym że ZWCAD 2017/2018 raz wykonuje dobrze program (prawidłowo kreskuje) a innym razem w ogóle nie kreskuje (jakby nie wstawia obiektu HATCH). Moim celem było wskazanie, że coś jest na rzeczy - że coś się zmieniło na niekorzyść pomiędzy 2018 a 2018SP. Tylko tyle Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ą.