Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Makro mit Rechtsklick?

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Makro mit Rechtsklick? (2367 mal gelesen)
BaCAD
Mitglied
Bauzeichner


Sehen Sie sich das Profil von BaCAD an!   Senden Sie eine Private Message an BaCAD  Schreiben Sie einen Gästebucheintrag für BaCAD

Beiträge: 129
Registriert: 17.09.2008

AutoCAD 2016

erstellt am: 04. Mai. 2012 16:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo

Hintergrund:
In der Multifunktionsliste von AutoCAD unter Start  Gruppe kann man verschiedene Elemente markieren und eine Gruppe erstellen (GRUPPE). Diese kann man auflösen (Gruppierung aufheben), was einem sprengen gleichkommt. Möchte man nur einen Teil einer Gruppe verschieben, kann man die Gruppe temporär so einstellen, dass man einzelne Objekte davon verschieben kann (Gruppenauswahl ein/aus , es handelt sich um die Systemvariable pickstyle).
Wir haben ein Zusatzmodul installiert um Armierungen erstellen zu können. Das Eisen sowie der Anschreiber und alle dazugehörigen Linien und Symbole bilden eine Gruppe. Da AutoCAD die Gruppe ab Version 2012 etwas modifiziert hat, können wir im Büro die Einzelteile der Gruppe nicht mehr verschieben. Es sei denn, wir nutzen die Gruppenauswahl ein/aus-Befehl, um dann die Texte zu verschieben und danach die Gruppenauswahl wieder auszustellen (damit die Bewehrung eine Bewehrung bleibt und von der Datenbank erkannt wird).


Problem:
Ich möchte nun den normalen Verschieben-Befehl mit dem „Gruppenauswahl ein/aus“-Befehl verknüpfen, scheitere aber damit:

^C^Cpickstyle;0;_move;\;\;\;pickstyle;1

Zuerst stelle ich die Gruppenauswahl so ein, das man einzelne Gruppenelemente anklicken kann (pickstyle;0), danach wähle ich den normalen Verschieben-Befehl (;_move), dann kann ich ein Objekt mit links auswählen und dies mit der rechten Maustaste bestätigen. Sobald ich aber mit meinem Makro den Basispunkt angeben soll, verschwindet das zu verschiebende Objekt sonst wo hin.

Wo ist mein Überlegungsfehler? Ich müsste ja nur noch einmal klicken um den Bezugspunkt anzugeben, dann ein zweites Mal um zu definieren, wohin das Element verschoben werden soll. Danach muss nur noch automatisch pickstyle wieder auf 1 gesetzt werden.


Für Hilfe wäre ich dankbar, denn so würden wir eine Menge Zeit sparen.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

spider_dd
Mitglied



Sehen Sie sich das Profil von spider_dd an!   Senden Sie eine Private Message an spider_dd  Schreiben Sie einen Gästebucheintrag für spider_dd

Beiträge: 1111
Registriert: 27.11.2003

Win 10Pro
Intel(R) Core(TM) i7-7700
NVIDIA Quadro P1000
ACAD, Civil-3D 2018

erstellt am: 04. Mai. 2012 17:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BaCAD 10 Unities + Antwort hilfreich

Hallo BaCad,

ich denke Du hast in Deinem Makro ein paar ; = Enter zu viel drin.
Wenn Du nach der Angabe des Basispunktes Enter drückst, dann verschieb es des gewählte Objekt halt "irgendwohin"

..._move;\\\ könnte funktionieren (mal mit mehr oder weniger \ austesten) oder als Lisp-Zeile probier mal folgendes

(progn (setvar "pickstyle" 0)(command "_move" pause pause pause
pause)(setvar "pickstyle" 1))

HTHHope this helps (Hoffe, es hilft weiter)
Gruß
Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

BaCAD
Mitglied
Bauzeichner


Sehen Sie sich das Profil von BaCAD an!   Senden Sie eine Private Message an BaCAD  Schreiben Sie einen Gästebucheintrag für BaCAD

Beiträge: 129
Registriert: 17.09.2008

AutoCAD 2016

erstellt am: 04. Mai. 2012 17:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für den Hinweis.
Ich bevorzuge Makros statt Lisps, weil man bei Makros nichts neu laden muss. Und dieses Problem sollte absolut lösbar sein via Makro, finde ich. Den einzugebenden Ablauf ist nicht sehr komplex.

Ich habe - schon bevor du geantwortet hast - nochmals einige Versuche durchgeführt. Mit dem folgenden Makro habe ich fast Erfolg. Am Ende wird leider die Systemvariable nicht wieder umgestellt, wahrscheinlich weil der _move-Befehl beendet ist.

Hier:
^C^Cpickstyle;0;_move;\;\\\;pickstyle;1

Damit kann ich exakt ein Element auswählen, dann den Bezugspunkt angeben, dann den Ziel-Punkt (sprich, das eine Element wurde erfolgreich verschoben). Danach ist der Befehl fertig. Es passiert nichts mehr.
Schön wäre, wenn danach noch die Systemvariable umgestellt würde (wieder wie sie vorhin war).


Edit: mit ..._move;\\\ klappt es nicht, da dann nach der Wahl des Elementes nichts weiter passiert (also die Bestätigung der Wahl, die man ja mit der rechten Maustaste oder Enter tätigt, bleibt aus).

[Diese Nachricht wurde von BaCAD am 04. Mai. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 21533
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 04. Mai. 2012 21:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BaCAD 10 Unities + Antwort hilfreich

Eine Benutzereingabe benötigt ja kein Semikolon zur "Bestätigung" da
man dies ja selbst macht dabei,
also folgt nach dem Backslash kein ; um den Backslash zu "bestätigen".

Nach dem das noch mal gesagt ist kannst du das Makro sicher erstellen,
dieses mal ohne try&error sondern geplant.

==============Textfenster F2================
Befehl: *Abbruch* <^C>

Befehl: *Abbruch* <^C>

Befehl: _PICKSTYLE <enter>

Neuen Wert für PICKSTYLE eingeben <1>: 0 <enter>

Befehl: _.MOVE <enter>

Objekte wählen: (hier als Beispiel ein Objekt mit li.Maustaste direkt angeklickt)<Benutzereingabe>
1 gefunden

Objekte wählen: <enter>

Basispunkt oder [Verschiebung] <Verschiebung>:  (hier als Beispiel mit li.Maustaste angegeben)<Benutzereingabe>
Zweiten Punkt angeben oder <ersten Punkt der Verschiebung verwenden>: (hier als Beispiel mit li.Maustaste angegeben)<Benutzereingabe>

Befehl: _PICKSTYLE <enter>

Neuen Wert für PICKSTYLE eingeben <0>: 1 <enter>

Befehl:
=====================================================

------------------
CAD.de System-Angaben  -  CAD on demand  -  User:FAQ(Acad)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



Sehen Sie sich das Profil von CAD-Huebner an!   Senden Sie eine Private Message an CAD-Huebner  Schreiben Sie einen Gästebucheintrag für CAD-Huebner

Beiträge: 9732
Registriert: 01.12.2003

AutoCAD 2.5 - 2022, Civil 3D, MAP 3D, ACADM
Inventor AutoCAD 2022, AIP 4-2022
Win 10

erstellt am: 05. Mai. 2012 12:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für BaCAD 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von BaCAD:
...Da AutoCAD die Gruppe ab Version 2012 etwas modifiziert hat, können wir im Büro die Einzelteile der Gruppe nicht mehr verschieben. ...


Befehl: GROUPDISPLAYMODE
Neuen Wert für GROUPDISPLAYMODE eingeben <2>: 0

stellt das Gruppendarstellungsverhalten aus AutoCAD 2011 oder früher wieder her, so dass auch einzelne Objekte über Griffe editiert werden können, ohne die Gruppe oder die Gruppenauswahl aufzuheben.

------------------
Mit freundlichem Gruß

Udo Hübner
www.CAD-Huebner.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

BaCAD
Mitglied
Bauzeichner


Sehen Sie sich das Profil von BaCAD an!   Senden Sie eine Private Message an BaCAD  Schreiben Sie einen Gästebucheintrag für BaCAD

Beiträge: 129
Registriert: 17.09.2008

AutoCAD 2016

erstellt am: 07. Mai. 2012 13:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

@cadffm
Danke, klappt so!

@CAD-Huebner:
Vielen Dank, das wusste ich nicht. So hätte ich mir das Makro sparen können!!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz