| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY wird von NVIDIA zum Händler des Jahres gewählt – zum dritten Mal in Folge, eine Pressemitteilung
|
Autor
|
Thema: Xlist mit vollständigem Xref-Pfad (1042 / mal gelesen)
|
tappenbeck Mitglied Vermessungsingenieur
Beiträge: 1217 Registriert: 30.05.2002 AutoCAD (Map)2019, Topobase, MapEdit, Lisp, .vb.net
|
erstellt am: 09. Jul. 2018 22:19 <-- editieren / zitieren --> Unities abgeben:
Moin! In den ExpressTools gibt es den Befehl xlist. Dieser zeigt den Namen des Xref an. Ich hätte gerne den vollständigen Pfad zur DWG des Xref. Weiss einer von Euch, ob das eine Lisp ist oder darüber irgendwie erweitert werden kann? In 2008 gab es einmal eine Alternativprogrammierung als DLL. Wäre auch nicht abgeneigt, wenn der Weg zum Ziel über vb.net gehen würde. Kann einer von Euch weiterhelfen? Gruss Jan ------------------ jan :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 Alles
|
erstellt am: 09. Jul. 2018 22:35 <-- editieren / zitieren --> Unities abgeben: Nur für tappenbeck
|
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 10. Jul. 2018 08:10 <-- editieren / zitieren --> Unities abgeben: Nur für tappenbeck
Hallo, also xlist zeigt bei mir keinen Pfad an sondern nur Nentsel Werte. Aber für den Pfad wäre z.B. das ein Weg: Code: (not(vl-catch-all-error-p(setq PfadXR(vl-catch-all-apply 'getpropertyvalue (list (car(entsel)) "ExternalPath"))))(princ(findfile PfadXR)))
------------------ Gruß Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tappenbeck Mitglied Vermessungsingenieur
Beiträge: 1217 Registriert: 30.05.2002 AutoCAD (Map)2019, Topobase, MapEdit, Lisp, .vb.net
|
erstellt am: 10. Jul. 2018 08:14 <-- editieren / zitieren --> Unities abgeben:
Hallo Wolfgang, das liefert mir den Wert für das gewählte XREF, welches direkt eingebunden wurde. Mir geht es aber darum das XREF zu ermitteln innerhalb dieses XREF dessen Element ich gerade angeklickt habe. Halt wie in dem Express-Befehl XLIST. Gruß Jan ------------------ jan :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 10. Jul. 2018 08:26 <-- editieren / zitieren --> Unities abgeben: Nur für tappenbeck
dann z.B. So Code: (not(vl-catch-all-error-p(setq PfadXR(vl-catch-all-apply 'getpropertyvalue (list (last(last(nentsel))) "ExternalPath"))))(princ(findfile PfadXR)))
------------------ Gruß Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tappenbeck Mitglied Vermessungsingenieur
Beiträge: 1217 Registriert: 30.05.2002 AutoCAD (Map)2019, Topobase, MapEdit, Lisp, .vb.net
|
erstellt am: 10. Jul. 2018 08:55 <-- editieren / zitieren --> Unities abgeben:
|
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 10. Jul. 2018 09:14 <-- editieren / zitieren --> Unities abgeben: Nur für tappenbeck
bei mir geht es. Sollte auch nur zeigen das es ziemlich simpel sein kann an den gewünschten Wert zu kommen und keine maßgeschneiderte Lösung. Geh doch mal schritt für schritt durch und schau wo es hackt. Wobei ich denke es liegt an Nentsel vielleicht mal so probieren (car(last(last(nentsel)))) Schau dir in der Hilfe mal Nentsel an und schaue was es die zurück gibt ------------------ Gruß Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tappenbeck Mitglied Vermessungsingenieur
Beiträge: 1217 Registriert: 30.05.2002 AutoCAD (Map)2019, Topobase, MapEdit, Lisp, .vb.net
|
erstellt am: 10. Jul. 2018 09:39 <-- editieren / zitieren --> Unities abgeben:
Moin! ich habe einmal das von innen aufgezogen und für Code: (vl-catch-all-apply 'getpropertyvalue (list (last (last (nentsel))) "ExternalPath"))
wird mir nur der Name für das "Haupt-XREF" angezeigt. Wie ich dann über findfile an die Pfade der "Sub-Xref" kommen soll entzieht sich meiner Kenntnis. Lisp meine ich relativ gut hinzubekommen - aber mit den VL-Funktionen stehe ich seit jeher auf "Kriegsfuss". Gruß Jan ------------------ jan :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 10. Jul. 2018 09:45 <-- editieren / zitieren --> Unities abgeben: Nur für tappenbeck
|
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 10. Jul. 2018 10:06 <-- editieren / zitieren --> Unities abgeben: Nur für tappenbeck
Schau mal ob das das richtige Ergebniss liefert. Code: (not (vl-catch-all-error-p (setq PfadXR (vl-catch-all-apply 'getpropertyvalue (list (car (last (nentsel))) "ExternalPath") ) ) ) (princ (findfile PfadXR)) )
------------------ Gruß Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tappenbeck Mitglied Vermessungsingenieur
Beiträge: 1217 Registriert: 30.05.2002 AutoCAD (Map)2019, Topobase, MapEdit, Lisp, .vb.net
|
erstellt am: 10. Jul. 2018 10:10 <-- editieren / zitieren --> Unities abgeben:
Moin! mit dem Ergebnis Zitat: Objekt wählen: K:\LAUFENDE DATENVERARBEITUNG\20180000\017\PLAN\2018_001_017_L.DWG; Fehler: Zu viele Argumente
Im Grunde ja - aber da ist immer noch diese Fehlermeldung. Gruß Jan ------------------ jan :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 10. Jul. 2018 10:33 <-- editieren / zitieren --> Unities abgeben: Nur für tappenbeck
Also mehr gehr jetzt wirklich nicht mehr Code: ;;; XRef auswählen ! (setq AuswahlXR (car (last (nentsel)))) ;prüfe ob Auswahl einen Wert mit Pfad hat wenn nicht setze PfadXR als fehler (hier kann Pfad relativ sein) (setq PfadXR (vl-catch-all-apply 'getpropertyvalue (list AuswahlXR "ExternalPath") ) ) ;;; Ist PfadXR Fehlerhaft ? ja oder nein mit / not Aussage umdrehen (If (not (vl-catch-all-error-p PfadXR)) (princ (setq AbsoluterPfadXR (findfile PfadXR))); findfile macht Pfad Rel zu Absolut (princ "Fehler") ) ;;; Egebniss (princ AbsoluterPfadXR)
------------------ Gruß Wolfgang Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tappenbeck Mitglied Vermessungsingenieur
Beiträge: 1217 Registriert: 30.05.2002 AutoCAD (Map)2019, Topobase, MapEdit, Lisp, .vb.net
|
erstellt am: 10. Jul. 2018 14:56 <-- editieren / zitieren --> Unities abgeben:
|