JasW

Użytkownik forum
  • Postów

    90
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    7

Treść opublikowana przez JasW

  1. vernum=11574 32bit i 64 bit ( Win7pro ) Przy pracy z trochę większymi projektami ( > 30tys obiektów typu line / polyline, dwg ok 5 MB ) zauważyłem poważny problem z wydajnością komendy 3dorbit. ZWCAD po wywołaniu komendy _3dorbit zawisa na kilka sekund. Niestety nie zawsze pojawia się koło do kręcenia widokiem. . Jak mam szczęście to odblokowuje sie po 5..10 sekundach. Niestety już wielokrotnie zaliczałem zwis (po braku reakcji przez 5 minut) . Jeśli to permanentna cecha nowego ZWCADA to może uniemożliwić sensowną pracę w 3D nawet na średniej wielkości projektach. Mojemu sprzętowi raczej nic nie brakuje. Przełączałem także na najprostszy tryb renderownaia/kreskowania ( 2d Wireframe ) który w Autocad pomagał nawet na bardzo dużych projektach. Tutaj nic nie pomaga. Trochę niepokoi mnie to, czy nie dotknąłem właśnie wąskiego gardła kernela nowego ZWCADA Macie może podobne spostrzeżęnia albo wiedzę n.t. jakichś optymalizacji ustawień profilu użytkownika ? Na moim CPU ( 8 rdzeniowy I7 ) właśnie po raz kolejny wątek z ZWCAD po uruchomieniu _3dorbit zwisł . Pozdrawiam J.
  2. @ProgramistaCAD : Przepraszam, ale może po prostu jakiś upust w cenniku ? O klienta warto dbać ;-) Z drugiej strony rzeczywiscie : ZWCAD2017 od ZWCAD2015+ rózni się od strony programistycznej w kilku ważnych detalach co wymaga dla migracji troche pracy. U mnie spowodowało to trochę nieplanowane problemy, ale caly czas widzę że bugi poprawiają. Chyba więc osiągnie w miarę dobrą jakość i funkcjonalność. Nowa edycja ZWCAD, poza korzystną ceną, nawet po odsianiu marketingowego szumu ma także kilka ciekawych i perspektywicznych rozwiązań dla branży CAD. Klienci więc chyba tez to dostrzegą . Pozdrawiam, J.
  3. Kolejny Bug w VBA ( vernum=11574) Nie mozna zmieniać ilości verteksów obiektów 3dPolyline ( ZCad3dPolyline ) Dwa powazne błedy - 3dPoly.AppendVertex = Point3 ' ERROR - Poly3d.Coordinates = ArrayOfPoints ' ERROR po A) MsgBox powinien podać 2 vertexy po B) MsgBox powinien podać 3 vertexy po C) MsgBox powinien podać 4 vertexy W Autocad działa wszystko ok. w ZWCAD 2017 tylko A) czyli tworzenie od zera ... Jesli nie będzie prostego obejścia ( moze lisp?) to błąd wg mnie brak poważny. Prosze o weryfikację i ew. zgłoszenie do ZWSOFT. Przykład do sprawdzenia niżej. Pozdrawiam J. Sub Test3dPoly() Dim polyObj As Zcad3DPolyline Dim pNew(0 To 2) As Double Dim Points1(0 To 5) As Double Dim Points2(0 To 11) As Double Dim p As Variant Dim RetCoord ReDim RetCoord(0 To 8) As Double Dim nvertices As Integer Points1(0) = 0: Points1(1) = 0: Points1(2) = 0 Points1(3) = 10: Points1(4) = 10: Points1(5) = 10 ' A) Create 3dPoly Set polyObj = ThisDrawing.ModelSpace.Add3DPoly(Points1) nvertices = (UBound(polyObj.Coordinates) + 1) / 3 ' for 3D polylines MsgBox "Poly after create vertices = " & nvertices ' B) New Vertex by call Poly.AppendVertex (pNew) pNew(0) = 40: pNew(1) = 30: pNew(2) = 40 polyObj.AppendVertex pNew ' ZWCAD Failed / ACAD Ok p = polyObj.Coordinate(2) ' Method 'Coordinate' of IZCad3dPolyline failed nvertices = (UBound(polyObj.Coordinates) + 1) / 3 ' ZWCAD Error / ACAD Ok MsgBox "Poly After AppendVertex Number of vertices = " & nvertices ' C) Set Size by Assign polyObj.Coordinates from Array of four Points Points2(0) = 0: Points2(1) = 0: Points2(2) = 0 Points2(3) = 0: Points2(4) = 0: Points2(5) = 0 Points2(6) = 0: Points2(7) = 0: Points2(8) = 0 Points2(9) = 0: Points2(10) = 0: Points2(11) = 0 polyObj.Coordinates = Points2 nvertices = (UBound(polyObj.Coordinates) + 1) / 3 ' ZWCAD Error (type mismatch) / ACAD Ok MsgBox "Poly After Assign Number of vertices = " & nvertices End Sub
  4. O... Kolega @Adam podal znacznie elegantrze rozwiązanie tuż przede mną. Recovery calego Win7 to skuteczne do bólu rozwiązanie ale to armata na wróble... Mam trochę obawy czy GUID;y z lini komend konkretnych instalek nie będą inne jesli pojawią się podobne problemy w kolejnych edycjach instalatorów. Dziękuję jednak za to rozwiązanie. Pozdrawiam J.
  5. Zarejestrowałem podobne problemy. Niestety nie udało mi się znaleźć wyjasnienia a rozwiażania raczej siłowe: Symptomy u mnie : 1. Identyczne objawy jak u Pana. Nie znalazłem eleganckiego rozwiązania, po prostu z backupa odtworzyłem cały Win7 . Nie pamietam dokladnie ale może zainstalowałem równolegle dwa ZWCAD'y w róznych wersjach kernela : Od strony systemu są wtedy kłopoty. Np. ZWCAD'a 2017 ( vernum 10726) i Architecture mającą w rejestrze część danych wspólnych. Powoduje to pomieszanie dll i i wpisów w rejestrze dot GUID obiektów OLE . Instalator bezwzględnie powinien ostrzec o wykryciu równoległej innej wersji kernela ZWCAD'a i odmówić instalacji . Hipoteza: Może instalacje wtedy nie są finalizowane i nastepuje crash bez ostrzeżenia użytkownika co. np powoduje brak utworzenia exeka Uninstall ? Proponuje uczulic na to ZWSOFT. 2. Stwierdziłem także kilkukrotnie, przy testach róznych wersji beta długie czasy instalacji modułu Prerequisities\DotNetFX40 (widać taki katalog ktory tworzy ZWCAD podczas procesu instalacji ) . Moduł ten zawieszał cała instalację. Ja poradziłem sobie niestety znowu siłowo: Kill thread instalatora w Managerze Zadań Windows i równolegle odcięcie komputera od sieci. I dokończenie instalacji z odcięta siecią. Technologia DotNET to strasznie zamulający element Windows o dosyć miernej reputacji. Jako programista jak mogę to go unikam ... Pozdrawiam, J.
  6. Brak w ZWCAD 2017 ( było w ZWCAD 2015+ ) . . 3DFACE: Ribbon: Solid » Surface » 3D Face Toolbar: Surfaces » 3D Face Menu: Draw » Surfaces » 3D Face Keyboard: 3DFACE Proszę o zgłoszenie do ZWSOFT J.
  7. To niestety nie to samo: Dim Group as Variant For i ... Set Group = ThisDrawing.Groups.Item(i) MsgBox TypeName(Group) Powyżej uzyskaliśmy nadal tylko obiekt typu ZCadGroup ( część a) mojego przykładu. Mi chodzi o dostęp do obiektów ZCadEntity których kolekcje przechowują obiekty ZCadGroup np: (kod w jednej linii) : Set Ent=ThisDrawings.Groups.Item(o).Item(0) // Czyli: pobierz pierwszy obiekt ZCadEntity pierwszej grupy J.
  8. Ostatni priorytetowy dla mnie element w VBA (zgłaszany od ok 2 miesięcy) i teraz niestety ponownie zgłoszony do zwsoft (http://www.zwsoft.com/zwcad_forum/thread-4629-1-1.html): Obsługa obiektu ZCadGroup zrealizowana w vernum=10726 tylko częściowo. a) Dostęp do obiektu już jest ( daje sie przypisać ) np. : Set Group = ThisDrawing.Groups.Item(0) # vernum=10203 error; vernum10727 ok. b) Niiestety chyba słabo wytestowane. Jak chcę pobrać listę obiektów do kolejny błąd : For i=0 to Group.Count-1 Set Ent= Group.Item(i) ; # <- vernum 10726 error End; J.
  9. VERNUM = "2016.09.30(10203) Zgłaszane wcześniej ale wciąż niezałatwione: 1. VBA: can't get ZCadGroup object: Set Group = ThisDrawing.Groups.Item(0) # <-Crash with msg Runtime error 80010108 # w vernum 10203 nadal błąd Dodatkowo : 2. Zauważyłem także brak DesignCenter (Ctrl+2) Czy będzie w ZWCAD2017 ? Skoro to wersja RC (ReleaseCandidate ) to by wypadało :-) 3. Czy jest w ZWCAD lub jakiś LISPowy/VBA odpowiednik convtosolid i convtosurface / ACAD ? ? 4. Bloki Dynamiczne: wiem że to problem patentowy ale czy ktoś z was zna lub wie czy są jakies nakładki / kod lisp który pokazuje jak ugryźć tworzenie/edycję Bloków Dynamicznych bez Autocada?
  10. Obsługa VBA (Vernum=9688 32bit) Po pobieznej analizie: jest wiele detalicznych poprawek w interfejsach programistycznych VBA API. Na zgłoszonych do forum zwcad.com dla mnie istotne szczególnie dwa: 1. can't get ZCadGroup object: Set Group = ThisDrawing.Groups.Item(0) # <-Crash with msg Runtime error 80010108 # w vernum 9688 nadal błąd 2. Can't get Layer XData: ThisDrawing.ActiveLayer.GetXData "APPID", xDataType, xDataValue # w vernum 9688 Ok. Pozdrawiam J.
  11. Z punktu widzenia programisty od tej wersji mogłem dopiero cokolwiek uruchomić. Informacje z testów VBA API ostatniej wersji (ZWCAD 2017 vernum=6290 32bit Eng) : Wynotowałem 12 bugów, Podzieliłem je na dwie grupy , krytyczne i mniejszej rangi do ominięcia w wersji beta) : a) CRITICAL: .1 get IZcadDocument.PickfirstSelectionSet; Accessviolation at adress ... in module RPCRT4.dll (checked on DLL ver 5.1.2600.5195 and alternative ver 5.1.2600.2180 ) .2 get IZcadDocument.SelectionSets.Count; Message: Error .... .3 get IZCadBlock.Name Message: Ole Server Error ! .4 get IZCadDocument.GetVariable(VarName); Message: AccessViolation at adress ... in module RPCRT4.dll (checked on DLL ver 5.1.2600.5195 and alternative ver 5.1.2600.2180 ) .5 get IZCadLayer.GetXData('App',xDataType,xDataValue); Message method unimplemented .6 call IZCadDocument.Regen(zcActiveViewport); Message Error .... .7. get IZCadDocuments.Items.FullName Message: OutOfMemorby b ) MIDDLE level: .8. get IZCadApplication.Version; // Error ... .9. get IZCadApplication.hwnd (Get_Hwnd) Message: Access violation ( adress $00000000 ) .10. get IZCadDocument.ActiveLayer - Message: Access violation (not initialized after open dwg?) .11. get ICadDocument.Saved Message: not implemented .12 IZCadApplication.WindowLeft, Message: not implemented; IZCadApplication.Width Message: not implemented; IZCadApplication.WindowTop; Message: not implemented; Szczególnie bolesne są dla mnie braki IZcadDocument.PickFirstselectionSet i IZcadDocument.GetVariable(...) . Bez nich mój kod nie ożyje.
  12. Jako deweloper mogę powiedziec zerkając na bety ZWCAD2017 instalek od kuchni: w Rejestrze windows swoje klasy COM ZWCAD 2017 rejestruje już bez '+' . Dla mnie oznacza to iż jeśli jak czytam używa własnego jądra, pozbywa od wersji 2017 się we wszystkich kluczowych materiałach wyróżnika '+' : Nowy będzie "ZWCAD.Application.2017" 2015+ miał "ZWCAD+.Application.2015" Pozdrawiam, Jaś