Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Linker Doppelklick, Teil 2

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:  Linker Doppelklick, Teil 2 (1136 mal gelesen)
Anita99
Mitglied


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

Beiträge: 7
Registriert: 28.01.2011

Autocad LT 2009

erstellt am: 03. Feb. 2011 12:30    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 CAD-Gemeinde,
bei Nemetschek gibt es eine tolle Option zum konstruieren.
Mit dem Fadenkreuz auf ein Zeichenelement, z.B. Linie, Wand, Kreis,
Fenster, Text usw. zeigen, Doppelklick mit der linken Maustast,
und schon kann man mit dem gewählten Element und genau den Eigenschaften
dieses Elements weiterzeichnen.

Das geht auch in AutoCad 2009.
In der entsprechenden Menüdatei unter Doppelklickaktionen einen neuen Befehlsnamen definieren.
Dann wie z.B. hier bei Doppelklickaktion Linie folgenden Befehlablauf im neuen Befehlsnamen einfügen.
^C^C(if(not C:bw_setact)(load "eigsetz2"));bw_setact;linie

Folgende Lispdatei hier im Forum gefunden muß in den Supportpfad. Bei mir abgespeichert unter "eigsetz2.lsp".
Wenn ihr einen anderen Namen verwenden wollt, müßt ihr auch im Befehlsablauf den Dateinamen ändern.

;;; Lisp-File created at... DATE : 05.August.2004 / Time : 10:50:28
;;; Source by Rolf "Benwisch" Wischnewski (www.benwisch.de)
;;; ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××-
(vl-load-com) ;_ load ActiveX support

;;; Name of main program(s) : (C:BW_SETACT)

;;; List of functions
;;; BW_AC-DOC
;;; BW_ACAD
;;; BW_VLA-OBJ
;;; BW_VLX:GETPROP
;;; ENAME?
;;; ETYPE<
;;; STR?

(defun c:bw_setact (/
    obj
    vla-obj
    sysvarlst
    bw_ac-doc
    bw_acad
    bw_vla-obj
    bw_vlx:getprop
    ename?
    etype<
    str?
;;; GLOBALS *SetAct#sysvar*
;;;        *setact#sysvardimstyle*
;;;        *ACAD-OBJECT*
;;;        *ACTIVE-DOC*
  )
;;;
;;; ---------------------
;;; ×× LOCAL FUNCTIONS ××
;;; ---------------------
;;;
  (defun bw_ac-doc (/)
    (cond (*active-doc*)
  ((quote default)
  (setq *active-doc* (vla-get-activedocument (bw_acad)))
  )
    )
  )
;;;×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
  (defun bw_acad (/)
    (cond (*acad-object*)
  ((quote default)
  (setq *acad-object* (vlax-get-acad-object))
  )
    )
  )
;;;×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
  (defun bw_vla-obj (ename /)
    (cond ((= (type ename) (quote ename))
  (vlax-ename->vla-object ename)
  )
  ((= (type ename) (quote vla-object)) ename)
    )
  )
;;;×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
  (defun bw_vlx:getprop (#vla-obj #proplst /)
    (mapcar (function (lambda (p)
(if (vlax-property-available-p #vla-obj p)
  (cons p (vlax-get-property #vla-obj p))
  (cons p nil)
)
      )
    )
    #proplst
    )
  )
;;;×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
  (defun ename? (ent)
    (if (= (type ent) (quote ename))
      t
    )
  )
;;;×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
  (defun etype< (ent)
    (if ent
      (cdr (assoc 0 (entget ent)))
    )
  )
;;;×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
  (defun str? (ent)
    (if (= (type ent) (quote str))
      t
    )
  )
;;;×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
;;;
;;; -----------------------
;;; ×× END OF FUNCTIONS ××
;;; -----------------------
;;;
;;; < SNIP MAIN >
;;;
  (setq sysvarlst (quote ("TEXTSTYLE"
  "TEXTSIZE"
  "CELWEIGHT"
  "CLAYER"
  "CECOLOR"
  "CELTYPE"
  "CELTSCALE"
  "HPNAME"
  "HPANG"
  "HPSCALE"
)
  )
  )
  (if (setq obj (cadr (ssgetfirst)))
    (progn (setq obj (list (ssname obj 0))) (sssetfirst))
    (progn (initget "Vorher Setze(vonlayer)")
  (setq obj
  (entsel
    "\nFür Eigenschaft Objekt wählen oder [Vorher/Setze(vonlayer)] : "
  )
  )
    )
  )
  (cond
    ((str? obj)
    (cond ((= "Vorher" obj)
    (if *setact#sysvar*
      (progn (mapcar (quote setvar) sysvarlst *setact#sysvar*)
    (if *setact#sysvardimstyle*
      (vla-put-activedimstyle
(bw_ac-doc)
(vla-item (vla-get-dimstyles (bw_ac-doc))
  *setact#sysvardimstyle*
)
      )
    )
      )
      (princ "\nKein vorheriger Auswahlsatz vorhanden!")
    )
  )
  ((= "Setze(vonlayer)" obj)
    (foreach sysvar (quote (("celweight" . -1)
    ("celtscale" . 1.0)
    ("cecolor" . "bylayer")
    ("celtype" . "bylayer")
  )
    )
      (vl-catch-all-apply
(quote setvar)
(list (car sysvar) (cdr sysvar))
      )
    )
  )
    )
    )
    ((ename? (setq obj (car obj)))
    (setq *setact#sysvar*  (mapcar (quote getvar) sysvarlst)
  *setact#sysvardimstyle* (getvar "DIMSTYLE")
    )
    (foreach sysvar
      (mapcar (quote cons)
      sysvarlst
      (mapcar (function (lambda (prop)
  (if (= "Color" (car prop))
    (itoa (cdr prop))
    (cdr prop)
  )
)
      )
      (bw_vlx:getprop
(setq vla-obj (bw_vla-obj obj))
(list (if (= "DIMENSION" (etype< obj))
"TextStyle"
"StyleName"
      )
      (if (= "DIMENSION" (etype< obj))
"TextHeight"
"Height"
      )
      "Lineweight"
      "Layer"
      "Color"
      "Linetype"
      "LinetypeScale"
      "PatternName"
      "PatternAngle"
      "PatternScale"
)
      )
      )
      )
      (if (cdr sysvar)
(vl-catch-all-apply
  (quote setvar)
  (list (car sysvar) (cdr sysvar))
)
      )
    )
    (if (= "DIMENSION" (etype< obj))
      (vla-put-activedimstyle
(bw_ac-doc)
(vla-item (vla-get-dimstyles (bw_ac-doc))
  (vlax-get-property vla-obj (quote stylename))
)
      )
    )
    )
    ((quote else) (princ "\n** Programmende **"))
  )
  (princ)
;;;
;;; < SNIP MAIN >
;;;
)
;;; end of lisp-file
;;;
(princ) ;_ exit quietly


*********************
Bei mir funktioniert diese Routine.

Jetzt meine Frage.
Kann jemand dieses Lisp-Programm um folgenden Punkt erweitern?
Auslesen Multilinienstil und Multilinienmaßstab und diese aktuell setzen.

Gruß
Anita99

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

CADchup
Ehrenmitglied V.I.P. h.c.




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

Beiträge: 3329
Registriert: 14.03.2001

Sicher ist, dass nichts sicher ist. Selbst das nicht.
Joachim Ringelnatz

erstellt am: 03. Feb. 2011 13:53    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 Anita99 10 Unities + Antwort hilfreich

Hi,

prima, dass du eine Lösung gefunden hast und sie postest. 

Aaaber.
Erstens hatte ich hier schon auf die aktuelle Version von SetAct hingewiesen, die sicher mehr kann, als der alte Code den du gepostet hast und
zweitens steht der Autor im Header! Bitte immer zuerst den Original-Autor von Lisps wegen Änderungen ansprechen!

Gruß
CADchup

------------------
CADmaro.de

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



Technical Manager (m/w/d) Real Estate

Die Doric Gruppe ist ein mehrfach ausgezeichneter Asset Manager mit Tochtergesellschaften in Deutschland, Großbritannien, Österreich und den USA. Als Spezialist für Immobilien, Erneuerbare Energien und Transport verwaltete Doric Ende 2023 ein Sachwertportfolio mit einem Investitionsvolumen von rund 7 Milliarden USD.

Wert schaffen und bewahren.

Für unser wachsendes ...

Anzeige ansehenGebäude-, Versorgungs-, Sicherheitstechnik
otterloh
Mitglied



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

Beiträge: 188
Registriert: 27.06.2001

AutoCAD 2012, 2013, 2019
Win8.1

erstellt am: 03. Feb. 2011 14:53    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 Anita99 10 Unities + Antwort hilfreich


Zeichne.zip

 
Ich arbeite gerne mit diesem Programm.
Zeichnet Objekte durch Wahl eines Referenzelementes.

Gruß
Werner

[Diese Nachricht wurde von otterloh am 03. Feb. 2011 editiert.]

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