Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Versetz Befehl modifizieren ???

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:  Versetz Befehl modifizieren ??? (2391 mal gelesen)
jukni
Mitglied
Techniker


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

Beiträge: 175
Registriert: 28.03.2002

erstellt am: 19. Jan. 2005 10:03    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.
Ich suche eine Lisp Datei, die wie der Versetz Befehl
bei Autocad funktioniert.
Das versetzte Objekt soll aber abweichend vom Originalbefehl
die oben eingestellten Objekteigenschaften wie
- Layername, Farbe und Linientyp annehmen.

Hat jemand eine Lösung ?
Vielen Dank
Gruß Jürgen     

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 19. Jan. 2005 10:17    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 jukni 10 Unities + Antwort hilfreich

Wieweit bist du denn mit deinen Programmierkünsten? Wo soll konkret geholfen werden? Zum "Suchen" gibts u.a. die Forumssuche oder google!
Oder hab ich dich jetzt falsch interpretiert ? 

Ansonsten :
(defun c  ffset2( / OBJ VLAOBJ F)
  (command "_offset" PAUSE PAUSE PAUSE PAUSE)
  (setq OBJ(entlast))
  (setq VLAOBJ(vlax-ename->vla-object OBJ))
  (vla-put-layer        VLAOBJ (getvar  "CLAYER"))
  (vla-put-linetype      VLAOBJ (getvar  "CELTYPE"))
  (vla-put-LinetypeScale VLAOBJ (getvar "CELTSCALE"))
  (setq F (getvar  "CECOLOR"))
  (cond
    ((and(=(type F)'STR)(=(strcase F)"BYLAYER")) (vla-put-color VLAOBJ acbyLayer))
    ((and(=(type F)'STR)(=(strcase F)"BYBLOCK")) (vla-put-color VLAOBJ acbyBlock))
    ('T                                          (vla-put-color VLAOBJ        F))     
  )
  (setq F (getvar "CELWEIGHT"))
  (cond
    ((and(=(type F)'STR)(=(strcase F)"BYLAYER")) (vla-put-lineweight VLAOBJ acLnWtByLayer))
    ((and(=(type F)'STR)(=(strcase F)"BYBLOCK")) (vla-put-lineweight VLAOBJ acLnWtByBlock))
    ('T                (vla-put-lineweight VLAOBJ (getvar "CELWEIGHT")))     
  )
)

------------------
    - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

[Diese Nachricht wurde von CADmium am 19. Jan. 2005 editiert.]

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

cad4fun
Ehrenmitglied



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

Beiträge: 1846
Registriert: 06.12.2004

privat ACAD 2013 deutsch, Windows 7 64Bit
HP Elite 7500 Series MT,Intel Cote i5-3470 CPU 3,20Ghz,16GB RAM

erstellt am: 20. Jan. 2005 13:05    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 jukni 10 Unities + Antwort hilfreich

hallo Thomas,
hübsches Tool, funktioniert aber leider nur bei einer Linie, die 2. wird  mit den üblichen Eigenschaften versetzt

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 20. Jan. 2005 13:13    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 jukni 10 Unities + Antwort hilfreich

ja! weil ich nur (entlast) abfrage und nicht vor dem Versetzen einen "Merker" setze und alle neuen Elemente die entsprechenden Eigenschaften zuordne! Es müssen doch nicht immer Komplettlösungen sein,oder? Und das eventuelle "wie" ist doch erkennbar!

------------------
- Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 20. Jan. 2005 13:27    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 jukni 10 Unities + Antwort hilfreich

Hi Jkni,
vielleicht hilt Dir das lesen von dem: http://www.afralisp.com/methods/list/offset_method.htm
hier ein wenig weiter...
Denn IMHO kann man auch das Versetzen via ActiveX machen wenn alles andere auch schon so ausgelegt ist...

------------------
Ciao,
Marc

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

berndhock
Mitglied
Holztechniker


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

Beiträge: 35
Registriert: 07.03.2003

AutoCAD2004 und 2005
3,20 gigahertz Intel Pentium 4
1022 Megabytes Installed Memory
Matrox Parhelia 128MB

erstellt am: 26. Jan. 2005 09: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 Nur für jukni 10 Unities + Antwort hilfreich

jukni
Mitglied
Techniker


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

Beiträge: 175
Registriert: 28.03.2002

erstellt am: 26. Jan. 2005 12:20    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

Vielen Dank.
Berndhok
Leider weiß ich nicht wie ich die Datei lade und dann starte.
Für einen Tip wäre ich dankbar.
m.f.G
Jürgen

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

cad4fun
Ehrenmitglied



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

Beiträge: 1846
Registriert: 06.12.2004

privat ACAD 2013 deutsch, Windows 7 64Bit
HP Elite 7500 Series MT,Intel Cote i5-3470 CPU 3,20Ghz,16GB RAM

erstellt am: 26. Jan. 2005 12:48    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 jukni 10 Unities + Antwort hilfreich

stell die datei in das verzeichnis, indem  die LISP-Routinen abgelegt sind und lade sie beim start von ACAD automatisch(startup.lsp). damit funktioniert der OFFSET(VERSETZ)-Befehl wie gewünscht, dass die neuen Objekte die gerade aktuellen einstellungen bekommen. Nach jedem objekt musst Du allerdings aus dem befehl raus und den befehl neu starten. Ist ein schönheitsfehler, aber dafür gratis

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

berndhock
Mitglied
Holztechniker


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

Beiträge: 35
Registriert: 07.03.2003

AutoCAD2004 und 2005
3,20 gigahertz Intel Pentium 4
1022 Megabytes Installed Memory
Matrox Parhelia 128MB

erstellt am: 26. Jan. 2005 12:59    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 jukni 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von cad4fun:
stell die datei in das verzeichnis, indem  die LISP-Routinen abgelegt sind und lade sie beim start von ACAD automatisch(startup.lsp). damit funktioniert der OFFSET(VERSETZ)-Befehl wie gewünscht, dass die neuen Objekte die gerade aktuellen einstellungen bekommen. Nach jedem objekt musst Du allerdings aus dem befehl raus und den befehl neu starten. Ist ein schönheitsfehler, aber dafür gratis


Stimmt nicht dass Du aus dem Befehl raus musst du kanns versetzen so viel Du wills wenn du den Befehl beendest bekommen alle versetzten Objekte die Eigenschaft!!

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

jukni
Mitglied
Techniker


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

Beiträge: 175
Registriert: 28.03.2002

erstellt am: 26. Jan. 2005 14:05    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.
Vielen Dank.
Die Funktion läüft nun.
Jedoch noch nicht ganz richtig.
Es wird zwar der Layer wie eingestellt übernommen jedoch nicht die
oben neu eingestellte Farbe und der Linientyp.
Beispiel:
Die urspügliche Linie war Layer:Kante ; Farbe:rot ; Linientyp:Mitte.
Soll werden nach dem versetzen Layer:Ecke ; Farbe gelb ; Linientyp:continuous.

Gruß Jürgen

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

cad4fun
Ehrenmitglied



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

Beiträge: 1846
Registriert: 06.12.2004

privat ACAD 2013 deutsch, Windows 7 64Bit
HP Elite 7500 Series MT,Intel Cote i5-3470 CPU 3,20Ghz,16GB RAM

erstellt am: 26. Jan. 2005 14:20    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 jukni 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von berndhock:

Stimmt nicht dass Du aus dem Befehl raus musst du kanns versetzen so viel Du wills wenn du den Befehl beendest bekommen alle versetzten Objekte die Eigenschaft!!

weiss nicht wieso, beim ersten testen ging's nur einmal. jetzt funktioniert es einwandfrei. 10U's for you(ist kein einstieg in englische fragen und anrworten!!!)
@jukni: wie gesagt, funktioniert einwandfrei, muss ein anderes problem sein

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

Peter2
Ehrenmitglied V.I.P. h.c.




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

Beiträge: 3701
Registriert: 15.10.2003

Win 10/64 Pro
AutoCAD MAP 3D 2018
BricsCAD 22

erstellt am: 26. Jan. 2005 15:15    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 jukni 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von jukni:

Leider weiß ich nicht wie ich die Datei lade und dann starte.
Für einen Tip wäre ich dankbar.

siehe hier: http://ww3.cad.de/foren/ubb/Forum54/HTML/007058.shtml

Peter

------------------
Für jedes Problem gibt es eine einfache Lösung.
Die ist aber meistens falsch. ;-)

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

Theodor Schoenwald
Ehrenmitglied



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

Beiträge: 1672
Registriert: 16.04.2002

erstellt am: 26. Jan. 2005 21:14    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 jukni 10 Unities + Antwort hilfreich

Hallo Jürgen,

hier ist ein Tool, das Du dir anpassen kannst.
http://www.lehrer.uni-karlsruhe.de/~za685/cnc/cnctools.htm

Gruß
Theodor Schönwald

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

benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


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

Beiträge: 375
Registriert: 01.02.2001

Autocad 2005-2010
Microstation V8
Photoshop CS4 + Camera Raw
Nikon Capture NX2
Nikon D90

erstellt am: 27. Jan. 2005 15:56    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 jukni 10 Unities + Antwort hilfreich

Zitat:

Ich suche eine Lisp Datei, die wie der Versetz Befehl
bei Autocad funktioniert.
Das versetzte Objekt soll aber abweichend vom Originalbefehl
die oben eingestellten Objekteigenschaften wie
- Layername, Farbe und Linientyp annehmen.

Hat jemand eine Lösung ?



Ja, da ich so ein "Offseter" bin, habe ich mir dazu was geschrieben.
Ich habe es für meine Zwecke so programmiert, daß der Abstand nach jedem versetzten Objekt erneut abgefragt wird. Weiterhin wird mit diesem Programm auch der aktuelle Linientypfaktor ausgelesen und auf das neue Objekt angewendet.
TrueColor-Farben sowie Farbücher kann dieses Tool noch nicht umsetzen.
Code:

;;; Autor Rolf "Benwisch" Wischnewski
;;; 08/04, 01/05
;;; Aufruf aus Autocad : BW_Offset
(defun c:bw_offset (/ entity)
  ;; Markierung für "Zurück zur Marke"
  (command "_UNDO" "_mark")
  ;; Beginn Schleife
  (while
    ((lambda ()
      ;; Systemvariable für den allg. offsetabstand
      (setvar
"offsetdist"
(cond
  ((getdist
      (strcat "\nAbstand angeben oder durch Punkte bestimmen <"
      (rtos (getvar "offsetdist"))
      "> "
      )
    )
  )
  ((getvar "offsetdist"))
)
      )
      (setq entity
      (entsel
"\nBitte Objekt auswählen und Punkt auf Seite angeben, auf die versetzt werden soll (Return = Ende) "
      )
      )
    )
    );; Rückgabe durch setq ggf. nil, falls kein Objekt gewählt wurde,
    ;; was wiederum bedeutet, da der Lambda-Ausdruck ein NIL zurückgibt und
    ;; zum verlassen der While-Schleife führt.
    (command "_offset" "" entity pause "")
    (entmod
      (append
;; Entferne "alte" Assoc-Werte...
(vl-remove-if
  (function
    (lambda (pair) (member (car pair) '(8 62 6 370 48)))
  )
  ;; ...vom dem zuletzt erstellten Objekt (durch command)...
  (entget (entlast))
)
;; ... und hänge neue Assoc.-Liste mit den aktuellen Dropdownwerten an
(mapcar
  (function
    (lambda (pair / color)
      (cond ((= 62 (car pair)) ;_ Prüfe Farbwert
      (if (= "BYLAYER"
    (setq color (strcase (getvar (cdr pair))))
  )
(cons 62 256) ;_ "ByLayer" umwandeln...
(cons 62 (atoi color)) ;_ sonst in Integer umwandeln, wobei "ByBlock" zu 0 wird !
      )
    )
    ('else (cons (car pair) (getvar (cdr pair))))
      )
    )
  )
  '((8 . "clayer")
    (62 . "cecolor")
    (6 . "celtype")
    (370 . "celweight")
    (48 . "celtscale")
    )
)
      )
    )
  )
  (princ
    "\nMit [Zurück->Rück] können alle eben erstellten Objekte wieder gelöscht werden."
  )
  (prin1)
)
(prin1)

------------------
http://www.benwisch.de

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

jukni
Mitglied
Techniker


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

Beiträge: 175
Registriert: 28.03.2002

erstellt am: 28. Jan. 2005 07:57    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 Benwisch.
Das wars. Genau das was ich gesucht habe.
Vielen Dank.

Ich hoffe viele nutzen deinen Offset Befehl.

Mit freundlichem Gruss

Jürgen       

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

jukni
Mitglied
Techniker


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

Beiträge: 175
Registriert: 28.03.2002

erstellt am: 28. Jan. 2005 11:08    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 Benwisch.
Das Makro funktioniert für mich sehr gut.
Einen Kollegen stört jedoch noch eine Kleinigkeit.
Er muss nach dem Versetzen den Versatz nochmal
bestätigen.
Kann man das noch ändern??
So wie im Originalbefehl.
Danke.
m.f.G
Jürgen       

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

cad4fun
Ehrenmitglied



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

Beiträge: 1846
Registriert: 06.12.2004

privat ACAD 2013 deutsch, Windows 7 64Bit
HP Elite 7500 Series MT,Intel Cote i5-3470 CPU 3,20Ghz,16GB RAM

erstellt am: 28. Jan. 2005 12: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 jukni 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von jukni:

Einen Kollegen stört jedoch noch eine Kleinigkeit.
Er muss nach dem Versetzen den Versatz nochmal
bestätigen.

dann spiel Dir doch die offset_layer.vlx drauf, dann funktioniert der normale ACAD-Offset-befehl nach deinen wünschen.
nie wieder nachdenken müssen über offset und welche routine muss ich jetzt starten!!

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

fuchsi
Mitglied
Programmierer c#.net Datawarehouse


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

Beiträge: 1201
Registriert: 14.10.2003

AutoCad Version 2012 deu/enu
<P>Windows 7 64bit

erstellt am: 28. Jan. 2005 13:22    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 jukni 10 Unities + Antwort hilfreich

Nur so als Denkanstoss
vielleicht ein ganz anderer Ansatz.

Wenn der Versetz-Befehl immer so funktionieren soll, könnte man das mit einem Command-will-start und Command-Ended Reaktor machen

Im command-will-start reaktor das letzte element merken, und im Command-ended (auch im cancelled) alle neu erstellten Objekte (wenn es der befehl versetz war) auf aktuellem Layer usw setzten.

------------------
WWW.FFZELL.AT.TC

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

benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


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

Beiträge: 375
Registriert: 01.02.2001

erstellt am: 28. Jan. 2005 13:29    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 jukni 10 Unities + Antwort hilfreich

 
Zitat:
Original erstellt von jukni:
Einen Kollegen stört jedoch noch eine Kleinigkeit.
Er muss nach dem Versetzen den Versatz nochmal
bestätigen.


Habe ich ja geschrieben, daß ich jedesmal eine neues Versatzmaß angeben kann. Mich stört das Return-drücken nicht.
Hier die geänderte Fassung...
Code:

;;; Autor Rolf "Benwisch" Wischnewski
;;; 08/04, 01/05
;;; Aufruf aus Autocad : BW_Offset
(defun c:bw_offset (/ entity)
  ;; Markierung für "Zurück zur Marke"
  (command "_UNDO" "_mark")
  ;; einmaliges abfragen des Versatzmaßes...
  ;; Systemvariable für den allg. offsetabstand
  (setvar
    "offsetdist"
    (cond ((getdist
    (strcat "\nAbstand angeben oder durch Punkte bestimmen <"
    (rtos (getvar "offsetdist"))
    "> "
    )
  )
  )
  ((getvar "offsetdist"))
    )
  )
  ;; Beginn Schleife
  (while (setq entity
(entsel
  "\nBitte Objekt auswählen und Punkt auf Seite angeben, auf die versetzt werden soll (Return = Ende) "
)
)
    ;; Rückgabe durch setq ggf. nil, falls kein Objekt gewählt wurde,
    ;; was wiederum bedeutet, da der Lambda-Ausdruck ein NIL zurückgibt und
    ;; zum verlassen der While-Schleife führt.
    (command "_offset" "" entity pause "")
    (entmod
      (append
;; Entferne "alte" Assoc-Werte...
(vl-remove-if
  (function
    (lambda (pair) (member (car pair) '(8 62 6 370 48)))
  )
  ;; ...vom dem zuletzt erstellten Objekt (durch command)...
  (entget (entlast))
)
;; ... und hänge neue Assoc.-Liste mit den aktuellen Dropdownwerten an
(mapcar
  (function
    (lambda (pair / color)
      (cond ((= 62 (car pair)) ;_ Prüfe Farbwert
    (if (= "BYLAYER"
    (setq color (strcase (getvar (cdr pair))))
)
      (cons 62 256) ;_ "ByLayer" umwandeln...
      (cons 62 (atoi color)) ;_ sonst in Integer umwandeln, wobei "ByBlock" zu 0 wird !
    )
    )
    ('else (cons (car pair) (getvar (cdr pair))))
      )
    )
  )
  '((8 . "clayer")
    (62 . "cecolor")
    (6 . "celtype")
    (370 . "celweight")
    (48 . "celtscale")
  )
)
      )
    )
  )
  (princ
    "\nMit [Zurück->Rück] können alle eben erstellten Objekte wieder gelöscht werden."
  )
  (prin1)
)
(prin1)


Zitat:

dann spiel Dir doch die offset_layer.vlx drauf, dann funktioniert der normale ACAD-Offset-befehl nach deinen wünschen.
nie wieder nachdenken müssen über offset und welche routine muss ich jetzt starten!!


@cad4fun
Dieses Tool legt die Objekte auf einen Layer, verändert dabei aber nicht die anderen Werte, was ja durchaus für viele interessanter ist.

[Diese Nachricht wurde von benwisch am 28. Jan. 2005 editiert.]

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

jukni
Mitglied
Techniker


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

Beiträge: 175
Registriert: 28.03.2002

erstellt am: 28. Jan. 2005 13:34    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

Supi.
Jetzt passt alles.

Vielen Dank.

Gruss Jürgen

       

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