|
AutoLisp : Auswahl aller Objekte auf bestimmten Layern
Goofy007 am 29.03.2006 um 14:37 Uhr (0)
Hallo Thomas,danke für die rasche Antwort.Leider hab ich meine Frage nicht exakt genug formuliert.Ich möchte die Layer nicht anhand ihrer Namen definieren, sondern duch anklicken auswählen. Wobei die Anzahl vorher nicht bekannt ist, sondern durch beenden der Auswahl definiert werden soll.Ich hoffe ich bin mit meiner Bitte nicht zu unverschämt, aber ich verstehe zu wenig von Lisp um mir da eine Schleife bauen zu können.mfg Didi
|
In das Form AutoLisp wechseln |
|
AutoLisp : Lisp zeitlich limitieren?
Theodor Schoenwald am 29.03.2006 um 11:42 Uhr (0)
Hallo Nano,das mit dem Datum versetzen geht, aber wenn Du nicht nur angibstab wann Dein Programm nicht mehr funktionieren soll, sondern auch von welchem Zeitpunkt an, muss der mögliche Trixer immer genau aufpassen, um wie viel er die Uhr zurückstellt. Er muss also die von Dir angebene Startzeit (ab wann geht) erst heraus finden. Ich hatte vor Jahren diese Spielerei selbst mal in Programme von mir eingebaut. Das Ergebniss war in keinem Verhältnis zum Aufwand, ständig immer schauen, ob ich bei welchem Kunde ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Lisp zeitlich limitieren?
Nano am 29.03.2006 um 14:47 Uhr (0)
Hallo TheodorWie machst du es jetzt, wenn du ein Demo raus gibst?Danke noch für deine Antwort.Gruss Nano
|
In das Form AutoLisp wechseln |
|
AutoLisp : Auswahl aller Objekte auf bestimmten Layern
Brischke am 29.03.2006 um 14:48 Uhr (0)
Hallo Didi,ok, dann wollen wir mal helfen, dass das Lisp-Wissen wächst.Du brauchst also eine Schleife die Beendet wird, wenn kein Objekt mehr gewählt wurde.Das ist dann eindeutig (whileDu brauchst was zur Objektwahl: (entsel ..)Du brauchst was, um den Layer rauszubekommen: (cdr(assoc 8 (entget ..Und du brauchst was, um den String zu basteln, der die Layernamen entält.(setq laySTRING (strcat laySTRING "," LAYERNAME))und im Ganzen müsste das so, oder so ähnlich aussehen:(while (setq obj(entsel "Qobjekt wähle ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Auswahl aller Objekte auf bestimmten Layern
CAD-Huebner am 29.03.2006 um 18:00 Uhr (0)
Die Lösung von Holger ist sicherlich die einfachere und verständlichere Lisp-Lösung. Trotzdem möchte ich hier auf die Vorzüge von Jörns Code hinweisen, um seine Leisutng zu würdigen.Deine (aus Holgers Tipps entstanden Version) muss (wegen entsel) jedes Objekt einzeln anwählen, ssget erreicht durch Auswahlfenster mit 2 Mausklicks unendlich viele Objekte/Layer.Außerdem wird in Jörns Code jeder Layer nur einmal im Suchstring angegeben, bei deinem Code wird durch Anpicken von 10 Objekten auf dem gleichen Layer ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Lisp zeitlich limitieren?
Langenhorst am 29.03.2006 um 19:10 Uhr (0)
Hallo nano,wenn jemand nur genügend Kenntnisse und Energie hat, wird er einen Weg finden, jeden Schutz auszuschalten. Aber ob sich so jemand überhaupt ein Programm kaufen wollte, wage ich zu bezweifeln. Denn mit manchen Fähigkeiten könnte er dieses doch auch selbst erstellen.Was die Zurückstellung des Systemdatums angeht und den Aufwand mal beiseite gelassen: Du kannst die Zeitabfrage auch etwas komplizierter gestalten, indem du nicht nur das aktuelle Systemdatum ausliest, sondern evtl. auch noch die Zeit ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Lisp zeitlich limitieren?
Theodor Schoenwald am 29.03.2006 um 20:45 Uhr (0)
Hallo Nano,"Wie machst du es jetzt, wenn du ein Demo raus gibst?"Ganz einfach, ich gebe keine mehr heraus.Ich hatte vor Jahren auch eine Version, die nur 60 CNC-Sätze ausgeben konnte. Einige haben versucht diese Version "aufzubohren", aber es kam kein Kunde mehr dazu. Den Satz von Michael: "Aber ob sich so jemand überhaupt ein Programm kaufen wollte..", kann ich nur bestätigen.Bis Ende Februar, hatte ich für 3 Monate eine kostenlose Version für das Drehen bereitgestellt. Manche haben sich gefreut und bedan ...
|
In das Form AutoLisp wechseln |
|
Lisp : Variable in Lisp aus Excel
CADchup am 28.03.2006 um 14:34 Uhr (2)
Hi,hier der Ausschnitt der Hilfe, der für dich der entscheidende sein dürfte:Establishing a Connection to an Application If an instance of Microsoft Word is already running on your PC, use vlaxget-object to establish a connection to the application. For example, the following function call establishes a connection to a Microsoft Word application, and saves a pointer to the application in a variable named msw:(setq msw (vlax-get-object "Word.Application"))The vlax-create-object function creates a new instan ...
|
In das Form Lisp wechseln |
|
AutoLisp : Textfahnen ??
Goofy007 am 30.03.2006 um 09:00 Uhr (0)
Hallo Bauvermesser,ich hätte da noch einen anderen Vorschlag an das Problem ranzugehen.Wie wäre es wenn man Führungen verwendet? Man könnte doch Führungen erzeugen welche den Einfügepunkt aus Einfügepunkt Text minus Vektor nehmen, und den Text als Führungstext verwenden.Ich kann dir leider nicht sagen, wie man die Umwandlung/Generierung der Führungen in Lisp programmiert, aber dafür gibt es hier sicher genug Schlaue Leute welche dir gerne auf die Sprünge helfen.Zur Not kannst du auch versuchen das mit eine ...
|
In das Form AutoLisp wechseln |
|
Lisp : Variable in Lisp aus Excel
CADmium am 21.03.2006 um 15:05 Uhr (1)
probier mal (setq APP(vlax-get-or-create-object "excel.application"))und am Ende deines Programmes (vlax-release-object APP)------------------ - 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 : Variable in Lisp aus Excel
Dolcetto am 28.03.2006 um 14:14 Uhr (1)
So habe noch ein wenig probiert, damit die Excel mehrmals verfügbar steht. Fuktioniert leider nicht.Habe es soweit geschafft, indem ich alls erste Zeile meiner Lisp (vl-load-com) eingesetzt habe, dass sich die excel wieder öffnen lässt und im AutoCAD auch das Einfügen funktioniert, allerdings sehe ich die Arbeitsfläche im Excel (die Zellen und Zeilen) nicht mehr.Öffne ich zuerst ein leeres Excel Dokument und öffne über dieses meine Richtige Excel, sehe ich alles wieder aber AutoCAD bringt dann wieder VLA-O ...
|
In das Form Lisp wechseln |
|
Lisp : Variable in Lisp aus Excel
Dolcetto am 21.03.2006 um 07:40 Uhr (1)
Also ich komme einfach nicht weiter.(setq excel (vlax-get-object "excel.application")ExcelWorkbook (if excel (vlax-get-property excel "ActiveWorkbook"))ExcelSheet (if ExcelWorkbook(vlax-get-property ExcelWorkbook "ACTIVESHEET"))ExcelCells (if ExcelSheet(vlax-get-property ExcelSheet "CELLS")))(setq a (vlax-variant-value (vlax-get-property ExcelCells "item" 2 1)))Lasse ich genau diesen Code laufen mit einer geöffneten Excel, in der ich in der Zelle A1 den wert 50 eingetragen habe, bekomme ich vollgende meldu ...
|
In das Form Lisp wechseln |
|
Lisp : Variable in Lisp aus Excel
Dolcetto am 21.03.2006 um 15:00 Uhr (1)
So funkitoniert bei mir mitlerweile auch soweit! Allerdings wenn ich die Excel einmal schliesse und wieder öffne, kommt AutoCAD jedesmal mit dieser meldung: VLA-OBJECT nilIch kann die Excel bearbeiten, speichern, aber sobald ich sie Schliesse und wieder egal ob diese oder eine andere öffne, und im AutoCAD die bisher Funkionierenen Lisps laufen lasse kommt immer diese Meldung. AutoCAD neustarten nützt nichts. Allerdings einen PC-Neustart behebt das problem, bis zum ersten schliessen der Excel.Ist das ein B ...
|
In das Form Lisp wechseln |