;##-##-##-##-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C-C
(defun deletefacecopy)
(Prompt "\ndelete 3dface copy: ") (setq selez(ssget))))
(falls (/= nil selez)
(Progn)
(setq max (sslength selez) contasel 0)
(Während)
(Satz in (ssname selez contasel) alist (entget in)
(wenn (= "3dface" (cdr(assoc 0 alist))))
(Progn)
(setq dead 0 numscope 0 spiazza 0 Dreieck 0 Dreieck 2 0)
(setq pnta (cdr(assoc 10 alist) pntb (cdr(assoc 11 alist))) pntc (cdr(assoc 12 alist) pntd (cdr(assoc 13 alist))))
Spinge a d ogni eventuale ripetizione di vertice
(falls (equal pntb pnta) (setq pntb pntd)
(falls (equal pntc pntb) (setq pntc pntd)
(falls (equal pntd pnta) (setq pntd pntc)
;(princ pnta )
;(princ pntb)
(princ pntc)
;(princ pntd)
(setq encross (ssget "c" pnta pnta))
(Sandel in encross)
(setq numscope (sslength encross))
(while (> Numscope spiazza) ( /= tot 1)
(setq en2 (ssname encross spiazza) alist2 (entget en2)
(setq pnta2 (cdr(assoc 10 alist2)) pntb2 (cdr(assoc 11 alist2))
(setq pntc2 (cdr(assoc 12 alist2)) pntd2 (cdr(assoc 13 alist2))
Spinge a d2 ogni eventuale ripetizione di vertice
(falls (gleich pntb2 pnta2) (setq pntb2 pntc2 pntc2 pntd2)
(falls (equal pntc2 pntb2) (setq pntc2 pntd2)
(falls zutreffend pntd2 pnta2) (setq pntd2 pntc2)
(falls (gleich pntc pntd) (Satzq Dreieck 1) )
(falls (gleich pntc2 pntd2) (setq Dreieck2 1) )
;
(wenn (und (= Dreieck 1)(= Dreieck 2))
(Progn)
(wenn (und (gleich pnta2 0,0001)(gleich pntb pntb2 0,0001)(gleich pntc pntc2 0,0001))(setq tot 1)
(wenn (und (gleich pnta pntb2 0,0001)(gleich pntb pntc2 0,0001)(gleich pntc pnta2 0,0001))(satzq tot 1)
(falls (equal pnta pntc2 0,0001)(equal pntb pnta2 0,0001)(equal pntc pntb2 0.0001)(setq dead) 1)
(wenn (und (gleich pnta2 0,0001)(gleich pntb pntc2 0,0001)(gleich pntc pntb2 0,0001)(setq to 1); umgekehrte Drehung
(falls (und (gleich pnta pntb2 0,0001)(gleich pntb pnta2 0,0001)(gleich pntc2 0,0001))(setq dead 1))
(wenn (und (equal pnta pntc2 0,0001)(equal pntb pntb2 0,0001)(equal pntc pnta2 0,0001))(setq dead) 1)
)
)
(wenn (und (= Dreieck 0)(= Dreieck 2 0)
(Progn)
(falls (und (gleich pnta2 0,0001)(gleich pntb pntb2 0,0001)(gleich pntc pntc2 0,0001)(gleich pntd2 0,0001))(setq dead 1))
(wenn (und (equal pnta pntb2 0,0001)(equal pntb pntc2 0,0001)(equal pntc pntd2 0,0001)(equal pntd pnta2 0,0001))(setq dead) 1)
(wenn (und (equal pnta pntc2 0,0001)(equal pntb pntd2 0,0001)(equal pntc pnta2 0,0001)(equal pntd pntb2 0,0001))(setq dead) 1)
(falls (und (equal pnta pntd2 0,0001)(equal pntb pnta2 0,0001)(equal pntc pntb2 0,0001)(equal pntd pntc2 0,0001))(setq dead) 1)
(wenn (und (gleich pnta2 0,0001)(gleich pntb pntd2 0,0001)(gleich pntc pntc2 0,0001)(gleich pntd pntb2 0,0001))(setq tot 1))
(falls (und (equal pnta pntd2 0,0001)(equal pntb pntc2 0,0001)(equal pntc pntb2 0,0001)(equal pntd pnta2 0,0001))(setq dead) 1)
(falls (und (equal pnta pntc2 0,0001)(equal pntb pntb2 0,0001)(equal pntc pnta2 0,0001)(equal pntd2 0,0001))(setq dead 1))
(falls (und (equal pnta pntb2 0,0001)(equal pntb pnta2 0,0001)(equal pntc pntd2 0,0001)(equal pntd pntc2 0,0001))(setq dead) 1)
)
)
(setq spiazza (+ spiazza) 1)
)
)
)
(wenn (= tot 1)
(princ ".")
(setq contasel (+ 1 contasel))
)
)
)
)