| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Der Weg zur Smart Factory: Ganzheitliche Planung für eine digitale Zukunft, ein Webinar am 09.10.2024
|
Autor
|
Thema: Variable definieren (2746 mal gelesen)
|
Zeli Mitglied
Beiträge: 129 Registriert: 04.04.2003
|
erstellt am: 13. Apr. 2003 20:46 <-- editieren / zitieren --> Unities abgeben:
|
T. Bürger Mitglied Technischer Angestellter
Beiträge: 201 Registriert: 30.01.2001 AcadCAD MEP 2008 (D A CH)
|
erstellt am: 13. Apr. 2003 23:03 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
|
Bernd Cuder Mitglied Selbständig
Beiträge: 692 Registriert: 10.07.2002 AutoCAD 2002/2004/2005 unter Windows 2000 Professional SP3 PIV 3.4GHz 1024MB NVIDIA GeForce FX Go5700
|
erstellt am: 14. Apr. 2003 00:50 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
|
nahe Ehrenmitglied
Beiträge: 1764 Registriert: 18.01.2001 arbeite mit: Dell Precision 7750 i7 2,6 GHz 6 Kerne 32GB RAM 512GB SSD NVIDIA Quadro RTX 4000 ------------------------ SWX-2020 SP5.0 EPDM ---------------- Windows 10 ---------------- VB.net VB VBA ein wenig Swift am Mac
|
erstellt am: 15. Apr. 2003 08:45 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
|
Zeli Mitglied
Beiträge: 129 Registriert: 04.04.2003
|
erstellt am: 15. Apr. 2003 12:44 <-- editieren / zitieren --> Unities abgeben:
Danke Bernd Die Users-Variablen kann ich nicht verwenden, da sie nach einem Neustart nicht mehr gespeichert sind. Wie kann man denn mit Xdata, Dictionarys, usw. Variablen erstellen? Gruss Zeli Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 15. Apr. 2003 12:49 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
Hallo Zeli, am besten wäre, du schreibst mal, was du konkret vor hast. X-Daten werden an irgendwelche Zeichnungsobjekte 'angehängt'. Dictionaries können auch ohne Objecte existieren. Möglichkeiten gibts viele. Vielleciht reicht bei Dir ja auch schon ein Block, bestehend aus einem unsichtbaren Attribut? Schreib mal was du vor hast, dann kann man auch Lösungen anbieten. Grüße Holger ------------------ Holger Brischke CADlon - Lisp over night! Neue Tool's im Free-&Download Zugang zum Download schon gesichert? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zeli Mitglied
Beiträge: 129 Registriert: 04.04.2003
|
erstellt am: 15. Apr. 2003 14:57 <-- editieren / zitieren --> Unities abgeben:
Hallo Holger Ich möchte die Blöcke über ein Pulldownmenü einfügen. Wenn ich einen Block erstelle, müsste ich den Namen in der Befehlszeile eingeben. Dieser wird in einer Variable gespeichert und dann wird mit der Variable ein W-Block gespeichert. Der Menüname wird durch die selbe Variable definiert, was bewirkt, dass der Blockname im Menü erscheint. Dazu muss ich natürlich Variablen erzeugen, die auch in einer neuen AutoCAD-Sitzung noch vorhanden sind. Wäre toll wenn Du mir weiterhelfen könntest. Freundliche Grüsse Zeli Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 15. Apr. 2003 15:23 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
Hallo Zeli, so ganz ist mir dein Vorgehen noch nicht klar. Du erwähnst jedoch Menü. Warum lässt du durch die Lisp einen Menüeintrag erzeugen. Dann brauchst du nur, auch das geht über Lisp, das Menü zu aktualisieren. Und das Menü steht dann ja immer zur Verfügung. Halte ich für den besseren Ansatz. In Ähnlicher Form, habe ich das für eine Blockbibliothek realisiert. Sollte also auch für Deine Belange gehen. Bei Fragen ... Grüße Holger ------------------ Holger Brischke CADlon - Lisp over night! Neue Tool's im Free-&Download Zugang zum Download schon gesichert? [Diese Nachricht wurde von Brischke am 15. April 2003 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zeli Mitglied
Beiträge: 129 Registriert: 04.04.2003
|
erstellt am: 15. Apr. 2003 19:55 <-- editieren / zitieren --> Unities abgeben:
Hallo Holger Ich versuch mich mal ganz deutlich auszudrücken: Das Menü besteht schon. Der Menüname soll durch eine Variable automatisch erscheinen [$(eval, $(getvar,users1))]^C^C. Mit Users1 funktioniert es auf jeden Fall. Wenn die Variable nicht definiert ist erscheint also ein "leeres Menü". Nun möchte ich über ein Makro einen Block erstellen, dessen Blockname dann auch als Menüname erscheint. Das Menü lässt sich so auch von Nicht-Programmierern mit Blöcken erweitern. Nun habe ich aber das Problem, dass erstens die Users-Variablen nach einem Neustart nicht mehr vorhanden sind und ich natürlich auch mehr als 5 Blöcke verwalten will. Deshalb kommen die Users-Variablen nicht in Frage. Nun meine Frage: Wie kann ich Variablen erstellen (wenn möglich per Makro) die auch nach einem Neustart noch vorhanden sind und somit der Menüname wieder angezeigt wird? Ich hoffe, dass es einigermassen verständlich ist. Grüsse Zeli Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 15. Apr. 2003 22:06 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
Hallo Zeli, dein Ansatz macht nur Sinn, wenn Du die Menüeinträge in Abhängigkeit von der geöffneten Zeichnung geändert haben möchtest. Ich kapiere nicht, warum du den Blocknamen nicht direkt mit in das Menü reinschreibst. also - Warum nicht? Ob du diesen in eine Sysvar schreibst oder direkt in's Menü macht doch keinen Unterschied. Ich glaube (glauben heißt nicht wissen!) du möchtest einfach, dass das Menü immer aktuell ist. Eine Menüaktualisierung ist ja nun gar kein Problem, man kann ja per Lisp einfach das Menü neu laden. Ich möchte nicht Dein Konzept über den Haufen werfen, mir fehlt (wie erwähnt) einfach noch ein Stück, warum Du diesen Weg gehen möchtest. ??? Grüße Holger ------------------ Holger Brischke CADlon - Lisp over night! Neue Tool's im Free-&Download Zugang zum Download schon gesichert? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nahe Ehrenmitglied
Beiträge: 1764 Registriert: 18.01.2001 arbeite mit: Dell Precision 7750 i7 2,6 GHz 6 Kerne 32GB RAM 512GB SSD NVIDIA Quadro RTX 4000 ------------------------ SWX-2020 SP5.0 EPDM ---------------- Windows 10 ---------------- VB.net VB VBA ein wenig Swift am Mac
|
erstellt am: 16. Apr. 2003 07:38 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
Hallo Zeli vielleicht wär es ja auch ein Ansatz, die Blocknamen in eine seperate Datei zu schreiben, die den selben Namen wie die DWG-Datei hat nur mit einer anderen Extension. Dann könntest Du die Datei bei jedem Aufruf des Programms einlesen, bzw. wär es auch relativ einfach einzelne Dateien untereinander abzugleichen ohne AutoCAD zu starten, wenn es notwendig wäre. Das Ganze dann natürlich den Nachteil, dass es zu Problemen kommen kann, wenn die DWG-Datei verschoben oder kopiert wird. Weiters wär bei dem ganzen Problem noch zu beachten, was passiert, wenn sich ein Block ändert oder wenn einer gelöscht wird? Grüße Heinz
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Grebe Mitglied
Beiträge: 536 Registriert: 16.12.2002 LT-2021, Civil3D-2021, BricsCAD V18 HP-DesignJet T1200
|
erstellt am: 16. Apr. 2003 08:37 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
Ich glaube, Zeli möchte in etwa Folgendes: Jeder User soll sich seine meistbenutzten Blöcke selber definieren und über einen Menüpunkt einfach wieder einladen können. Ich speichere für solche Fälle die entsprechenden Werte mittels SETENV und hole sie zurück mittels GETENV (Anwendung analog wie SETVAR und GETVAR). Diese Werte bleiben Zeichnungsunabhängig auch nach einem Neustart erhalten. Hoffe das war's Mathias Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zeli Mitglied
Beiträge: 129 Registriert: 04.04.2003
|
erstellt am: 16. Apr. 2003 09:44 <-- editieren / zitieren --> Unities abgeben:
|
Grebe Mitglied
Beiträge: 536 Registriert: 16.12.2002 LT-2021, Civil3D-2021, BricsCAD V18 HP-DesignJet T1200
|
erstellt am: 16. Apr. 2003 09:48 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
|
Zeli Mitglied
Beiträge: 129 Registriert: 04.04.2003
|
erstellt am: 16. Apr. 2003 09:53 <-- editieren / zitieren --> Unities abgeben:
Hallo Nun ergibt sich aber schon die nächste Frage: In welcher Datei sind denn diese Variablen gespeichert. Ich möchte es ermöglichen, die Variablen auch auf einen anderen PC zu übertragen. Gruss Zeli Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Grebe Mitglied
Beiträge: 536 Registriert: 16.12.2002 LT-2021, Civil3D-2021, BricsCAD V18 HP-DesignJet T1200
|
erstellt am: 16. Apr. 2003 09:58 <-- editieren / zitieren --> Unities abgeben: Nur für Zeli
|