| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | |  | Exklusives EDU-Programm für RTX PRO Blackwell, eine Pressemitteilung
|
Autor
|
Thema: AddAttribute Fehler (1044 mal gelesen)
|
Ralf Rehm Mitglied Dipl.-Ing. Stahlbau

 Beiträge: 57 Registriert: 16.12.2003
|
erstellt am: 30. Dez. 2003 08:42 <-- editieren / zitieren --> Unities abgeben:         
Habe mit folgendem Code mit VB eine automatisierte Blockerstellung geschrieben. Mein Problem: 1. Der Einfügepunkt des Attributes liegt entgegen dem Code irgendwo auf der Zeichnung (also nicht da, wo ich ihn eigentlich mit getpoint festgelegt habe) und 2. obwohl ich die Anweisung acAttributeModeInvisible gegeben habe ist das Attribut sichtbar. Was habe ich denn falsch gemacht????? Public insertionPnt As Variant Dim InsPoint(2) As Double Dim attributeObj As Object GetInsPoint = ThisDrawing.Utility.GetPoint(, "Block-Einfügepunkt wählen: ") For g = LBound(GetInsPoint) To UBound(GetInsPoint) InsPoint(g) = GetInsPoint(g) Next g insertionPnt = InsPoint Set attributeObj = nBlock.AddAttribute(1#, acAttributeModeInvisible, "Objektnummer", insertionPnt, "T_Objekt_NR", "")
Danke im voraus für jede Hilfe!!!
Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Karsten HST Mitglied Bauingenieur

 Beiträge: 54 Registriert: 22.04.2003
|
erstellt am: 30. Dez. 2003 09:26 <-- editieren / zitieren --> Unities abgeben:          Nur für Ralf Rehm
Ich nehme einmal an, daß der Block, dem Du das Attribut hinzufügen möchtest zum einen nicht an der Position 0,0 eingefügt ist und eventuell auch dessen Basispunkt nicht auf 0,0 liegt. Diese beiden Punkte mußt Du beachten, wenn Du das Attribut dem Block hinzufügst. Pnt = ThisDrawing.Utility.GetPoint(, "Einfügepunkt  InsPnt = BlkRef.InsertionPoint OrgPnt = BlkDef.Origin Pnt(0) = Pnt(0) + OrgPnt(0) - InsPnt(0) Pnt(1) = Pnt(1) + OrgPnt(1) - InsPnt(1) Ein anderer Punkt könnte sein, daß Du die Auswahl des Punktes nicht im WKS vornimmst und so "lokale" Koordinaten durch die Punktabfrage bekommst.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| |
Ralf Rehm Mitglied Dipl.-Ing. Stahlbau

 Beiträge: 57 Registriert: 16.12.2003 AutoCAD Architecture 2008 - 2011 AutoCAD 2002 - 2011 Revit 2010
|
erstellt am: 30. Dez. 2003 11:11 <-- editieren / zitieren --> Unities abgeben:         
Erst einmal vielen Dank für die prompte Hilfe. Das Problem stellt sich jedoch mittlerweile anders dar: Nach dem Einfügen des Blockes liegen die Attributwerte irgendwo auf der Zeichnung (also habe ich gedacht, der Einfügepunkt der Attribute ist falsch). Wenn ich aber den Block in den Ursprung setze, dann sehe ich die die Attributdefinitionen am eigentlichen Einfügepunkt (also da, wo sie sein sollten). Wieso sind die Attributwerte dann aber an der falschen Stelle. Füge ich dann den Block nochmal in die Zeichnung ein sind die Werte an der richtigen Stelle - ich versteh's einfach nicht!
Zitat: Original erstellt von Karsten HST: Ich nehme einmal an, daß der Block, dem Du das Attribut hinzufügen möchtest zum einen nicht an der Position 0,0 eingefügt ist und eventuell auch dessen Basispunkt nicht auf 0,0 liegt. Diese beiden Punkte mußt Du beachten, wenn Du das Attribut dem Block hinzufügst.Pnt = ThisDrawing.Utility.GetPoint(, "Einfügepunkt  InsPnt = BlkRef.InsertionPoint OrgPnt = BlkDef.Origin Pnt(0) = Pnt(0) + OrgPnt(0) - InsPnt(0) Pnt(1) = Pnt(1) + OrgPnt(1) - InsPnt(1) Ein anderer Punkt könnte sein, daß Du die Auswahl des Punktes nicht im WKS vornimmst und so "lokale" Koordinaten durch die Punktabfrage bekommst.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |