| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Cideon Solution Days 2025, eine Veranstaltung am 03.06.2025
|
Autor
|
Thema: Mführungsstil mit Variablen einstelen (2209 mal gelesen)
|
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 AC 2013
|
erstellt am: 01. Feb. 2011 16:11 <-- editieren / zitieren --> Unities abgeben:
Ich möchte in einem Skript oder LISP den MFührungsstil (AutoCAD 2011) einstellen. Habe aber in der Hilfe keine Möglichkeiten gefunden. Kann mir jemand sagen welche Variablen dafür zuständig sind oder wo ich entsprechende Hinweise dazu finde? ------------------ strukturiertes Zeichnen mit Werner-Maahs 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: 01. Feb. 2011 16:29 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
|
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 AC 2013
|
erstellt am: 01. Feb. 2011 20:38 <-- editieren / zitieren --> Unities abgeben:
|
runkelruebe Moderator Straßen- / Tiefbau
Beiträge: 8086 Registriert: 09.03.2006 Kinder, kauft Kämme! Es kommen lausige Zeiten.
|
erstellt am: 01. Feb. 2011 20:52 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
|
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9803 Registriert: 01.12.2003 AutoCAD 2.5 - 2025, Civil 3D, MAP 3D, ACADM, ACA Inventor Prof. 2025, AIP 4-2025 Win 11
|
erstellt am: 01. Feb. 2011 20:53 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
|
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 AC 2013
|
erstellt am: 02. Feb. 2011 01:57 <-- editieren / zitieren --> Unities abgeben:
Es tut mir leid, aber in der System-Variablen-Liste habe ich gerade mal 3 Einträge betreffend MFührung (MLEADERSCALE MTEXTCOLUMN CMLEADERSTYLE) gefunden. Mit keinem kann ich einen MFührungsstil erstellen. Bisher mache ich es so: Code: (command "MFührung" "Optionen" "inhaltstYp" "blOck" "PosNr" "Beenden" )
bzw. ähnlich im Skript!Ich habe aber noch keine Möglichkeit gefunden die Pfeilspitze, die Farbe usw. zu beeinflussen bzw., wie geschrieben, einen eigenen Stil zu erzeugen. Einen vorhandenen Stil kann ich mitCMLEADERSTYLE aktiv setzen, aber ich müßte erst einen erstellen. Trotzdem Danke für Eure bisherigen Mühen. ------------------ strukturiertes Zeichnen mit Werner-Maahs Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 02. Feb. 2011 07:47 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
|
gerd3012 Mitglied Planung Haustechnik
Beiträge: 111 Registriert: 24.07.2002
|
erstellt am: 02. Feb. 2011 11:27 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
Probiers mal hiermit: ist noch nicht ganz zu Ende erforscht , aber läuft schon mal. Den Code habe ich auch irgendwo im Internet gefunden. Probleme habe ich noch mit dem Arrowsymbol. Das kann man erst im Stil "händisch" einstellen. Genauso habe ich die "Einstellung für die Verlängerung" noch nicht via Lisp lösen können. START mit z.B: (mlsetup 0.1) Code:
(defun mlsetup (thoehe / *doc* mldrdict newldrstyle) (setq ml_stil "TESTSTIL") (setq DICT (dictsearch (namedobjdict) "ACAD_MLEADERSTYLE")) (setq len (length DICT) a 0 stil_da nil) (repeat len (if (= (cdr (nth a dict)) ml_stil) (progn (setq stil_da T) (setvar "CMLEADERSTYLE" ml_stil) ) ) (setq a (1+ a)) ) (if (not stil_da) (ml_stil_erzeugen ml_stil)) ) (defun ml_stil_erzeugen (mlstil) (setq *doc* (vla-get-activedocument (vlax-get-acad-object))) (setq mldrdict (vla-item (vla-get-dictionaries *doc*) "ACAD_MLEADERSTYLE") ) (setq newldrstyle (vlax-invoke mldrdict 'addobject mlstil "AcDbMLeaderStyle" ) ) (setq mfstyle newldrstyle) ; (vlax-dump-Object newldrstyle T) (setq txtcol 0 ldrcol 0 ) (setq colorObj (vla-getinterfaceobject (vlax-get-acad-object) "AutoCAD.AcCmColor.17" ) ) (vla-put-ColorIndex colorObj txtcol) (vla-put-TextColor newldrstyle colorObj) (vla-put-ColorIndex colorObj ldrcol) (vla-put-LeaderLineColor newldrstyle colorObj) (vlax-put-property newldrstyle 'AlignSpace 0.12) (setq fnis 1) (vlax-put-property newldrstyle 'ScaleFactor fnis) (if (= fnis 0) (vlax-put-property newldrstyle 'Annotative 1) (vlax-put-property newldrstyle 'Annotative 0) ) (vlax-put-property newldrstyle 'ArrowSize 0.1) ; (vlax-put-property newldrstyle 'ArrowSymbol "_None") (vlax-put-property newldrstyle 'BlockConnectionType 0) (vlax-put-property newldrstyle 'BlockRotation 0.0) (vlax-put-property newldrstyle 'BlockScale 1.0) (vlax-put-property newldrstyle 'BreakSize 0.1) (vlax-put-property newldrstyle 'ContentType 2) (vlax-put-property newldrstyle 'Description mlstil) (vlax-put-property newldrstyle 'DoglegLength 0.05) (vlax-put-property newldrstyle 'DrawLeaderOrderType 0) (vlax-put-property newldrstyle 'DrawMLeaderOrderType 1) (vlax-put-property newldrstyle 'EnableBlockRotation -1) (vlax-put-property newldrstyle 'EnableBlockScale -1) (vlax-put-property newldrstyle 'EnableDogleg -1) (vlax-put-property newldrstyle 'EnableFrameText 0) (vlax-put-property newldrstyle 'EnableLanding -1) (vlax-put-property newldrstyle 'FirstSegmentAngleConstraint 0 ) (vlax-put-property newldrstyle 'LandingGap 0.05) (vlax-put-property newldrstyle 'LeaderLineType 1) (vlax-put-property newldrstyle 'LeaderLineTypeId "bylayer") (vlax-put-property newldrstyle 'LeaderLineWeight -1) (vlax-put-property newldrstyle 'MaxLeaderSegmentsPoints 2) (vlax-put-property newldrstyle 'name mlstil) (vlax-put-property newldrstyle 'SecondSegmentAngleConstraint 0 ) (vlax-put-property newldrstyle 'TextAlignmentType 0) (vlax-put-property newldrstyle 'TextAngleType 1) (vlax-put-property newldrstyle 'TextHeight txt_h) (vlax-put-property newldrstyle 'TextLeftAttachmentType 3) (vlax-put-property newldrstyle 'TextRightAttachmentType 3) (vlax-put-property newldrstyle 'TextString "") (vlax-put-property newldrstyle 'TextStyle "isocp") (setq diclist (entget (vlax-vla-object->ename newldrstyle))) (entmod (subst (cons 297 1) (assoc 297 diclist) diclist)) (setvar "CMLEADERSTYLE" mlstil) )
Gruß Gerd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 AC 2013
|
erstellt am: 03. Feb. 2011 19:59 <-- editieren / zitieren --> Unities abgeben:
Also mit Variablen, al a (setvar "..." "...") oder (entmod (...)), ist dann wohl nicht möglich. Den Ansatz von CADmium habe ich mir zwar angesehen, komme ich aber auch nicht recht weiter. Vermutlich zu Umfangreich für mich. Das Beispiel von Gerd3012 habeich probiert, bekomme aber eine Fehlermeldung ich glaube es war ' unbekannt ... (vlax-get-acad-object)'. Spielt aber auch nicht so die Rolle, da ich nur einsetze was ich auch einigermaßen Verstehe. Ich habe jetzt die Einstellungen in einer Datei gespeichert und füge diese dann jeweils ein. Was mich zu einer Frage führt: In einem Makro kann ich aktive Befehle abbrechen (^c^c)! Kann ich soetwas auch in einem Skript? Beispiel, wenn eine Zeichnungsdatei einfüge, will ich die Blockdefinition aber nicht die Blockreferenz. Sprich ich will nicht angeben wo und wie der Block/die Zeichnung eingefügt werden soll.
------------------ strukturiertes Zeichnen mit Werner-Maahs Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
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: 04. Feb. 2011 09:18 <-- editieren / zitieren --> Unities abgeben: Nur für Werner-Maahs.de
|
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 AC 2013
|
erstellt am: 04. Feb. 2011 10:23 <-- editieren / zitieren --> Unities abgeben:
|