| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | |  | CIDEON Whitepaper: Collaboration mit optimiertem Daten- und Projektmanagement, ein Whitepaper
|
Autor
|
Thema: iLogic Code für den Befehl Gehe zu gefaltetem Bauteil (140 / mal gelesen)
|
Jonas Blaser Mitglied

 Beiträge: 13 Registriert: 17.12.2024 Inventor 2025
|
erstellt am: 16. Jan. 2025 09:44 <-- editieren / zitieren --> Unities abgeben:         
Hallo Zusammen Ich habe mir einen kleinen iLogic Code geschrieben, der eine Abwicklung erstellt und die Grössenwerte weitergibt. Das funktioniert auch alles wunderbar. Nun möchte ich, dass am Ende der Regel wieder in die gefaltete Ansicht gewechselt wird. Ich bekomme es irgendwie nicht hin. Hier der Code: On Error Resume Next Dim oDoc As PartDocument oDoc = ThisApplication.ActiveDocument Dim MT_Blechgroesse As SheetMetalComponentDefinition MT_Blechgroesse = oDoc.ComponentDefinition MT_Blechgroesse.FlatPattern.Delete MT_Blechgroesse.Unfold MT_Blech = ThisApplication.ActiveDocument.ComponentDefinition X= 10*( MT_Blech.RangeBox.MaxPoint.X - MT_Blech.RangeBox.MinPoint.X) Y= 10*( MT_Blech.RangeBox.MaxPoint.Y - MT_Blech.RangeBox.MinPoint.Y) Z= 10*( MT_Blech.RangeBox.MaxPoint.Z - MT_Blech.RangeBox.MinPoint.Z) Parameter.Quiet = True DICKE = MinOfMany(X, Y, Z) LAENGE = MaxOfMany(X, Y, Z) If X < LAENGE Then BREITE = X End If If Y < LAENGE Then BREITE = Y End If If Z < LAENGE Then BREITE = Y End If iProperties.Value("Custom", "G_L") = Round(LAENGE, 1) iProperties.Value("Custom", "Breite") = Round(BREITE, 1) iProperties.Value("Custom", "Dicke") = Round(DICKE, 1) RuleParametersOutput() iLogicVb.UpdateWhenDone = True oDoc = ThisApplication.ActiveDocument MT_Blechgroesse = oDoc.ComponentDefinition InventorVb.DocumentUpdate() ThisDoc.Save Das ist für die Profis unter euch sicher ein Amateur Code aber er funktioniert 
Vielen Dank für euere Hilfe Gruss Jonas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
      

 Beiträge: 2711 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 16. Jan. 2025 11:06 <-- editieren / zitieren --> Unities abgeben:          Nur für Jonas Blaser
Moin Stimmt, der Code verursacht leichtes Kopfweh. Was du suchst heißt:
Code: MT_Blechgroesse.FlatPattern.ExitEdit
Alternativvorschlag:
Code:
option explicit on If Not ThisDoc.Document.DocumentType = DocumentTypeEnum.kPartDocumentObject Then MsgBox("Funktion nur in Blechteilen verfügbar.",MsgBoxStyle.Exclamation,"iLogic Blechgroesse") Exit Sub End IfDim oDoc As PartDocument = ThisDoc.Document If Not oDoc.ComponentDefinition.Type = ObjectTypeEnum.kSheetMetalComponentDefinitionObject Then MsgBox("Funktion nur in Blechteilen verfügbar.",msgboxstyle.Exclamation,"iLogic Blechgroesse") Exit Sub End If Dim MT_Blechgroesse As SheetMetalComponentDefinition = oDoc.ComponentDefinition If MT_Blechgroesse.HasFlatPattern = True Then MT_Blechgroesse.FlatPattern.Delete MT_Blechgroesse.Unfold End If Dim oUOM As UnitsOfMeasure = oDoc.UnitsOfMeasure Dim dLength As Double = SheetMetal.FlatExtentsLength Dim dWidth As Double = SheetMetal.FlatExtentsWidth Dim dThick As Double = oUOM.ConvertUnits(MT_Blechgroesse.Thickness.Value, UnitsTypeEnum.kDatabaseLengthUnits,"mm") Dim dTemp As Double If dLength < dWidth Then dTemp = dLength dLength = dWidth dWidth = dTemp End If iProperties.Value("Custom", "G_L") = Round(dLength, 1) iProperties.Value("Custom", "Breite") = Round(dWidth, 1) iProperties.Value("Custom", "Dicke") = Round(dThick, 1) MT_Blechgroesse.FlatPattern.ExitEdit ThisDoc.Save
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Jonas Blaser Mitglied

 Beiträge: 13 Registriert: 17.12.2024 Inventor 2025
|
erstellt am: 16. Jan. 2025 11:17 <-- editieren / zitieren --> Unities abgeben:         
Vielen Dank. Das funktioniert. Zitat: Original erstellt von rkauskh: MoinStimmt, der Code verursacht leichtes Kopfweh. Was du suchst heißt:
Code: MT_Blechgroesse.FlatPattern.ExitEdit
Alternativvorschlag:
Code:
option explicit on If Not ThisDoc.Document.DocumentType = DocumentTypeEnum.kPartDocumentObject Then MsgBox("Funktion nur in Blechteilen verfügbar.",MsgBoxStyle.Exclamation,"iLogic Blechgroesse") Exit Sub End IfDim oDoc As PartDocument = ThisDoc.Document If Not oDoc.ComponentDefinition.Type = ObjectTypeEnum.kSheetMetalComponentDefinitionObject Then MsgBox("Funktion nur in Blechteilen verfügbar.",msgboxstyle.Exclamation,"iLogic Blechgroesse") Exit Sub End If Dim MT_Blechgroesse As SheetMetalComponentDefinition = oDoc.ComponentDefinition If MT_Blechgroesse.HasFlatPattern = True Then MT_Blechgroesse.FlatPattern.Delete MT_Blechgroesse.Unfold End If Dim oUOM As UnitsOfMeasure = oDoc.UnitsOfMeasure Dim dLength As Double = SheetMetal.FlatExtentsLength Dim dWidth As Double = SheetMetal.FlatExtentsWidth Dim dThick As Double = oUOM.ConvertUnits(MT_Blechgroesse.Thickness.Value, UnitsTypeEnum.kDatabaseLengthUnits,"mm") Dim dTemp As Double If dLength < dWidth Then dTemp = dLength dLength = dWidth dWidth = dTemp End If iProperties.Value("Custom", "G_L") = Round(dLength, 1) iProperties.Value("Custom", "Breite") = Round(dWidth, 1) iProperties.Value("Custom", "Dicke") = Round(dThick, 1) MT_Blechgroesse.FlatPattern.ExitEdit ThisDoc.Save
Den Code werde ich testen wenn wir mal Zeit haben. Der ist bei uns in allen Vorlagen etc... da brauche ich etwas Zeit wenn ich es richtig machen will.
Gruss Jonas
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
nightsta1k3r Ehrenmitglied V.I.P. h.c. retired ...

 Beiträge: 11307 Registriert: 25.02.2004 Hier könnte ihre Werbung stehen!
|
erstellt am: 16. Jan. 2025 13:47 <-- editieren / zitieren --> Unities abgeben:          Nur für Jonas Blaser
was Grundsätzliches: Funktion, Makros, besondere Stile, etc. nie in der Vorlage, sondern immer extern bereitstellen. Erleichtert Pflege und Wartung und macht die Dateien kleiner. ------------------
 ------------------ 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 |
Jonas Blaser Mitglied

 Beiträge: 13 Registriert: 17.12.2024 Inventor 2025
|
erstellt am: 16. Jan. 2025 13:51 <-- editieren / zitieren --> Unities abgeben:         
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
      

 Beiträge: 2711 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 16. Jan. 2025 14:59 <-- editieren / zitieren --> Unities abgeben:          Nur für Jonas Blaser
Moin Nö, eigentlich man kann iLogicregeln auch als externe Regel definieren, auf einem zentralen Netzlaufwerk ablegen und so für alle Rechner gleich zugänglich machen. Ausgelöst werden die dann z.B. beim Speichern. Wenn man will, kann man noch eine Regel dazwischen schalten. So wird z.B. beim Speichern, egal welcher Dokumententyp gespeichert wird, die iLogic_OnSave Regel ausgeführt. Die ist auch eine externe Regel und in der steht drin welche Regel(n) beim aktuellen Dokumententyp ausgeführt werden sollen. Damit spart man sich, falls es mal eine neue zusätzliche Regel z.B. für Bauteile gibt, die auf jedem Rechner einzeln wieder eintragen zu müssen. Einfach Zeile in die iLogic_OnSave ergänzen, speichern und sofort für alle wirksam. Beim Entfernen genauso. Ebenso kann man den Aufruf einer Regel so mal eben zentral auskommentieren und somit temporär stillegen. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |