| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY bietet das umfangreichste Ökosystem von B2B als auch B2C-Lösungen für IT-Akteure auf dem Markt, eine Pressemitteilung
|
Autor
|
Thema: filter nach winkel (192 mal gelesen)
|
Britt Mitglied
Beiträge: 154 Registriert: 21.03.2002 AutoCAD 2006 WindowsXP HP800
|
erstellt am: 07. Okt. 2003 10:02 <-- editieren / zitieren --> Unities abgeben:
|
Kramer24 Ehrenmitglied V.I.P. h.c. Architekt
Beiträge: 5896 Registriert: 09.11.2001 Acad Architecture 2023 WIN 10
|
erstellt am: 07. Okt. 2003 10:12 <-- editieren / zitieren --> Unities abgeben: Nur für Britt
Schnellauswahl bietet Winkel an... Filter weiß ich nicht. Lothar ------------------ "Stellt Euch vor, es geht, und keiner kriegt's hin." (Neuss) [Diese Nachricht wurde von Kramer24 am 07. Oktober 2003 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Thomas Rausch Mitglied
Beiträge: 1200 Registriert: 26.03.2001 Intel Xeon 3,6 GHz 32 GB RAM NVIDIA Quadro P2000 Windows 10 Enterprise AutoCADmap 3D 2023 WS-Landcad 2023 QGIS 3.28.5
|
erstellt am: 07. Okt. 2003 10:31 <-- editieren / zitieren --> Unities abgeben: Nur für Britt
Hallo, im Filter sollte es über eine und-Verknüpfung zwischen LINIE und Normalenvekor=... funktionieren ------------------ gruß thomas vergiss den Normalenvektor, war Unsinn, Dank an Siegfried [Diese Nachricht wurde von Thomas Rausch am 07. Oktober 2003 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Schachinger Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 2041 Registriert: 08.04.2002 AIS2009, PDSU 2012-2015, Plant 3D 2011-2015, NavisWorks 2010-2015, Win7 64bit SP1, Intel Core i7 870, 16 GB RAM, Quadro 2000D
|
erstellt am: 07. Okt. 2003 10:37 <-- editieren / zitieren --> Unities abgeben: Nur für Britt
(defun c:filter45 () (setq ss (ssget '((0 . "LINE")))) (setq ssnew (ssadd)) (setq indx -1) (repeat (sslength ss) (setq indx (1+ indx)) (setq en (ssname ss indx)) (setq ang (/ (* (angle (reverse (cdr (reverse (cdr (assoc 10 (entget en)))))) (reverse (cdr (reverse (cdr (assoc 11 (entget en))))))) 180) PI)) (if (= ang 45.0) (ssadd en ssnew)) (if (= ang 225.0) (ssadd en ssnew)) ) (command "_-block" "ss45" "0,0,0" ssnew "" "_-insert" "ss45" "0,0,0" "" "" "") ) ansonsten mal damit probieren... wenn die wingel 135 und 315 auch mitgenommen werden sollen halt (if (= ang 135.0) (ssadd en ssnew)) (if (= ang 315.0) (ssadd en ssnew)) hinzufügen. erstellt einen block "ss45" mit all den objekten. linien mit FAST 45 grad checkt das natürlich noch nicht... wär aber ausbaufähig.
------------------ mfg Siegfried Schachinger http://www.tbschatz.at Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Schachinger Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 2041 Registriert: 08.04.2002 AIS2009, PDSU 2012-2015, Plant 3D 2011-2015, NavisWorks 2010-2015, Win7 64bit SP1, Intel Core i7 870, 16 GB RAM, Quadro 2000D
|
erstellt am: 07. Okt. 2003 11:17 <-- editieren / zitieren --> Unities abgeben: Nur für Britt
|
Britt Mitglied
Beiträge: 154 Registriert: 21.03.2002 AutoCAD 2006 WindowsXP HP800
|
erstellt am: 07. Okt. 2003 11:20 <-- editieren / zitieren --> Unities abgeben:
Vielen Dank für eure Hilfe, am besten bekomme ich es mit der Schnellauswahl hin (mal ein Grund sich doch damit zu beschäftigen, ich benutze sonst Filter) @Schachinger: das Programm läuft prima an, aber es nimmt aus irgendeinem Grund nicht alle Linien der Schraffur, das liegt aber bestimmt an der ursprünglichen Schraffur. Tschüß Britt
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Schachinger Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 2041 Registriert: 08.04.2002 AIS2009, PDSU 2012-2015, Plant 3D 2011-2015, NavisWorks 2010-2015, Win7 64bit SP1, Intel Core i7 870, 16 GB RAM, Quadro 2000D
|
erstellt am: 07. Okt. 2003 12:21 <-- editieren / zitieren --> Unities abgeben: Nur für Britt
hi britt! liegt wohl nicht an der schraffur sondern an meinem lisp *G* das problem ist das bei manchen linien warscheinlich ein winkel von 45.000001 oder 49.99999 oder ähnliches rauskommt.... daher: (defun c:filter45 () (setq ss (ssget '((0 . "LINE")))) (setq ssnew (ssadd)) (setq indx -1) (repeat (sslength ss) (setq indx (1+ indx)) (setq en (ssname ss indx)) (setq ang (/ (* (angle (reverse (cdr (reverse (cdr (assoc 10 (entget en)))))) (reverse (cdr (reverse (cdr (assoc 11 (entget en))))))) 180) PI)) (if (<= (abs (- ang 45.0)) 0.0001) (ssadd en ssnew)) (if (<= (abs (- ang 225.0)) 0.0001) (ssadd en ssnew)) ) (command "_-block" "ss45" "0,0,0" ssnew "" "_-insert" "ss45" "0,0,0" "" "" "") ) nimmt alle linien mit die +/-0.0001 von 45grad abweichen... wie gesagt wenn mehrere winkel gewünscht sind einfach die zielen kopieren. aber lothar hat sowiso die beste lösung gehabt *G* mein lisp wäre nur dann sinnvoll wenn man z.b. alle linien mit 30 UND 45 grad suchen will.. hab ich wieder mal umsonst getippselt ------------------ mfg Siegfried Schachinger http://www.tbschatz.at Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |