|
Lisp : VBA - Formular aus Lisp aufrufen - (Vla-eval - Problem)
CADmium am 04.09.2012 um 19:10 Uhr (0)
ich verweise mal aufhttp://ww3.cad.de/foren/ubb/Forum145/HTML/002236.shtml.... auch wenns nicht weiterhilft------------------ - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form Lisp wechseln |
|
Lisp : Notepad-Task
CADmium am 15.10.2012 um 09:28 Uhr (0)
wenn du Änderungen in einem Lisp per Notepad an einer Textdatei vornehmen lassen willst, laß das Lisp doch warten , bis Notepad wieder geschlossen ist.Der Notepadinhalt ist zur Bearbeitungszeit nur im Speicher - wie auch bei einer NEUEN Datei, die wird auch erst beim Speichern angelegt.Ach ja .. mit dem Wartenlassen :(vl-load-com)(if(setq WScript (vlax-get-or-create-object "WScript.Shell")) (progn (vl-catch-all-apply vlax-invoke-method (list WScript "Run" (if(setq DATEI (findfile ...
|
In das Form Lisp wechseln |
|
Lisp : 3drotate in Lisp
CADmium am 19.10.2012 um 16:54 Uhr (0)
oder frage die Endkkodinaten mit vlax-curve Funktion ab, die liefern dir absolute globale Koordinaten.... die kannst du dann ins aktuelle bks transen und dann dein 3drotate ausfürhren.. ..und wenn du spider_dds Vorschlag verfolgst, aber kein Civil hast ... gibt auch Tools, die sowas können ...------------------Also ich finde Unities gut ...--------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desse ...
|
In das Form Lisp wechseln |
|
Lisp : 3drotate in Lisp
CADmium am 22.10.2012 um 10:00 Uhr (0)
Hmm .. ist das echt so kompliziert ? (if(and(setq OBJ(car(Entsel "
Polyline : "))) (setq VOBJ(vlax-ename-vla-object OBJ)) (setq A (vlax-curve-getstartpoint VOBJ)) (setq B (vlax-curve-getEndpoint VOBJ)) (setq Winkel 60.0) ) (command "_rotate3d" OBJ "" "_2p" (trans A 0 1)(trans B 0 1) Winkel))------------------Also ich finde Unities gut ...--------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lö ...
|
In das Form Lisp wechseln |
|
Lisp : Dynamischer Block ändert Namen?
CADmium am 24.10.2012 um 14:30 Uhr (0)
...bei Referenzen von Dynamischen Blöcken nicht nach Blocknamen suchen, sondern nach deren Effektivnamen .. dazu die vla-Funktionen nutzen, da es über Normalo-Lisp nicht direkt implementiert und der Zugriff etwas tricki ist ....Mal etwas Bsp-Code für C&P (defun BLOCKSELECT ( NAMEFILTER / BLOCK LISTE SSET SSET2 ITEM VLAITEM INDEX) (vl-load-com) (or(=(type NAMEFILTER)STR)(setq NAMEFILTER "*")) (vlax-for BLOCK (vla-get-blocks(vla-get-activedocument(vlax-get-acad-object))) (if(and(=(vla-get-isxref BLO ...
|
In das Form Lisp wechseln |
|
Lisp : mit Hilfe von Lisp Eigenschaften von Multi-Führungslinien auslesen
CADmium am 27.10.2012 um 20:33 Uhr (0)
Das ist alles in Dictionaries verpackt, wo man sich entsprechend durchhangeln mußein Beispiel:(setq A(entget(NAMEDOBJDICT)))(setq A(member(3 . "ACAD_MLEADERSTYLE") A))(setq A(cadr A))(setq A(entget (cdr A)))(setq B(member(3 . "Standard") A))(setq B(cadr B))(setq B(entget (cdr B)))(setq TS(entget(cdr(assoc 342 B))))(cdr(assoc 2 TS))------------------Also ich finde Unities gut ...--------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereit ...
|
In das Form Lisp wechseln |
|
Lisp : AEC_MVBLOCK_REF Attribut auslesen
CADmium am 03.11.2012 um 22:47 Uhr (0)
ohne ACA zu kennen .. ich würde bei den Sachen aud ExtDictionaries der Blockreferenzen tippen ... an die kommst du mit activex oder Lisp ran ... da werden die Sachen dann in Xrecords verpackt sein .. Try und Error , da meist nicht dokumentiert...Wenn das sichtbare Sachen sind, hilft vielleicht eine Kopie des objektes, dann ein explode .. Auswertung .. dann löschen der "Splitter" ..------------------Also ich finde Unities gut ... und andere sicher auch--------------------------------------- - Thomas - ...
|
In das Form Lisp wechseln |
|
Lisp : Civil3d API progn mit Vlisp C#
CADmium am 09.11.2012 um 09:41 Uhr (0)
Jedes Programm hat Funktionen und Proceduren .... einige werden nut intern genutzt, sind also privat, andere erlauben auch die Nutzung / Steuerung von "außen" werden als public bezeichnet = die API , Com und die c#/.Net-Klassen gehen in der Bekanntmachung der funktionen halt nur einen etwas anderen Weg. Und was dem internen Lispinterpreter "bekannt" gemacht wird liegt an Adesk...Du kannst dir auch in Lisp eine API= Funktionsbibliothek schreiben, ist halt bloß nicht mitgeliefert und .. ok .. an einige Sach ...
|
In das Form Lisp wechseln |
|
Lisp : schriftfelder via lisp (ac2005)
CADmium am 26.08.2009 um 11:23 Uhr (0)
Zitat:Original erstellt von Dorfy:(vla-get-angle (vlax-ename-vla-object (car (entsel)))));liefert dir den winkel einer linie (Bögen PL sind komplizierter)deshalb ist vielleicht die Funktion vlax-curve-getFirstDeriv interessanter ..------------------ - Thomas -"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form Lisp wechseln |
|
Lisp : CSV-Datei mit LISP-Programm einlesen
CADmium am 11.02.2013 um 12:48 Uhr (0)
eine csv Datei ist normalerweise eine ASCII-Datei ....Ein paar Codeschnipsel zum Einlesen findest du hier------------------Also ich finde Unities gut ... und andere sicher auch--------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form Lisp wechseln |
|
Lisp : CSV-Datei mit LISP-Programm einlesen
CADmium am 11.02.2013 um 12:54 Uhr (0)
... versteh ich nicht , aber danke für deine ausführliche Problembeschreibung ...------------------Also ich finde Unities gut ... und andere sicher auch--------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form Lisp wechseln |
|
Lisp : Hilfe bei lisp! Block Attrtibute rotation und position!
CADmium am 15.02.2013 um 07:29 Uhr (0)
ein Attsync ohne Positionsverschiebung gibts auch ... such mal nach AttsyncX------------------Also ich finde Unities gut ... und andere sicher auch--------------------------------------- - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
|
In das Form Lisp wechseln |
|
Lisp : gruppenfilter per lisp ändern
CADmium am 10.04.2013 um 13:13 Uhr (0)
Da du ja keinen Code mit gepostet hast , gibts wohl auch noch keinen naja.. egal .... mal ein Schnipsel für dir Richtung :(defun LAYGROUPFILTER( / OBJ DICT ITEM E D N LISTE)(if(and(setq OBJ(vla-get-layers (vla-get-activedocument(vlax-get-acad-object)))) (=(vla-get-hasextensiondictionary OBJ):vlax-true) (setq OBJ(vla-GetExtensionDictionary OBJ)) (not(vl-catch-all-error-p (setq DICT(vl-catch-all-apply vla-item (list OBJ "AcLyDictionary"))) ) ) ) (vlax-for ITEM DICT (if(and(setq E(vl ...
|
In das Form Lisp wechseln |