Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  (vla-addvertex - Parameter?

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  (vla-addvertex - Parameter? (1633 mal gelesen)
Geos
Mitglied
Vermessungstechniker i.R.


Sehen Sie sich das Profil von Geos an!   Senden Sie eine Private Message an Geos  Schreiben Sie einen Gästebucheintrag für Geos

Beiträge: 1017
Registriert: 21.09.2001

ACAD Map 2010, Win 7 Pro
eigene Lisp's<P>HW: Core i7 860, 2.8 GHz
3.3 GB, NVIDIA GeForce GTS 250

erstellt am: 28. Jun. 2010 13:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Servus

Code:
(defun c:addvert ()
  (setq #vlaobj (vlax-ename->vla-object (car (entsel "\nPolyLinie wählen: "))))
  (setq #pkt (getpoint "\nPunkt einfügen:))
  (vla-addvertex
    #vlaobj
    3                      ;zB. der 3. Pkt.
    #pkt
  )
)


Soweit ich herausgefunden hab, sollte vla-addvertex wie oben funktionieren - dachte ich.
Krieg aber
Code:
"ActiveX-Server gab folgenden Fehler zurück: unbekannter Name: AddVertex"

zurück.

Ich habe den #pkt in Verdacht ...
Könnt ihr mir weiterhelfen?


------------------
Schöne Grüße
Ernst

www.geopaint.at

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 28. Jun. 2010 13:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Geos 10 Unities + Antwort hilfreich

für PKT will addvertex ein safearray mit den xy-koordinaten im OCS der PL .. klappt so auch nur für LW -PLs

wenn wks sollte das  klappen:
(vl-load-com)
(defun c:addvert ()
  (setq #vlaobj (vlax-ename->vla-object (car (entsel "\nPolyLinie wählen: "))))
  (setq #pkt (getpoint "\nPunkt einfügen:"))
  (vla-addvertex
    #vlaobj
    3
    (vlax-safearray-fill
      (vlax-make-safearray vlax-vbdouble (cons 0 1))
      (list (car #pkt)(cadr #pkt))
    )
  )
)

------------------
       - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Geos
Mitglied
Vermessungstechniker i.R.


Sehen Sie sich das Profil von Geos an!   Senden Sie eine Private Message an Geos  Schreiben Sie einen Gästebucheintrag für Geos

Beiträge: 1017
Registriert: 21.09.2001

ACAD Map 2010, Win 7 Pro
eigene Lisp's<P>HW: Core i7 860, 2.8 GHz
3.3 GB, NVIDIA GeForce GTS 250

erstellt am: 28. Jun. 2010 14:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Thomas

Ich bin zwar im WKS, schmeckt ihm aber auch net ...?
(Die ausgewählte Poly hat übrigens 6 Pkte)

Code:

Befehl: bks

Aktueller BKS-Name:  *WELT*
Ursprung des neuen BKS angeben oder
[FLäche/bENannt/Objekt/VOrher/ANsicht/Welt/X/Y/Z/ZAchse] <Welt>: w

Befehl: (defun c:addvert ()
(_>  (setq #vlaobj (vlax-ename->vla-object (car (entsel "\nPolyLinie wählen:
"))))
(_>  (setq #pkt (getpoint "\nPunkt einfügen:"))
(_>  (vla-addvertex
((_>    #vlaobj
((_>    3
((_>    (vlax-safearray-fill
(((_>      (vlax-make-safearray vlax-vbdouble (cons 0 1))
(((_>      (list (car #pkt)(cadr #pkt))
(((_>    )
((_>  )
(_> )
C:ADDVERT

Befehl: addvert

PolyLinie wählen:
Punkt einfügen:
"ActiveX-Server gab folgenden Fehler zurück: unbekannter Name: AddVertex"

Befehl:



------------------
Schöne Grüße
Ernst

www.geopaint.at

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Dorfy
Mitglied
Double-Dipl.-Ing. Bleistiftanspitzer


Sehen Sie sich das Profil von Dorfy an!   Senden Sie eine Private Message an Dorfy  Schreiben Sie einen Gästebucheintrag für Dorfy

Beiträge: 900
Registriert: 21.07.2006

AutoCad2007, ProE, HiCad

erstellt am: 28. Jun. 2010 14:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Geos 10 Unities + Antwort hilfreich

Cadmiums Zeilen gehen...

probier mal die:

(setq #vlaobj (vlax-ename->vla-object (car (entsel "\nPolyLinie wählen: "))))
(setq pt (getpoint))
(vlax-invoke #vlaobj 'AddVertex 2 (list (car pt) (cadr pt)))

------------------
Mfg Heiko

Elefantenjagd in Afrika
"... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Geos
Mitglied
Vermessungstechniker i.R.


Sehen Sie sich das Profil von Geos an!   Senden Sie eine Private Message an Geos  Schreiben Sie einen Gästebucheintrag für Geos

Beiträge: 1017
Registriert: 21.09.2001

ACAD Map 2010, Win 7 Pro
eigene Lisp's<P>HW: Core i7 860, 2.8 GHz
3.3 GB, NVIDIA GeForce GTS 250

erstellt am: 28. Jun. 2010 14:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Sorry - hab grad entdeckt - is eine POLYLINE, keine LWPOLYLINE!
(bei einer LW-Poly gehts)

Funktioniert vla-addvertex nur bei leichten PLs?

Gibts auch was für die schweren?


------------------
Schöne Grüße
Ernst

www.geopaint.at

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 28. Jun. 2010 14:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Geos 10 Unities + Antwort hilfreich

activex mit (vl-load-com) initialisiert ?
ist es wirklich eine LW-PL ? .. bei einer 2d-PL heißt das nämlich appendvertex

...deine Fahlermeldung deutet auf eins von beiden ...


bei mir klapps jedenfalls mit dem Code ... du bist dran

------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 28. Jun. 2010 14:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Geos 10 Unities + Antwort hilfreich


pl-add-vertex.VLX.txt

 
 
Zitat:
Original erstellt von Geos:
Sorry - hab grad entdeckt - is eine POLYLINE, keine LWPOLYLINE!
(bei einer LW-Poly gehts)

Funktioniert vla-addvertex nur bei leichten PLs?

Gibts auch was für die schweren?


Lisphilfe bemühen! ins Objektmodell gehen und feststellen , das da die Methode APPENDVERTEX heißt. .. und die fügt hinten an ....

(defun c:addvert ()
  (setq #vlaobj (vlax-ename->vla-object (setq OBJ(car (entsel "\nPolyLinie wählen: ")))))
  (setq #pkt (getpoint "\nPunkt einfügen:"))
  (vla-appendvertex
    #vlaobj
    (vlax-3d-point (trans #pkt 1 OBJ))   
  )
)

wenns um einfügen geht -> property Coordinates .... aber ich würde die PL mit Eigenschaftenübenahme neu zeichnen

Anbei mal was für beide Typen ....
------------------
      - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Lead Design Engineer (m/w/d) Powermodul im Bereich Automotive

Semikron Danfoss ist ein Familien­unternehmen, das 2022 aus dem Zusammen­schluss von SEMIKRON und Danfoss Silicon Power hervor­ge­gangen ist. Wir be­schäf­tigen mehr als 4.000 Mit­arbei­tende an 28 Stand­orten auf der ganzen Welt. Unsere globale Präsenz mit Pro­duktions­stand­orten in Deutschland, Brasilien, China, Frankreich, Indien, Italien, der Slowakei und den Vereinigten Staaten gewähr­leistet einen un­ver­gleich­lichen Service für unsere Kunden und Partner....

Anzeige ansehenElektrotechnik, Elektronik
Geos
Mitglied
Vermessungstechniker i.R.


Sehen Sie sich das Profil von Geos an!   Senden Sie eine Private Message an Geos  Schreiben Sie einen Gästebucheintrag für Geos

Beiträge: 1017
Registriert: 21.09.2001

ACAD Map 2010, Win 7 Pro
eigene Lisp's<P>HW: Core i7 860, 2.8 GHz
3.3 GB, NVIDIA GeForce GTS 250

erstellt am: 28. Jun. 2010 14:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke

und ja, es geht ums Einfügen ...
(oder eigentlich um movevertex, gibts aber offensichtlich net - also alt raus neu rein)

------------------
Schöne Grüße
Ernst

www.geopaint.at

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz