| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Request a special discount on NVIDIA RTX 5000 Ada Generation GPU !, eine Pressemitteilung
|
Autor
|
Thema: Lisp und Schraffuren (3427 mal gelesen)
|
SilkeRS Mitglied Ingenieurin
Beiträge: 14 Registriert: 09.05.2006
|
erstellt am: 12. Mai. 2006 13:04 <-- editieren / zitieren --> Unities abgeben:
Habe momentan ein für mich unlosbares Problem beim automatischen generieren von Schraffuren. Ich habe Punkte (auch mal 1000) die alle innerhalb einer geschlossenen Fläche liegen auf der eine Schraffur generiert werden soll. So nun sind aber die Gitterweiten der einelnen Flächen sehr sehr unterschiedlich. Beim automatischen Erzeugen der Schraffuren steigt das Programm aber irgendwann aus, da er einfach zu viele Objekte am Bildschirm hat (das macht ja die Schraffur im Handbetrieb auch, daß sie fragt, ob man wirklich hier schraffieren will, wenn zu viele Objekte am Bildschirm liegen). Leider kann ich auch mit Zoomfenstern das Ganze nicht wirklich in Griff bekommen, da die Flächengrößen sehr variieren. Weiß jemand Abhilfe, wie man der Schraffur die "dumme Nachfrage" ob man das wirklich will vielleicht abgewöhnen kann. Vielen Dank für eine Info Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1763 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 12. Mai. 2006 14:41 <-- editieren / zitieren --> Unities abgeben: Nur für SilkeRS
Hallo Silke, ich bin mir nicht sicher, ob ich Dich richtig verstanden habe. Mit fogendem Code kannst Du erst Objekte auswählen, und nur aus denen wird dann die Umgrenzung über den Befehl "bhatch" gesucht, der interne Punkt in der Fläche muß eingegeben werden. Im Beispiel habe ich das Schraffurmuster SOLID genommen. Code:
(defun c:test (/ aws) (princ "\nBitte Objekte auswählen:") (if (setq aws (ssget)) (command "_.bhatch" "e" "SOLID" "o" "u" "n" aws "" "" (getpoint "\nPunkt in der Fläche:") "")))
------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SilkeRS Mitglied Ingenieurin
Beiträge: 14 Registriert: 09.05.2006
|
erstellt am: 12. Mai. 2006 15:42 <-- editieren / zitieren --> Unities abgeben:
Hallo Jörn, die inneren Punkte habe ich alle, die liegen auf einem Layer und können selektiert werden (aber eben bis zu 1000 Stück!!). Das Problem ist anders gelagert, versuche mal in einer unübersichtlichen dwg die eine Fläche zu selektieren, dann sagt Dir AutoCad auch Deletet <N> und sagt, daß er keine schraffierbare Fläche bekommt. Erst wenn Du dich heranzoomst kannst du die gleiche Fläche auch auswählen. Ich habe schon alle Layer, die ich nicht brauche ausgeschaltet und... aber es reicht nicht. Gruß Silke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1763 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 12. Mai. 2006 17:32 <-- editieren / zitieren --> Unities abgeben: Nur für SilkeRS
Hallo Silke, was sind bei diese inneren Punkte?? AutoCAD-Punkte, Blöcke??? Wenn ich eine Schraffur erstelle picke ich mit dem Befehl "GSCHRAFF" einen Punkt in der Fläche. Dann wird innerhalb einer durch Linienelemente begrenzten Fläche die Schraffur erstellt. Mit dem oben geschriebenen Lisp kann man die Anzahl der Elemente reduzieren, damit sich ACAD kein Wolf rechnet. Kannst Du nicht die für die Umgrenzung wichtigen Linienelemente über einen Filter fassen, in eine frische Zeichnung kopieren und dann die Ergebnisse wieder in Deine Hauptzeichnung kopieren?? Ich wünsche Dir erstmal ein schönes Wochenende ------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SilkeRS Mitglied Ingenieurin
Beiträge: 14 Registriert: 09.05.2006
|
erstellt am: 21. Mai. 2006 21:16 <-- editieren / zitieren --> Unities abgeben:
Hallo Jörn, zwar schon eine Woche her, aber zu diesen Tricks habe ich auch schon gegriffen. Die inneren Punkte sind echte Punkte (POINT). Das Problem ist, daß es einfach zu viele Maschen sind, die am Bildschirm erscheinen und der Ausschnitt (zoom) aufgrund der sehr unterschiedlichen Maschengröße nicht sinnvoll vorab berechnet werden kann. Auch mit einer Error-Routine ist es schwierig (ich habe es nicht geschafft), da das Programm nicht ganz aussteigt, sondern eben in die Abfrage hineinläuft, ob man sicher ist, daß diese Schraffur auch erstellt werden soll. Ich fürchte hierfür gibt es keine Lösung oder nur mit soviel Aufwand, daß einem die Lust vergeht. Silke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9803 Registriert: 01.12.2003 One AutoCAD 2.5 - 2024, AutoCAD, Civil 3D, Win10/Win11
|
erstellt am: 21. Mai. 2006 21:31 <-- editieren / zitieren --> Unities abgeben: Nur für SilkeRS
Da gibts einmal Maxhatch, um auch sehr dichte Schraffuren bei großen Flächen erzeugen zu können (setenv "MaxHatch" "100000") und dann die Systemvariable HPOBJWARNING auf einen höheren Wert setzen Auszug aus der AutoCAD Hilfe: Zitat:
HPOBJWARNING-Systemvariable Variablentyp: Ganzzahl Gespeichert in: Registrierung Ausgangswert: 10000 Legt die Anzahl der Schraffurumgrenzungsobjekte fest, die ausgewählt werden können, bevor eine Warnung angezeigt wird.
z.B. (setvar "HPOBJWARNING" 100000) ------------------ Mit freundlichem Gruß Udo Hübner Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SilkeRS Mitglied Ingenieurin
Beiträge: 14 Registriert: 09.05.2006
|
erstellt am: 21. Mai. 2006 21:50 <-- editieren / zitieren --> Unities abgeben:
|
SilkeRS Mitglied Ingenieurin
Beiträge: 14 Registriert: 09.05.2006
|
erstellt am: 22. Mai. 2006 08:04 <-- editieren / zitieren --> Unities abgeben:
|
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9803 Registriert: 01.12.2003 One AutoCAD 2.5 - 2024, AutoCAD, Civil 3D, Win10/Win11
|
erstellt am: 22. Mai. 2006 08:38 <-- editieren / zitieren --> Unities abgeben: Nur für SilkeRS
Hallo Silke, DIe Systemvariable gibts erst ab AutoCAD 2006. Es wäre sinnvoll, wenn du beim Schreiben des nächsten Beitrags deine Systemangaben ausfüllst (Rechner, Grafik, verwendete Software (Version und Servicepacks). ------------------ Mit freundlichem Gruß Udo Hübner Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SilkeRS Mitglied Ingenieurin
Beiträge: 14 Registriert: 09.05.2006
|
erstellt am: 22. Mai. 2006 08:56 <-- editieren / zitieren --> Unities abgeben:
|
mkl-cad Mitglied Technischer Zeichner
Beiträge: 378 Registriert: 23.07.2003 ACAD 2002 Express Tools 1-9 Architektural Desktop Windows XP Server Windows 2003 3 GHz Rechner 1 GB RAM 80 GB Festplatte ATI FireGL V3100 2 17" Flachbildschirme
|
erstellt am: 22. Mai. 2006 10:18 <-- editieren / zitieren --> Unities abgeben: Nur für SilkeRS
|
Geos Mitglied Vermessungstechniker i.R.
Beiträge: 1017 Registriert: 21.09.2001 ACAD Map 2010, Win 7 Pro eigene Lisp's<P>HW: Core i7 860, 2.8 GHz 3.3 GB, NVIDIA GeForce GTS 250
|
erstellt am: 23. Mai. 2006 11:33 <-- editieren / zitieren --> Unities abgeben: Nur für SilkeRS
|