Assgarth Opublikowano 29 Czerwca 2011 Zgłoś Opublikowano 29 Czerwca 2011 Witam, w jaki sposób poprawnie wywołać funkcję "vla-intersectwith"? (setq obj1 (vlax-ename->vla-object (car(entsel))) obj2 (vlax-ename->vla-object (car(entsel)))) ;sposób 1: (vlax-safearray->list (vlax-variant-value (vla-intersectwith obj1 obj2 0))) ;sposób 2: (vlax-safearray->list (vlax-variant-value (vla-intersectwith obj1 obj2 zcExtendNone))) żaden z powyższych sposobów nie działa i zwraca błąd typu: błąd: Zły typ argumentu Obiekty, które wskazuję to np. łuk i linia. Przykład zawarty w Pomocy ZwCAD, odnosi się tylko do VBA... pozdrawiam Cytuj
kruszynski Opublikowano 29 Czerwca 2011 Zgłoś Opublikowano 29 Czerwca 2011 Wystarczy pominąć funkcję vlax-variant-value. vla-intersectwith zwraca safearray a nie variant Cytuj
Assgarth Opublikowano 29 Czerwca 2011 Autor Zgłoś Opublikowano 29 Czerwca 2011 Uhm... okey, działa. Dziękuję za informację - warto jednak zaznaczyć, że jest to różnica w stosunku do Visual Lisp w AutoCAD, gdzie "vlax-variant-value" jest wymagane, w przeciwnym przypadku program wygeneruje błąd... pozdrawiam Cytuj
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ą.