Odcl_Messagebox = Meldebox der AutoCAD-Zusatzaplikation ObjectDCL Msgbox1 = Meldebox der AutoCAD-Zusatzaplikation ObjectDCL (defun c:xRefZuschneiden ( / xRef c1) (princ "\xRef wählen :") (if (setq xRef (ssget "_:s" '((0 . "insert")))) (if (cdr (assoc 1 (tblsearch "block" (cdr (assoc 2 (entget (ssname xRef 0))))))) (progn (setq xRef (entget (ssname xRef 0))) (if (cdr (assoc 360 xRef)) ;Xref hatt(e) schon mal eine Zuschneidung (if (cdr (assoc 3 (entget (cdr (assoc 360 xRef))))) (progn ;xRef hat Zuschneidung (if (= (Odcl_Messagebox "Vorhandene xRef-Zuschneidung löschen?" "Neu zuschneiden" 5 3) 6) (progn (vl-cmdf "xzuschneiden" (cdr (assoc -1 xRef)) "" "löschen") (vl-cmdf "xzuschneiden" (cdr (assoc -1 xRef)) "" "neue" "rechteckig" (setq c1 (getpoint "\n1. Eckpunkt für sichtbare Objekte :")) (getcorner c1 "\n2. Eckpunkt für sichtbare Objekte :")) );progn );if );progn (progn ;xRef hatte Zuschneidung (vl-cmdf "xzuschneiden" (cdr (assoc -1 xRef)) "" "neue" "rechteckig" (setq c1 (getpoint "\n1. Eckpunkt für sichtbare Objekte :")) (getcorner c1 "\n2. Eckpunkt für sichtbare Objekte :")) );progn );if (progn ;xRef hatte noch nie eine Zuschneidung (vl-cmdf "xzuschneiden" (cdr (assoc -1 xRef)) "" "neue" "rechteckig" (setq c1 (getpoint "\n1. Eckpunkt für sichtbare Objekte :")) (getcorner c1 "\n2. Eckpunkt für sichtbare Objekte :")) );progn );(if (cdr (assoc 360 xRef)) );progn (Msgbox1 "xRef zuschneiden" "Auswahl ist kein xRef!" 2) );if );if );defun