| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: Aktuelle auswahl für Makros (3407 mal gelesen)
|
Christian21P Mitglied
Beiträge: 121 Registriert: 02.03.2010 Acad 2011 Acad Civil 3D 2011 Windows 7
|
erstellt am: 08. Jul. 2011 12:01 <-- editieren / zitieren --> Unities abgeben:
Ich habe mich etwas mit Aufzeichnungsmakros gespielt und habe bisher immer mit "v" vorherige gearbeitet. Derzeitige Vorgangsweise : Objekte wählen -> ESC -> Makro ausführen welches vom v die Objekte erkennt.
Ziel wäre es so: Objekte Wählen -> Makro / oder Makro -> Objekte wählen -> Weiter. Stoße ich da an die Grenzen der Aufzeichnungsmakros ? Oder müsste ich da schon eher Richtung Lisp gehen? Ich kann das Makro auch mal bei Bedarf Hochladen. lg Christian Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 08. Jul. 2011 12:26 <-- editieren / zitieren --> Unities abgeben: Nur für Christian21P
Nach deinen Angaben nach zu urteilen würde es völlig ausreichen als erstes im Makro den Befehl WAHL aufzurufen. Ergebnis sollte dann sein: Wenn bereits Objekte markiert sind (bei Makroausfruf) dann werden diese genommen, falls noch keine Objekte markiert sind - wird eine OBenutzerabfrage/Objektwahl gestartet. ------------------ CAD.de System-Angaben - CAD on demand - User:FAQ(Acad) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Christian21P Mitglied
Beiträge: 121 Registriert: 02.03.2010 Acad 2011 Acad Civil 3D 2011 Windows 7
|
erstellt am: 08. Jul. 2011 13:49 <-- editieren / zitieren --> Unities abgeben:
Hmm grade probiert aber das funktioniert so nicht leider. Ich konkretisiere mal das Beispiel wie es derzeit funktioniert. Objekte Wählen -> ESC -> Makro ausführen Makro: Pedit -> o (für mehrere Objekte) -> (Aufforderung zum auswählen der Objekte) v -> v (Verbinden) -> 0.2 (Fuzzy-Abstand) -> Makro Ende. In den Acad Befehl muss ich also irgentwie meine aktuelle auswahl abrufen. Ideen? Solche Situation habe ich kfter zb ein Makro welches ausgewählte Objekte mit Basispunkt 0,0 kopieren soll sowie davor das BKS auf Welt stellt. Aber konnte ich auch nur mit "voherige" lösen.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 08. Jul. 2011 13:59 <-- editieren / zitieren --> Unities abgeben: Nur für Christian21P
|
Christian21P Mitglied
Beiträge: 121 Registriert: 02.03.2010 Acad 2011 Acad Civil 3D 2011 Windows 7
|
erstellt am: 08. Jul. 2011 14:17 <-- editieren / zitieren --> Unities abgeben:
Naja das Voherige möchte ich ja eben los werden - es funktioniert aber ich finde es nicht so gut. Bei mir Funktioniert es nur so. Der Befehl voherige geht nur so: Objekte Wählen -> ESC ansonsten kommt die meldung "Kein vorheriger Auswahlsatz." oder es wird etwas ausgewählt was ich irgendwann mal ausgewählt habe. Befehl: Entgegengesetzte Ecke angeben: <---- Objekte per Rahmen ausgewählt Befehl: *Abbruch* <--- ESC
Befehl: pd <--- MAKRO KÜRZEL! PEDIT Polylinie wählen oder [mehrere Objekte]: O Objekte wählen: _Previous 3 gefunden Objekte wählen: Option eingeben [Schließen/Öffnen/Verbinden/BReite/kurve Angleichen/Kurvenlinie/kurve LÖschen/LInientyp/Richtung wechseln/Zurück]: V Verbindungstyp = Dehnen Fuzzy-Abstand eingeben oder [Verbindungstyp] <0.2000>: 0.2 2 Segment(e) der Polylinie hinzugefügt Option eingeben [Schließen/Öffnen/Verbinden/BReite/kurve Angleichen/Kurvenlinie/kurve LÖschen/LInientyp/Richtung wechseln/Zurück]: Befehl: Wiedergabe des Aktionsmakros abgeschlossen [Diese Nachricht wurde von Christian21P am 08. Jul. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 08. Jul. 2011 14:22 <-- editieren / zitieren --> Unities abgeben: Nur für Christian21P
|
Christian21P Mitglied
Beiträge: 121 Registriert: 02.03.2010 Acad 2011 Acad Civil 3D 2011 Windows 7
|
erstellt am: 08. Jul. 2011 15:36 <-- editieren / zitieren --> Unities abgeben:
Hallo, Vielen Dank für deine Zeit mein Problem zu verstehen und zu lösen ! Bedeutet: Ganz am Anfang muß einfach ein (SSGET) stehen, mehr nicht. <-- Leider bin ich der Lispprogammierung nicht mächtig - daher kann ich da nicht weiter probieren. "Du unterschlägst anscheinend das du davor noch einen Befehl wählst.. ODER ?" Nein ? Das was ich oben aus der Befehlszeile kopiert habe ist alles was mein derzeitiges Makro und ich mache. Befehl: Entgegengesetzte Ecke angeben: <---- Objekte per Rahmen ausgewählt Befehl: *Abbruch* <--- ESC
Befehl: pd <--- MAKRO KÜRZEL! PEDIT Polylinie wählen oder [mehrere Objekte]: O Objekte wählen: _Previous 3 gefunden Objekte wählen: Option eingeben [Schließen/Öffnen/Verbinden/BReite/kurve Angleichen/Kurvenlinie/kurve LÖschen/LInientyp/Richtung wechseln/Zurück]: V Verbindungstyp = Dehnen Fuzzy-Abstand eingeben oder [Verbindungstyp] <0.2000>: 0.2 2 Segment(e) der Polylinie hinzugefügt Option eingeben [Schließen/Öffnen/Verbinden/BReite/kurve Angleichen/Kurvenlinie/kurve LÖschen/LInientyp/Richtung wechseln/Zurück]: Befehl: Wiedergabe des Aktionsmakros abgeschlossen "Objekte wählen: _Previous 3 gefunden" _Previous - v ... Ziel wäre es dass hier automatisch meine Aktuelle auswahl genommen wird. Dh. im Prinzip soll es ein Peditbefehl sein der Polylinien nur mit einer tastenkombination verbindet. Linien markieren -> Makronamen eingeben -> Fertig So soll es eigentlich laufen. Irgendwelche umsetzungsideen ? kann ja nicht der einzige sein den der ewig lange auswahlsdialog mein ACAD Pedit nervt. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 10. Jul. 2011 18:59 <-- editieren / zitieren --> Unities abgeben: Nur für Christian21P
|
Gargarot Mitglied Student MSc Civil Engineering ETHZ, Dipl Bauzeichner
Beiträge: 316 Registriert: 25.06.2008
|
erstellt am: 11. Jul. 2011 09:27 <-- editieren / zitieren --> Unities abgeben: Nur für Christian21P
Guten Morgen! Ich glaub ich seh das Problem: Wenn man Objekte selektiert und dann mit ESC abbricht werden die nicht "gespeichert" und kann sie so nicht mehr mit vorherige holen. Erst wenn man mit dem Auswahlsatz einen Befehl startet werden die Objekte "gemerkt". Darum auch immer die Meldung kein Auswahlsatz. -> Kannst auch probieren: Objekte auswählen, ESC, PSELECT, v -> kein Auswahlsatz... oder Objekte die beim vorderen Befehl verwendet wurden. Irgendwie kann ich mich erinnern das das früher je nach Produkt anders war ACAD 2007 Civil... (siehe auch mein letztes eigenes Thema... strange) Item, du könntest nun versuchen in deinem Makro zuerst zB den Schieben Befehl zu starten, Abbrechen und dann dein pedit (gibt übrigens auch MPEDIT) ausführen. Ist aber nicht so sauber. Das Problem bei PEDIT ist auch, dass wenn du keine Polylinien hast jeweils gefragt wird ob du die Konvertieren möchtest, hast du nur Polylinien kommt die Frage nicht. Darum MPEDIT, das sollte immer fragen. -> Einfacher für Makros Besser wäre jedoch wirklich Lisp: Code: (defun c:lp (/ ss) (princ "\nVerbindet Polylinien ") (setq ss (ssget)) (command "_pedit" "_m" ss "" "_j" "" "") (princ) );defun
Ist wirklich nicht schwierig: c:XXX ist dein Kurzbefehl princ schreibt was in die Befehlszeile (setq ss (ssget)) speichert dein Auswahlsatz in ss im command werden alle Befehle aufgelistet hier kannst dann ss verwenden Die einfache Variante davon wäre: Code: ;Schieben (defun c:$ ()(princ "\nSchieben: ")(command "_move"))
Manchmal verhalten sich aber Befehle im Lisp nicht ganz genau gleich wie wenn man sie von Hand eingibt, und Auswahlsätze sind für mich auch immer etwas heikel, da AutoCAD und die Vertikalprodukte nicht alle ganz gleich funktionieren. (Ich bin kein Profi und lasse mich gern eines Besseren belehren, aber das ist so mein Eindruck) Wir haben diese Lisps (Textdatei mit Endung .lsp) dann unter Extras/Anwendungen/Inhalt geladen. So hatte jeder seine Kurzbefehle und konnte, wenn er mal anderswo arbeiten musste einfach seine lsp laden. So hoffe das bringt dich etwas weiter, oder du hast einige Anregungen erhalten Soweit von mir Gruss Christoph ------------------ 3 kleine Weisheiten -Man kann ein Problem nicht mit den gleichen Denkstrukturen lösen, die zu seiner Entstehung beigetragen haben. -Bewehrt sich Beton? -Der Horizont vieler Menschen ist ein Kreis mit Radius Null - und das nennen sie ihren Standpunkt. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Christian21P Mitglied
Beiträge: 121 Registriert: 02.03.2010 Acad 2011 Acad Civil 3D 2011 Windows 7
|
erstellt am: 11. Jul. 2011 11:39 <-- editieren / zitieren --> Unities abgeben:
|
BaCAD Mitglied Bauzeichner
Beiträge: 129 Registriert: 17.09.2008 AutoCAD 2016
|
erstellt am: 14. Jul. 2011 11:03 <-- editieren / zitieren --> Unities abgeben: Nur für Christian21P
Hallo Ich möchte den pedit-Befehl als Makro aufbauen und habe diesen Beitrag über die Suche gefunden. So habe ich das Makro erstellt: ^C^Cpe;O;j:v;0.00;^C^C Ich komme damit nicht weiter, als bis zu Linien, Bogen und Splines in Polylinien umwandeln? [Ja/Nein]? Deshalb habe ich oben die Lisp probiert, doch die funktioniert bei mir nicht. Wenn ich diese nutze, komme ich nur so weit: Linien, Bogen und Splines in Polylinien umwandeln? [Ja/Nein]? <J> _j Ja oder Nein, bitte. ; Fehler: Funktion abgebrochen Ist das via Makro wirklich unmöglich? Und warum klappt die Lisp bei mir nicht? Wenn es als Makro nicht klappt wäre eine Lisp wünschenswert als Ein-Klick-Ersatz für den ganzen Ablauf pedit.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 Sie nannten ihn google.
|
erstellt am: 14. Jul. 2011 11:11 <-- editieren / zitieren --> Unities abgeben: Nur für Christian21P
|
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3336 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 14. Jul. 2011 11:40 <-- editieren / zitieren --> Unities abgeben: Nur für Christian21P
Hi, kleines Missverständnis an dieser Stelle: Das Makro schickt die Option _Join an Acad, aber weil PEDITACCEPT wohl auf 0 steht, fragt Acad gerade, ob die Objekte in Polylinien umgewandelt werden sollen und hätte gern ein Ja oder Nein, resp. _Yes oder _No. PEDITACCEPT sollte vorab also von der Funktion entsprechend eingestellt werden. Gruß CADchup
------------------ CADmaro.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |