|
Lisp : Lisp warten lassen
autocart am 07.01.2009 um 10:52 Uhr (0)
Hallo bu!So groß ist das Problem der Einflussmöglichkeit auf die exe auch wieder nicht.Wenn man die exe selbst nicht manipulieren kann, dann läßt sich zumindest mit z.B. AutoIt3 (oder vielleicht auch mit einer anderen Windows-Programmierung/Automatisierung) relativ leicht eine zweite (eigene) exe basteln, die zuerst die gewünschte fremde exe aufruft, auf dessen Ende wartet und dann die "Kenner-Datei" erzeugt. Und jeder, der AutoLISP versteht, kann mit AutoIt3 auch umgehen.------------------Gruß, Stephanwww ...
|
In das Form Lisp wechseln |
|
Lisp : kleines Lisp Programm
lutzc am 07.01.2009 um 13:27 Uhr (0)
Hallo,(wieder mal) ein Problem für jemand der kein Lisp kann Zum Erkennen von skalierten Bemaßungen in einer Zeichnung soll eine Schnellauswahl über gedrehte Bemaßungen durchgeführt werden, wenn eine mit dem Faktor ungleich 1 gefunden wird bzw. nicht soll ein Dialogfeld erscheinen.Wenn mir jemand das "Grundgerüst" erstellen könnte, den Rest sollte ich dann hinbekommen.Ich denke das ist wieder nur mal ein leichtes für euch Vielen Dank Gruß Christian
|
In das Form Lisp wechseln |
|
Lisp : kleines Lisp Programm
CADmium am 07.01.2009 um 13:40 Uhr (0)
was ist für dich eine skalierte Bemaßung?a) ... ein "Beschriftungs" objekt - Zeichnungsmaßstäbe ect.b) .. eine Bemaßung, wo der Lineare Bamaßungsfaktor 1 ist oderc) .. eine Bemaßung, wo der globale Bamaßungsfaktor 1 ist oderd) .. eine Bemaßung, wo der Bemaßungstext überschrieben wurde?d) .. ganz was anderes ?------------------ - 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 : kleines Lisp Programm
wronzky am 07.01.2009 um 22:18 Uhr (0)
Hallo Christian,wenn Du die Änderung des linearen Bem-Faktors meinst (Sysvar "DIMLFAC"), dann kannst Du folgenden Code verwenden, um die geänderten Bemassungen herauszufiltern:Code:(setq ss-dimlfac-mod (ssget "x" ((0 . "DIMENSION") (-3 ("ACAD" (1070 . 144))))))Dabei gehe ich davon aus, dass die Skalierung NICHT im Stil, sondern mittels Stilüberschreibung erzeugt wurde. Den Rest kriegst Du ja dann selber hin...Grüsse, Henning------------------Henning JesseVoxelManufakturComputer-Dienstleistungen für Archite ...
|
In das Form Lisp wechseln |
|
Lisp : Lisp warten lassen
autocart am 08.01.2009 um 01:53 Uhr (0)
Um mich heute mal von meiner spendierfreudigen Seite zu zeigen , hab ich mal so eine exe gebastelt, die eine andere ausführbare Datei (EXE, BAT, COM oder PIF) ausführt, auf deren Ende wartet und danach eine "Kenner-Text-Datei" erzeugt. Die selbst gebastelte exe zusammen mit dem Source-Code (AutoIt3) ist im zip-file zum Download zur Verfügung.Die exe erwartet 2 Befehlszeilenparameter:1) den Pfad+Namen(+Erweiterung) der auszuführenden Datei (der Pfad kann weggelassen werden, wenn sich die auszuführende ...
|
In das Form Lisp wechseln |
|
Lisp : Lisp warten lassen
Theodor Schoenwald am 08.01.2009 um 12:53 Uhr (0)
Danke Stephan,ich werde es am Wochenende ausprobieren.Morgen bin ich auf der Echtdampfmesse in Sinsheim.GrußTheodor
|
In das Form Lisp wechseln |
|
Lisp : Lisp warten lassen
Theodor Schoenwald am 08.01.2009 um 18:39 Uhr (0)
Hallo Stefan,ich habe es Heute Abend noch getestet.Ob so:(startapp "C:Programme\_PGC
unWaitMakeFile.exe C:Programme\_PGCPGCPock.EXE C:TempPocketOUT.ARF")in AutoLispoder so: runWaitMakeFile.exe PGCPock.exe PocketOUT.ARFim DOS-Fenster und gleichem Ordner, die Datei "PocketOUT.ARF" hat 0 Byte.Normalerweise hat sie viel mehr.Scheinbar wartet das Programm "runWaitMakeFile.exe" nicht bis das Programm "PGCPock.exe" alles fertig hat.Die "PGCPock.exe" hat je nach Kontur viel zu rechnen, die Ergebnisse werden danach ...
|
In das Form Lisp 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 |
|
Lisp : Lisp warten lassen
Theodor Schoenwald am 08.01.2009 um 22:17 Uhr (0)
Hallo Alfred,das ist ein wenig anders, die Datei: "PocketOUT.ARF" wird automatisch von der PGCPock.EXE erstellt, die wird normalerweise nicht angegeben. Da war nur weil die Ablaufdatei von Stephan die Angabe benötigt hat.Ich vermute es müsste dann so aussehen Code:-------------------------------------------------@echo offC:Programme\_PGCPGCPock.EXE echo ExeEnded C:TempCheckLoop.txt-------------------------------------------------Dass ich dann danach die Existenz der "CheckLoop.txt" abfrage.Da bei dem Lisp ...
|
In das Form Lisp wechseln |
|
Lisp : Lisp warten lassen
Theodor Schoenwald am 09.01.2009 um 14:11 Uhr (0)
Hallo Alfred, hallo Stephan,so geht es:---------------Stapeldatei------------@echo offPGCPock.EXEecho ExeEnded CheckLoop.txt-----------Lispabfrage----------------setq Z3 0 Z4 0)(while (not (findfile "CheckLoop.txt")) (setq Z3 (1+ Z3) Z4 (1+ Z4) ) (if (= Z3 100) (progn (princ " .") ;Kontrollanzeige (setq Z3 0) ) ) (if (= Z4 2000) (progn (princ "
Bitte noch warten") (setq Z4 0) ) ))--------------------------------------------------Von allen Vorschlägen die ich bis jetzt probiert habe, ist ...
|
In das Form Lisp wechseln |
|
Lisp : Lisp warten lassen
alfred neswadba am 09.01.2009 um 15:22 Uhr (0)
Hi Theodor, Zitat:(while (not (findfile "CheckLoop.txt"))wird nur dann funktionieren (im Zusammenhang mit obiger BAT-Datei), wenn Deine Zeichnung in C:Temp gespeichert ist oder C:Temp in den Supportpfaden von AutoCAD mit enthalten ist. Zitat:benötigt nur ein "" Umleitungszeichen, zwei bedeutet anhängenmein Empfinden dazu ist, dass beides funktioniert, denn wenn die Datei nicht existiert, dann wird diese auch bei erstellt.Allgemein zu Schleifen während andere Programme arbeiten (sollen): man sollte dem Be ...
|
In das Form Lisp wechseln |
|
Lisp : Lisp warten lassen
Theodor Schoenwald am 09.01.2009 um 17:47 Uhr (0)
Hallo Alfred,dass und funktioniert ist mir bekannt, ich habe die Bemerkung zu auch nur gemacht, wenn jemand die Bat-Datei als Strickmuster verwenden möchte und die Dummy-Datei danach nicht gelöscht wird, sie - mit den Jahren - immer größer wird.Wenn die Dummy-Datei danach gelöscht wird (wie in meinem Fall) ist es egal.Das mit C:Temp und Support-Ordner habe ich so gelöst:Da ich nicht vorher wissen kann, ob ein Pfad C:Temp überhaupt vorhanden ist habe ich folgendes gemacht:;; ----------------------------- ...
|
In das Form Lisp wechseln |
|
Lisp : Lisp warten lassen
Theodor Schoenwald am 09.01.2009 um 18:16 Uhr (0)
Hallo Alfred,auch das habe ich gerade getestet.Hochzählen (von Z3 und Z4) oder (Command "PAUSE" Wert).Als Wert habe ich von "PAUSE" 1000 bis 30000, verschiedene Stufen getestet.Es gab keine Unterschiede bei verschiedenen Pause-Werten und auch nicht zwischen Hochzählen und Pause.Ich habe mit einer aufwendigen Kontur getestet, es waren immer zwischen 23 und 24 Sekunden.Der Zeitverbrauch kommt vom rechnen der "PGCPock.EXE".Auf jeden Fall bin ich froh, dass ich - dank Deinem ersten Vorschlag - nun überhaupt ei ...
|
In das Form Lisp wechseln |