| | | 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: Zeichnung bemaßen (1352 mal gelesen)
|
coLami Mitglied
Beiträge: 52 Registriert: 26.07.2011 AutoCad Mechanical 2011, .net 3.5 C#
|
erstellt am: 25. Jan. 2012 16:03 <-- editieren / zitieren --> Unities abgeben:
Ich hab eine Zeichnung, die aus verschiedenen Blöcken besteht, das ganze ist eigentlich in 100% der Fälle rechteckig, also einfach ein paar rechteckige Blöcke nebeneinander. Mir würde erst mal eine Maßkette reichen, nur weiß ich nicht ganz, wie ich da rangehn soll. Gibt es einen Mechanismus, bei dem ich sage 'bemaße mir das Objekt auf der linken Seite' und fertig oder muß ich mir quasi die Koordinaten der Ecken oben links und rechts suchen und eine Linie, Maß und zwei Pfeile zeichnen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 25. Jan. 2012 16:09 <-- editieren / zitieren --> Unities abgeben: Nur für coLami
Zitat: Original erstellt von coLami: Ich hab eine Zeichnung, die aus verschiedenen Blöcken besteht, das ganze ist eigentlich in 100% der Fälle rechteckig, also einfach ein paar rechteckige Blöcke nebeneinander.
Sind die immer ohne Drehnung? Wenn JA, dann kannst du ja die Boundingbox abfragen. Zitat: Original erstellt von coLami: ... Gibt es einen Mechanismus, bei dem ich sage 'bemaße mir das Objekt auf der linken Seite' und fertig
nein Zitat: Original erstellt von coLami: ...oder muß ich mir quasi die Koordinaten der Ecken oben links und rechts suchen
ja Zitat: Original erstellt von coLami: ... und eine Linie, Maß und zwei Pfeile zeichnen?
nein. Mit den dann bekannten Koordinaten kannst du ja ein Bemaßungsobject erzeugen. Bei Fragen ... Grüße Holger ------------------ Holger Brischke CAD on demand GmbH Individuelle Lösungen von Heute auf Morgen. defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
coLami Mitglied
Beiträge: 52 Registriert: 26.07.2011 AutoCad Mechanical 2011, .net 3.5 C#
|
erstellt am: 26. Jan. 2012 10:22 <-- editieren / zitieren --> Unities abgeben:
|
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 26. Jan. 2012 10:50 <-- editieren / zitieren --> Unities abgeben: Nur für coLami
ich denke nicht, dass du dazu etwas fertiges findest, da das nun schon sehr individuell ist. Schau dir doch einfach mal das Entity-Object und die verschiedenen Dimension-Objecte an. Das Prinzip ist doch überall gleich. Line _l = new Line(); _l.Layer = "0"; _l.StartPoint = ... -- danach dem Zielbereich(Modell/Layout) hinzufügen, die Transaction abschließen und fertig ist das Ganze. Du musst aben nur die Entsprechenden Eigenschaften des neuen Objects setzen, die logischerweise bei Linien und Bemaßungen verschieden sind. Grüße! Holger ------------------ Holger Brischke CAD on demand GmbH Individuelle Lösungen von Heute auf Morgen. defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
coLami Mitglied
Beiträge: 52 Registriert: 26.07.2011 AutoCad Mechanical 2011, .net 3.5 C#
|
erstellt am: 26. Jan. 2012 16:22 <-- editieren / zitieren --> Unities abgeben:
Mit Boundingbox find ich nichts, aber über Entity.GeometricExtends finde ich MinPoint und MaxPoint, nur passen die nicht ganz, osndern sind etwa sbreiter als mein Block. Entity.CompoundObjectTransform.CoordinateSystem3d.Origin liefert zumindest einen passenden 'links oben' Wert, aber die Länge von meinem Block finde ich nirgends - und eine Subtraktion von GeometricsExtend.MaxPoint.X und Origin.X liefert kein brauchbares Ergebnis. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Brischke Moderator CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 26. Jan. 2012 18:36 <-- editieren / zitieren --> Unities abgeben: Nur für coLami
Zitat: Original erstellt von coLami: Mit Boundingbox find ich nichts, ...
Sorry, im VL heißt die Methode GetBoundingBox. Hatte ich verwechselt. Zitat: Original erstellt von coLami: aber über Entity.GeometricExtends finde ich MinPoint und MaxPoint, nur passen die nicht ganz, osndern sind etwa sbreiter als mein Block.
Ich vermute, dass du Attributdefinitionen in dem Block hast, Die GeometricExtends beziehen sich darauf. Das habe ich mal mit Tests nachvollziehen können. Es können auch die MText-Rahmen so groß sein, dass diese über die Geometrie hinausragen. Bei allen anderen Elementen arbeitet die Methode meiner Erfahrung nach korrekt. Zitat: Original erstellt von coLami: Entity.CompoundObjectTransform.CoordinateSystem3d.Origin liefert zumindest einen passenden 'links oben' Wert, aber die Länge von meinem Block finde ich nirgends - und eine Subtraktion von GeometricsExtend.MaxPoint.X und Origin.X liefert kein brauchbares Ergebnis.
Dann gibt es nur einen Weg, und den gehe ich jetzt bei Blöcken immer: Ich ermittle die GeomExts aus den Elementen (Transformiert augf die Blockreferenz) der Blockdefinition und lasse dabei die Attributdefinitionen und MTexte unberücksichtigt. Dann habe ich die korrekte Abmessung der Boundingbox. Vielleicht hilft's Grüße! Holger ------------------ Holger Brischke CAD on demand GmbH Individuelle Lösungen von Heute auf Morgen. defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|