| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Auslesen des Tragwerkendunktes (1221 mal gelesen)
|
BastianBet Mitglied Konstrukteurin/Bauingenieurin
Beiträge: 30 Registriert: 03.09.2008 AutoCAD Architecture 2010
|
erstellt am: 10. Nov. 2011 15:14 <-- editieren / zitieren --> Unities abgeben:
Hallo, ist es möglich, den Endpunkt eines Tragwerks in einen Eigenschaftssatz aufzunehmen? In den Eigenschaften des Tragwerks wird der Endpunkt ja angezeigt, aber ich schaffe es einfach nicht, ihn irgendwie in den Eigenschaftssatz zu bekommen und zusammen mit dem Startpunkt in einer Bauteiltabelle ausgeben zu lassen... Habe in der Hilfe bereits etwas gefunden wonach sich ein Tragwerk wohl nur über Startpunkt und Richtung definiert..??? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tmoehlenhoff Moderator Gutzum, CAD-Therapeut und BIM-Priester ;-)
Beiträge: 2996 Registriert: 14.10.2002 AutoCAD, AutoCAD Architecture, Revit Architecture, Building Design und Honeymoon Suite und das ganze auch gerne mal auf einem Mac
|
erstellt am: 16. Nov. 2011 21:41 <-- editieren / zitieren --> Unities abgeben: Nur für BastianBet
Moin Bastian, ich habe es nicht in Version 2010 probiert, aber ich denke, dass es zwei Wege gibt. Entweder man berechnet aus Startpunkt, Länge und Richtung (also Winkel) den Endpunkt über trigonometrische Funktionen und Co selbst oder aber man erstellt einen Formel-Parameter, nutzt VBSCRIPT und das könnte dann für die X-Koordinate des Endpunktes wie folgt aussehen: Code:
on error resume next Set acadApp = GetObject(,"AutoCAD.Application") acadVerString = acadApp.ActiveDocument.GetVariable("ACADVER") Select Case acadVerString Case "17.1s (LMS Tech)" aecBaseVer = "AecX.AecBaseApplication.5.5" Case "17.2s (LMS Tech)" aecBaseVer = "AecX.AecBaseApplication.5.7" Case "18.0s (LMS Tech)" aecBaseVer = "AecX.AecBaseApplication.6.0" Case "18.1s (LMS Tech)" aecBaseVer = "AecX.AecBaseApplication.6.5" Case "18.2s (LMS Tech)" aecBaseVer = "AecX.AecBaseApplication.6.7" Case Else aecBaseVer = "Unknown" End Select If aecBaseVer = "Unknown" Then RESULT = "Unbekannte AutoCAD-Version" Else Set aecBase = acadApp.GetInterfaceObject(aecBaseVer) aecBase.Init acadApp Set Obj = acadApp.ActiveDocument.ObjectIDToObject([Objekt-ID]) Set utilObj = aecBase.ActiveDocument.Utility endPoint = utilObj.ConvertToVariantArray(Obj.EndPoint) RESULT = endPoint(0) End If
Objekt-ID muss zuvor als "automatische Quelle" angelegt worden sein und dann in der Formel aus dem unteren Bereich übernommen werden (ist dann grau hinterlegt).
DIe Y-Koordinate sieht dann genauso aus, nur dass dann endPoint(1) verwendet wird. sayonara Torsten ------------------ Tadle nicht den Fluss, wenn Du ins Wasser fällst. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Halla23 Mitglied Konstrukteur
Beiträge: 1 Registriert: 02.02.2010 Win 2007 64Bit AutoCAD Architecture 2010-2013 Revit Architecture+Structure 2010-2013 + weitere...
|
erstellt am: 26. Apr. 2012 15:34 <-- editieren / zitieren --> Unities abgeben: Nur für BastianBet
Hallo, ich muss den Beitrag nochmals rausholen. Ich brauche ebenfalls den Trägerendpunkt und das Script funktioniert super unter ACA2011+2012+2013. Nur leider nicht unter ACA2010 (Welches noch das Standardprogramm bei uns in der Firma ist): Sobald ich die Formel eingebe hängt sich Autocad auf. Wenn ich dann aber des Prozess "Aec32BitAppServer57.exe" beende läuft Autocad wieder aber dann wird das Script nicht mehr ausgeführt. Hat da jemand eine Idee wo dran das liegen könnte. Gruß Halla23 [Diese Nachricht wurde von Halla23 am 26. Apr. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|