|
AutoCAD VBA : vb.net Starke Namen
alfred neswadba am 24.06.2009 um 11:58 Uhr (0)
Hi Andreas, Zitat:Ich habe das Problem nun anders gelöst...für Dich gut, für mich schade, weils mich schon sehr interessiert hätte. Mit Lisp verstehe ich nicht ganz, was mit Ausgabe und aus Lisp heraus gemeint ist. Wenn Du aus Deiner dotNET-Applikation Lisp-Code starten und ausführen willst, dann gibt es das VL.Application-Objekt, das gibt Dir die Möglichkeit, LispCode aus dotNET an das VL.Application-Objekt zu übergeben und zu evaluieren, und es liefert auch einen Return-Wert, wenn das Dein Lisp-Code mac ...
|
| In das Form AutoCAD VBA wechseln |
|
Lisp : Selection Set LISP -> VBA
alfred neswadba am 18.12.2008 um 10:40 Uhr (0)
Hi Stephan,vorweg ich verstehe 0 (in Worten NULL) von Lisp, aber Deine Lösungsbeschreibung ist mit nicht klar, vielleicht fehlt mir nur LISP-Verständnis, vielleicht mach ich Dich mit diesem nur auf etwas aufmerksam. Das in VBA reservierte Wort acSelectionSetPrevious hat in Lisp IMHO keine Bedeutung, und aus meiner Sicht hat Deine 2.te Zeile auch für das Funktionieren in VBA keine Auswirkung.Wenn Du zuerst in Lisp dieses machst: (setq selsetLisp (ssget "_X"))Und unter der Voraussetzung, dass der Anwender di ...
|
| In das Form Lisp wechseln |
|
AutoCAD VBA : Block Zuschneiden
alfred neswadba am 07.07.2009 um 09:28 Uhr (0)
Hi,mit z.B. (handent "3D2") kannst Du das Objekt mit dem Handle &h3D2 an Lisp übergeben, Du kannst genauso nur den Handle als Text übergeben und dann im Lisp mit handent auswerten.Wenn es Dir darum geht, wie man in Lisp eine Funktion definiert, die Parameter übernimmt == das kriegst Du auch schon aus der Hilfe direkt raus, da steht z.B. (defun sym ([arguments] [/ variables...]) expr...) HTH, - alfred -------------------www.hollaus.at
|
| In das Form AutoCAD VBA wechseln |
|
Lisp : Lisp warten lassen
alfred neswadba am 08.01.2009 um 19:33 Uhr (0)
Hi,könnte das nicht mit einem ganz normalen BAT-File erledigt werden (wenn schon Lisp in einer Schleife auf Dateiexistenz wartet), könnte so aussehen:Code:@echo offC:Programme\_PGCPGCPock.EXE C:TempPocketOUT.ARFecho ExeEnded C:TempCheckLoop.txt, die Datei C:TempCheckLoop.txt müsste dann halt schon vom Lisp aus vor Aufruf der BAT-Datei gelöscht sein.- alfred -
|
| In das Form Lisp wechseln |
|
AutoCAD VBA : Lisp-Programm abwarten
alfred neswadba am 08.04.2009 um 08:48 Uhr (0)
Hi Gerhard,wie rufst Du Dein Lisp auf? In der Regel (wenn VBA und nicht dotNET) wartet die Fortsetzung Deines Codes sowieso auf Beendigung des vorigen Statements.- alfred -------------------www.hollaus.at
|
| In das Form AutoCAD VBA wechseln |
|
Rund um AutoCAD : Lisp für arx uns mns
alfred neswadba am 05.01.2009 um 15:28 Uhr (0)
Hi,bekommst Du das händische Laden (direkter Auufruf in der Befehlszeile) samt der Pfadangaben hin?so stehts im LISP, die Verzeichnisangabe mit ../.. könnte vielleicht nicht ganz zum Rest passen?(arxload "../../Ac2006.arx" nil)- alfred -
|
| In das Form Rund um AutoCAD wechseln |
|
Rund um AutoCAD : Alias für eigene Befehlsfolgen erstellen
alfred neswadba am 01.03.2010 um 12:15 Uhr (0)
Hi,leider nein, ABER:Du kannst Dir in AutoCAD eigene Befehle erstellen, die einfachste Form mittels LISP.(defun C:myCircle()(command "_circle" "2P"))und als Alias kannst Du definierenMC, *myCircleDas LISP muss in diesem Fall vorher geladen sein, sonst funkt auch der Befehl MC nicht.Oder Du definierst Dir gleich die Funktionen mit LISP(defun C:MC()(command "_circle" "2P"))Dann brauchst Du nur das LISP laden und Dir steht in der Befehlszeile der Befehl MC zur Verfügung.Das LISP-Statement ist für einfache Bef ...
|
| In das Form Rund um AutoCAD wechseln |
|
Lisp : Mit LISP programmiert fast niemand mehr, heutzutage ...
alfred neswadba am 17.11.2009 um 18:35 Uhr (0)
Hi Peter,zugegeben, ich komme (eher) von der dotNET-Seite, aber ich hab in diesem Thread auch einen für Dich auswertbaren Absatz über LISP hinterlegt.- alfred -------------------www.hollaus.at
|
| In das Form Lisp wechseln |
|
Lisp : Mit LISP programmiert fast niemand mehr, heutzutage ...
alfred neswadba am 17.11.2009 um 18:35 Uhr (0)
Hi Peter,zugegeben, ich komme (eher) von der dotNET-Seite, aber ich hab in diesem Thread auch einen für Dich auswertbaren Absatz über LISP hinterlegt.- alfred -------------------www.hollaus.at
|
| In das Form Lisp wechseln |
|
Rund um AutoCAD : Befehle mit Leerstelle in acad_pgp
alfred neswadba am 10.10.2010 um 20:28 Uhr (0)
Hi,mit Lisp-Unterstützung wird es gehen. In Lisp:(defun C:MY134() (command "imostool 134"))Dieses im Menu-MNL oder in ACAD.LSP, ...Und in das PGP kannst Du dann MY134 aufrufen.- alfred -------------------www.hollaus.at
|
| In das Form Rund um AutoCAD wechseln |
|
AutoCAD ARX Object : Lisp von c# aus laden ohne! SendStringToExecute
alfred neswadba am 17.05.2011 um 17:13 Uhr (0)
Hi,wenn Du das VL-ActiveX-Objekt verwendest, dann kannst Du direkte LISP-Statements absetzen, damit auch (load "C:/TEMP/TEST.LSP") funktionieren.Basis im Form von VBA findest Du hierHTH, - alfred -------------------www.hollaus.at
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD VBA : Lisp-Programm abwarten
alfred neswadba am 08.04.2009 um 09:06 Uhr (0)
Hi Gerhard,ok, ich gehe davon aus, dass SendCommand auch solange/soviel sendet, bis dem Befehl alle Parameter übergeben sind und dann auch der (LISP-)Befehl fertig abgearbeitet ist.Von der Strategie des Programmierens hast Du hier schon ein eher gewaltiges Problem (einer der Gründe, wieso SendCommand eher zu vermeiden ist) == wenn der User mit ESC Dein LISP abbricht (in Deinem Fall keine Koordinate eingibt), dann stehst Du mit Deinem nachfolgenden VBA-Code auch an.D.h. die weniger saubere Variante wäre, au ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Bögen in Polylinie
alfred neswadba am 12.02.2011 um 13:32 Uhr (0)
Hi,mit VBA direkt schwer, wenn Du von VBA aus LISP aufrufst und von LISP dann die Koordinaten retournierst (retournieren kannst ), dann guck in LISP die Funktionen VLAX-CURVE-.... an (z.B. hier).Damit kannst Du einen Abstand bestimmen (entlang des Linienzugs, kann dann auch SPLINE und sonstwas CURVE-artiges sein) und bekommst für jeden Abstand von Linienzugstartpunkt XYZ-Koordinaten zurück.Mit VBdotNET hast Du direkt Zugriff auf die CURVE-Funktionen, mit VBA leider nicht.- alfred -------------------www.ho ...
|
| In das Form AutoCAD VBA wechseln |