| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Cideon Solution Days 2025, eine Veranstaltung am 03.06.2025
|
Autor
|
Thema: Quadrate vergrössern (2729 / mal gelesen)
|
alf-1234 Mitglied CAD Dienstleister Elektrotechnik
Beiträge: 1446 Registriert: 03.11.2003 i7 980x mit 24GB Arbeitsspeicher 2 x 500 GB SATA Festplatten, GTX 2080, 1 x GTX 970 Autocad, Accurender 5, Bricscad 20, 3D Drucker UM2
|
erstellt am: 14. Dez. 2019 23:29 <-- editieren / zitieren --> Unities abgeben:
Ich habe hier einen Plan 90 x 200cm gross. Da sind ca. 1100 Quadrate mit einer Nummer drin, die um den Faktor 3 vergrössert werden soll. Der Mittelpunkt des Quadrats ist fest vorgegeben. Zur Zeit mache ich es so, das ich jedes Quadrat einzeln anklicke, den Mittelpunkt bestimme und dann um den Faktor 3 vergrössere. Da ich aber so wahnsinnig viele Quadrate habe, frage ich mal ob es die Möglichkeit gibt, alle Quadrate in einem Schritt zu vergrössern. Der Mittelpunkt des Quadrats darf dabei die Position nicht verändern. Ich hoffe, das war verständlich. Gibt es ein Tool, womit ich dieses Problem lösen kann??? Für Hilfe wäre ich sehr dankbar. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 15. Dez. 2019 00:36 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
Mit Programmierung sehr einfach, aber warum nicht einfach die Daten extrahieren und die geänderten Daten zum erstellen neuer Objekte verwenden? Aber dann sollte man gleich ordentlich vorgehen und einen Block nehmen, Den Text auch dazu als Attributwert. Dann wäre die Aufgabe beim nächsten Mal in 5sek. erledigt. Mehr wie Excel braucht man also nicht, ist auch spannender wie ein 1Klick Programm.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
alf-1234 Mitglied CAD Dienstleister Elektrotechnik
Beiträge: 1446 Registriert: 03.11.2003 i7 980x mit 24GB Arbeitsspeicher 2 x 500 GB SATA Festplatten, GTX 2080, 1 x GTX 970 Autocad, Accurender 5, Bricscad 20, 3D Drucker UM2
|
erstellt am: 15. Dez. 2019 14:10 <-- editieren / zitieren --> Unities abgeben:
Danke für die Info. Leider sind die vielen Quadrate keine Blöcke. Ich habe versucht mit den Express Tools das Problem zu lösen. Tausche Block A gegen Block B. Das war leider nichts. Mit Programmierung habe ich leider überhaupt keine Erfahrung. Ich habe mich zwar vor Jahren mal ein wenig in Lisp eingearbeitet, aber das war es dann auch. Ich werde hier wohl händisch weiter arbeiten müssen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Cadzia Ehrenmitglied V.I.P. h.c. CAD/Grafik-Dienstleister
Beiträge: 2917 Registriert: 02.07.2004
|
erstellt am: 15. Dez. 2019 17:58 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
|
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 15. Dez. 2019 23:13 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
Je nachdem wie die Rechtecke entstanden sind (und ob es Linien oder Polylinien sind, wäre der varia-e Link nicht schlecht, aber nur bei gleichgroßen Quadraten. >"Ich werde hier wohl händisch weiter arbeiten müssen." ??? Was ist mit meinem Tip das ganze in Excel zu verhackstücken? Gerade weil du selbst nicht die Programmierlödung erstellen kannst und bisher keinen Treffer hattest für ein Tool (was es aber sicher zu finden gibt). Selbst wenn du dieses eine Mal soviel Zeit benötigst wie per Hand umsetzen, beim nächsten Mal und auch anderen Aufgaben ist man dann geübter und hätte davon provitiert. Wir wissen leider noch nicht einmal ob es gleichgroße oder verschieden große Rechtecke sind Linien oder Polylinien.. Ändere das und du bekommst mehr Unterstützung, am Ende dann vielleicht auch die 1-Klick Lösung, ich sehe es aber immer als besser an wenn man sich auch für ähnliche Aufgaben selbst helfen kann, auch wenn es 15min länger dauert. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
alf-1234 Mitglied CAD Dienstleister Elektrotechnik
Beiträge: 1446 Registriert: 03.11.2003 i7 980x mit 24GB Arbeitsspeicher 2 x 500 GB SATA Festplatten, GTX 2080, 1 x GTX 970 Autocad, Accurender 5, Bricscad 20, 3D Drucker UM2
|
erstellt am: 16. Dez. 2019 10:59 <-- editieren / zitieren --> Unities abgeben:
Sorry, das ich mich erst jetzt melde. Musste am WE durcharbeiten, damit ich die Pläne fertig bekomme. Bei den Quadraten handelt es sich um Polylinien und die sind alle gleich gross. Exel ist gut, aber leider bin ich in Exel absolut nicht so fit, wie ich sein müsste. Ich habe bis jetzt ca 40% vom Monsterplan fertig. Karin, sorry aber ich habe aus Zeitgründen dieses Lisp Programm noch nicht ausprobiert und getestet. Ich stehe hier zur Zeit etwas unter Druck. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 16. Dez. 2019 11:13 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
Wenn die Quadrate alle gleich groß sind besteht die Chance das auch alle gleich erstellt sind, also zum Beispiel 1. Stützpunkt oben links, dann 2., 3., .4 im Uhrzeigersinn oder eben dagegen. In dem Fall würde die verlinkte Routine alles auf einen Schlag vergrößern und du müsstest die Quadrate dann nur alle zusammen an die richtige Position verschieben.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Cadzia Ehrenmitglied V.I.P. h.c. CAD/Grafik-Dienstleister
Beiträge: 2917 Registriert: 02.07.2004
|
erstellt am: 16. Dez. 2019 22:21 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
|
alf-1234 Mitglied CAD Dienstleister Elektrotechnik
Beiträge: 1446 Registriert: 03.11.2003 i7 980x mit 24GB Arbeitsspeicher 2 x 500 GB SATA Festplatten, GTX 2080, 1 x GTX 970 Autocad, Accurender 5, Bricscad 20, 3D Drucker UM2
|
erstellt am: 16. Dez. 2019 23:06 <-- editieren / zitieren --> Unities abgeben:
|
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 17. Dez. 2019 00:10 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
|
alf-1234 Mitglied CAD Dienstleister Elektrotechnik
Beiträge: 1446 Registriert: 03.11.2003 i7 980x mit 24GB Arbeitsspeicher 2 x 500 GB SATA Festplatten, GTX 2080, 1 x GTX 970 Autocad, Accurender 5, Bricscad 20, 3D Drucker UM2
|
erstellt am: 17. Dez. 2019 19:13 <-- editieren / zitieren --> Unities abgeben:
Ich habe mir heute abend mal ein wenig Zeit genommen und dieses Lisp Programm varia-e getestet. Das gute ist, das Programm skaliert um einen bestimmtem Wert die Quadrate hoch. Was aber leider garnicht geht, ist der Punkt das die Quadrate nicht genau vom Mittelpunkt des Quadrats hochskaliert werden. Jetzt muss ich die vergrösserten Quadrate genau wieder auf die alten Mittelpunkte verschieben. Das Programm funktioniert, aber es ist so für micht nicht brauchbar. Ob man die Lisp Datei umschreiben kann, weiss ich nicht. Ich bin in Lisp leider nicht richtig fit. Ich DANKE allen für die Hilfe. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
spider_dd Mitglied
Beiträge: 1144 Registriert: 27.11.2003 Win 10Pro Intel(R) Core(TM) i7-7700 NVIDIA Quadro P1000 ACAD, Civil-3D 2018
|
erstellt am: 19. Dez. 2019 08:43 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
Hallo alf, das ist die entscheidende Zeile für Dich: (setq ins (cdr (assoc 10 (entget nam)))) Hier musst Du für ins das Zentrum des jeweiligen Quadrates angeben/ermitteln. Wenn Du uns verrätst, was Du für eine Ausgabe bekommst, wenn Du folgendes in die Befehlszeile eingibst und eines Deiner "Quadrate" wählst, können wir Dir vielleicht weiter helfen. (entget (car (nentsel))) Bei einer Linie sieht das z. B. irgendwie so aus: ((-1 . <Objektname: 2162a9b43a0> ) (0 . "LINE") (330 . <Objektname: 216058f91f0> ) (5 . "159A") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0") (100 . "AcDbLine") (10 81.2769 113.711 0.0) (11 228.064 208.192 0.0) (210 0.0 0.0 1.0)) Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 19. Dez. 2019 08:48 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
|
spider_dd Mitglied
Beiträge: 1144 Registriert: 27.11.2003 Win 10Pro Intel(R) Core(TM) i7-7700 NVIDIA Quadro P1000 ACAD, Civil-3D 2018
|
erstellt am: 19. Dez. 2019 13:14 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
|
alf-1234 Mitglied CAD Dienstleister Elektrotechnik
Beiträge: 1446 Registriert: 03.11.2003 i7 980x mit 24GB Arbeitsspeicher 2 x 500 GB SATA Festplatten, GTX 2080, 1 x GTX 970 Autocad, Accurender 5, Bricscad 20, 3D Drucker UM2
|
erstellt am: 19. Dez. 2019 13:14 <-- editieren / zitieren --> Unities abgeben:
Hallo Thomas Das ist nett, das du mir helfen möchtest. Gibt es auch die Möglichkeit, sobald ich das Quadrat angewählt habe, das das Programm dann von alleine den Mittelpunkt bestimmt?? Wenn ich jedes Quadrat einzeln von Hand den Mittelpunkt bestimmen muss, ist das zuviel Aufwand. Das gleiche mache ich ja jetzt auch schon. Mittelpunkt bestimmen und um den Faktor 3 hochskalieren.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
spider_dd Mitglied
Beiträge: 1144 Registriert: 27.11.2003 Win 10Pro Intel(R) Core(TM) i7-7700 NVIDIA Quadro P1000 ACAD, Civil-3D 2018
|
erstellt am: 19. Dez. 2019 13:18 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
Ja, sicher soll das Proggi den Mittelpunkt selbst ausrechnen, deshalb wollen wir ja mal die Daten sehen. Aus den Eckpunkten lässt sich das sicher ermitteln, nur ist die Frage, ist es eine Polylinie, LW-Polylinie, 3D-Polylinie ... Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Meldin Mitglied
Beiträge: 398 Registriert: 15.07.2011 ACA2020 Windows10
|
erstellt am: 20. Dez. 2019 10:15 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
Hallo Thomas, das ist doch egal welches objekt bei getboundingbox einfach (setq ins (cdr (assoc 10 (entget nam)))) raus und das rein (setq vlELEm (vlax-ename->vla-object nam)) (vla-getboundingbox vlELEm 'xmin 'xmax) (setq p0xy (vlax-safearray->list xmin) p1xy (vlax-safearray->list xmax) ins (polar p0xy (angle p0xy p1xy) (/ (distance p0xy p1xy) 2)) ) ist woht ungetestet. Frohe Weihnachten !! ------------------ Gruß Wolfgang [Diese Nachricht wurde von Meldin am 20. Dez. 2019 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
alf-1234 Mitglied CAD Dienstleister Elektrotechnik
Beiträge: 1446 Registriert: 03.11.2003 i7 980x mit 24GB Arbeitsspeicher 2 x 500 GB SATA Festplatten, GTX 2080, 1 x GTX 970 Autocad, Accurender 5, Bricscad 20, 3D Drucker UM2
|
erstellt am: 20. Dez. 2019 11:30 <-- editieren / zitieren --> Unities abgeben:
Ich habe in der Lisp Datei die Daten ausgetauscht und getestet. Es funktioniert auch, bis auf ein paar Kleinigkeiten. Vor allen der blaue Kreis wird nicht 3x grösser sondern x mal grösser. Im Anhang ist die Datei zum testen. Ist nur ein kleiner Ausschnitt vom Riesenplan. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
vision Mitglied
Beiträge: 113 Registriert: 27.10.2003 AutoCAD 2015 Expresstools Windows 10
|
erstellt am: 20. Dez. 2019 12:18 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
|
alf-1234 Mitglied CAD Dienstleister Elektrotechnik
Beiträge: 1446 Registriert: 03.11.2003 i7 980x mit 24GB Arbeitsspeicher 2 x 500 GB SATA Festplatten, GTX 2080, 1 x GTX 970 Autocad, Accurender 5, Bricscad 20, 3D Drucker UM2
|
erstellt am: 20. Dez. 2019 20:38 <-- editieren / zitieren --> Unities abgeben:
Wie kommt es aber, wenn ich das Ouadrat mit dem blauen Kreis von Hand um den Faktor 3 vergrössere, ist der Kreis und die Schraffur in Ordnung. Wenn ich das mit dem kleinen Programm varia-e mache, dann nicht mehr. Was läuft da evtl. falsch???? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 20. Dez. 2019 23:39 <-- editieren / zitieren --> Unities abgeben: Nur für alf-1234
Die Schraffur wird 2x geändert da es eine assoziative Schraffur ist und dieses simple Code Beispiel so Kleinigkeiten nicht berücksichtigt. Pickstyle bleibt unberücksichtigt und die assoziative Verbindung generell. Aktuell wir jedes gewählte Objekt skaliert, die Schraffur ist assoziativ und passt sich sich dem vergrößerten Kreis an, danach wird die Schraffur noch mal um Faktor 3 vergrößert durch varia-e. Wenn assoziative Bemaßung/Schraffur gewählt wurde, Was soll mit den assoz. Objekten geschehen? Wenn assoziativ referenzierte Objekte gewählt wurden, Was soll mit den assoz. Objekten geschehen? Und die Liste geht noch bei anderen Themen weiter - wenn man wollte.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |