| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Autodesk AutoCAD: Crashkurs - Online, ein Seminar am 10.06.2025
|
Autor
|
Thema: Sweeplänge (870 / mal gelesen)
|
Dori2000 Mitglied Konstrukteurin
Beiträge: 81 Registriert: 23.03.2018 Windows 10, Inventor 2024, AutoCAD Mechanical 2024
|
erstellt am: 14. Feb. 2023 08:53 <-- editieren / zitieren --> Unities abgeben:
|
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 721 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 14. Feb. 2023 09:52 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
Wenn der Pfad eine Skizzierte Kontur ist (2d oder 3d), kann man das schon messen. Im IV2020 und vmtl. auch im IV2023. Messen Andere Auswählen -> Kurvenkontur Dass die Sweeplänge etwas anderes sein kann als die Länge des Pfades, ist ein anderes Problem. (Wenn der Pfad nicht im Zentrum des Profils liegt). Da gibt es Wege über die API. Dazu gibt es ein Beispiel in der Hilfe True length of sweep feature API Sample [Edit: typo] ------------------ Gruß KraBBy [Diese Nachricht wurde von KraBBy am 14. Feb. 2023 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nightsta1k3r Ehrenmitglied V.I.P. h.c. plaudern
Beiträge: 11279 Registriert: 25.02.2004 Hier könnte ihre Werbung stehen!
|
erstellt am: 14. Feb. 2023 12:57 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
Zitat: Original erstellt von Dori2000: ist es in IV 2023 immer noch nicht möglich, über Messen des Pfades die Länge eines Sweeps zu ermitteln??
Das wird direkt kaum mehr kommen, nachdem das Konturmessen mit dem neuen Messen-Befehl in 2019/20 verschwand. seither ist das messen der Skizzenlinie der Workaround. ------------------
------------------ Es reicht nicht, sich Blödsinn nur auszudenken, wenn man ihn nicht auch bis zur letzten Konsequenz durchzieht! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dori2000 Mitglied Konstrukteurin
Beiträge: 81 Registriert: 23.03.2018 Windows 10, Inventor 2024, AutoCAD Mechanical 2024
|
erstellt am: 14. Feb. 2023 14:43 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ja, zum messen der Skizzenlinie bin ich dann auch gekommen, meine Pfadlinie besteht aus mehreren einzelnen Skizzen. Da darf ich dann schön zusammenrechnen.
------------------ Viele Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nightsta1k3r Ehrenmitglied V.I.P. h.c. plaudern
Beiträge: 11279 Registriert: 25.02.2004 Hier könnte ihre Werbung stehen!
|
erstellt am: 14. Feb. 2023 14:55 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
Zitat: Original erstellt von Dori2000: Da darf ich dann schön zusammenrechnen
dass das im Dialog geht, weißt du aber schon? ------------------
------------------ Es reicht nicht, sich Blödsinn nur auszudenken, wenn man ihn nicht auch bis zur letzten Konsequenz durchzieht! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dori2000 Mitglied Konstrukteurin
Beiträge: 81 Registriert: 23.03.2018 Windows 10, Inventor 2024, AutoCAD Mechanical 2024
|
erstellt am: 14. Feb. 2023 15:36 <-- editieren / zitieren --> Unities abgeben:
nein, weiß ich leider nicht. Die Hilfeseite von Autodesk bezog sich immer auf ältere Versionen von Inventor. Da war das Messen anders. Wie ich da genau in IV2023 vorgehen kann, habe ich nicht gefunden. ------------------ Viele Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nightsta1k3r Ehrenmitglied V.I.P. h.c. plaudern
Beiträge: 11279 Registriert: 25.02.2004 Hier könnte ihre Werbung stehen!
|
erstellt am: 14. Feb. 2023 16:37 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2630 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 15. Feb. 2023 09:28 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
Moin @KraBBy Vorsicht, das Codebeispiel rechnet unter bestimmten Umständen falsch. Wenn in der Skizze zwei Linien mit Abrunden-Befehl einen Radius bekommen haben, liefert der Code immer noch die Länge der zwei ursprünglichen Linien. Das kann einen signifikant großen Fehler ergeben.
------------------ MfG Ralf RKW Solutions GmbH www.RKW-Solutions.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dori2000 Mitglied Konstrukteurin
Beiträge: 81 Registriert: 23.03.2018 Windows 10, Inventor 2024, AutoCAD Mechanical 2024
|
erstellt am: 15. Feb. 2023 09:33 <-- editieren / zitieren --> Unities abgeben:
|
Wyoming Ehrenmitglied Konstrukteur
Beiträge: 1874 Registriert: 02.02.2009
|
erstellt am: 15. Feb. 2023 10:02 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
|
Roland Schröder Moderator Dr.-Ing. Maschinenbau, Entwicklung & Konstruktion von Spezialmaschinen
Beiträge: 13438 Registriert: 02.04.2004 IV 2024
|
erstellt am: 15. Feb. 2023 13:19 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
Moin! Ich habe einen mit Hilfe des Forums erstellten VBA-Code in Benutzung, der so was macht. Ob der auch aus verschiedenen Skizzen stammende Stücke zusammenfasst, weiß ich nicht. Außerdem nimmt der, so weit ich weiß, immer nur das erste Sweeping, das in einem ipt zu finden ist. Für mich reichte das, weil ich den Code nur für die Ermittlung der Länge von Kabeln benötige, für die ich jeweils (wenn der Aufwand gerechtfertigt ist) ein eigenes ipt erstelle. Code: Sub SweepLength() 'active part document referenzeiren und SweepFeature suchen Dim oDoc As PartDocument Set oDoc = ThisApplication.ActiveDocument Dim oDef As PartComponentDefinition Set oDef = oDoc.ComponentDefinition Dim oSweep As SweepFeature If oDef.Features.SweepFeatures.Count > 0 Then Set oSweep = oDef.Features.SweepFeatures.Item(1) Else MsgBox "Aktives Dokument enthält kein Sweep-Feature!", vbOKOnly, "Abgebrochen" Exit Sub End If ' Centroid des Sweeps, Kurvenstücke summieren: Dim oProfileOrigin As Point2d Set oProfileOrigin = oSweep.Profile.RegionProperties.Centroid Dim oProfileOrigin3D As Point Set oProfileOrigin3D = oSweep.Profile.Parent.SketchToModelSpace(oProfileOrigin) Dim oCurves As ObjectsEnumerator On Error GoTo line Set oCurves = oDef.Features.SweepFeatures.GetTruePath(oSweep.Path, oProfileOrigin3D) ' das schlägt bei 3d-Skizzen fehl!?! On Error GoTo 0 Dim TotalLength As Double TotalLength = 0 Dim oCurve As Object For Each oCurve In oCurves Dim oCurveEval As CurveEvaluator Set oCurveEval = oCurve.Evaluator Dim MinParam As Double Dim MaxParam As Double Dim Length As Double Call oCurveEval.GetParamExtents(MinParam, MaxParam) Call oCurveEval.GetLengthAtParam(MinParam, MaxParam, Length) TotalLength = TotalLength + Length Next line: On Error GoTo 0 'Länge aus dem Sweep-Feature direkt abfragen Dim TotalLength2 As Double TotalLength2 = ThisApplication.MeasureTools.GetLoopLength(oSweep.Path) 'Länge aus Volumen und Sweep-Profil-Fläche berechnen Dim dFl As Double Dim dVolume As Double Dim dLen As Double dVolume = oDoc.ComponentDefinition.MassProperties.Volume dFl = oSweep.Profile.RegionProperties.Area If Not (dFl = 0) Then dLen = Round(dVolume / dFl * 1000) / 100 Else: MsgBox "Fehler! Fläche dFl = 0" End If ' iProperty "Länge" suchen, nötigenfalls erzeugen, und Wert eintragen: Dim invCustomPropertySet As PropertySet Set invCustomPropertySet = oDoc.PropertySets.Item("Inventor User Defined Properties") On Error Resume Next Dim oProp As Property Set oProp = invCustomPropertySet.Item("Länge") If Err.Number <> 0 Then Call invCustomPropertySet.Add(dLen, "Länge") Else oProp.Value = dLen End If On Error GoTo 0 ' Display total Sweep length Dim sMsg As String sMsg = "Länge aus Feature: " & Round(TotalLength2 * 1000) / 100 sMsg = sMsg & vbCrLf & "Länge aus Summation: " & Round(TotalLength * 1000) / 100 sMsg = sMsg & vbCrLf & "Länge aus Vol/Area: " & dLen & "-> iProp" MsgBox sMsg End Sub
------------------ Roland www.Das-Entwicklungsbuero.de It's not the hammer - it's the way you hit! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 721 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 15. Feb. 2023 14:58 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
|
KraBBy Mitglied Maschinenbau-Ingenieur
Beiträge: 721 Registriert: 19.09.2007 Inventor Professional 2020 WinX
|
erstellt am: 15. Feb. 2023 15:10 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
Zitat: Original erstellt von rkauskh: @KraBBy Vorsicht, das Codebeispiel rechnet unter bestimmten Umständen falsch. Wenn in der Skizze zwei Linien mit Abrunden-Befehl einen Radius bekommen haben, liefert der Code immer noch die Länge der zwei ursprünglichen Linien. Das kann einen signifikant großen Fehler ergeben.
Konnte ich in meinem einfachen Test nicht bestätigen. Es gibt aber ein Problem, wenn das Profil NICHT am Ende des Pfades sitzt. Dann wird ein "überstehendes" Stück nicht berücksichtigt. ------------------ Gruß KraBBy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Roland Schröder Moderator Dr.-Ing. Maschinenbau, Entwicklung & Konstruktion von Spezialmaschinen
Beiträge: 13438 Registriert: 02.04.2004 IV 2024
|
erstellt am: 15. Feb. 2023 16:55 <-- editieren / zitieren --> Unities abgeben: Nur für Dori2000
Zitat: Original erstellt von KraBBy: ...zwei Linien mit Abrunden-Befehl... ...immer noch die Länge der zwei ursprünglichen Linien... ... in meinem einfachen Test nicht bestätigen.
Diese Unstimmigkeit könnte daher rühren, dass Inventor gerade Linien in Projektionen nur durch ihre Endpunkte repräsentiert. Es ist z. B. möglich, in einer per abgeleitete Komponente (AK) importierten 3D-Skizze* (und das ist de facto eine Projektion) mit im Original eckigen Anschlüssen in der AK Rundungen anzubrigen, die dann so dargestellt und beim Sweeping auch verwendet werden, dass die geraden Stücke am tangentialen Anschluss zur Rundung enden. Die vormaligen Eckpunkte bleiben dabei in der AK bestehen, was zeigt, dass die Definition der Skizze weiterhin über diese Punkte erfolgt (muss ja auch so sein, denn aus der Quelle können nur diese Eckpunkte kommen). Ob jetzt solche Rundungen gar nicht erkannt werden oder ob Inventor lediglich auf die Definition über die Eckpunkte zugreift, kann nur mit näherer Kenntnis von Euren beiden Versuchen herausgefunden werden. (*Aufgefallen ist mir das bei abgeleiteten 3D-Skizzen. Wie es bei 2D-Skizzen ist, habe ich noch nicht probiert.) Ich habe im Übrigen bei einem jüngeren Projekt die oben wiedergegebene Funktion nicht mehr benutzt, weil das Ergebnis nur als "tote" Zahl verfügbar ist bzw. nach Änderungen der zentralen Steuerdatei für jedes einzelne Kabel extra aktualisiert werden müsste. Stattdessen benutze ich inzwischen lieber das als stets aktuelles iProperty in der Stückliste verfügbare Volumen und verrechne das mit der bei Konstruktionsänderungen meist weniger veränderlichen Querschnittsfläche. ------------------ Roland www.Das-Entwicklungsbuero.de It's not the hammer - it's the way you hit! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |