Assgarth Opublikowano 29 Czerwca 2011 Zgłoś Udostępnij 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 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kruszynski Opublikowano 29 Czerwca 2011 Zgłoś Udostępnij Opublikowano 29 Czerwca 2011 Wystarczy pominąć funkcję vlax-variant-value. vla-intersectwith zwraca safearray a nie variant Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Assgarth Opublikowano 29 Czerwca 2011 Autor Zgłoś Udostępnij 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 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ą.