| | |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | | |  | 2D- und 3D-Bauvisionen in der Revit Weiterbildung mit IHK-Zertifizierung , ein Kurs (bis zu 100% förderbar mit Bildungsgutschein)
|
|
Autor
|
Thema: markieren in Zeichnung anders darstellen (668 / mal gelesen)
|
TLipo Mitglied
 
 Beiträge: 103 Registriert: 11.05.2022 Inventor 2026
|
erstellt am: 03. Okt. 2024 15:59 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ein Frage fürs Wochenende  Ich hab ein Bauteil, wo ich die Markier-Funktion genutzt hab (weil die benutzte Skizze nur geprägt werden soll). In der Zeichnung ist das jetzt eher unübersichtlich. Also wollte ich mit Rechtsklick auf Markieren -> Eigenschaften die Darstellung unabhängig vom Layer haben - gepunktet oder so. Ich klick ok und es passiert keine Änderung... Was kann ich machen um "Markieren" in der Zeichnung anders darzustellen? Andere Bearbeitungen kann ich in der Zeichung anders darstellen, markieren nicht Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik, Master Eng. IT-Security & Forensic
       

 Beiträge: 3010 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 04. Okt. 2024 00:53 <-- editieren / zitieren --> Unities abgeben:          Nur für TLipo
Moin Sieht aus als hätte Autodesk da wieder ein kleines Stück Implementierung vergessen. Würde es reichen, wenn die Linien auf einen anderen Layer verschoben werden? Dem kann man nach Belieben Linientyp, -stärke, -farbe verpassen und einfach unsichtbar schalten, wenn er stört. Aktuell wird ein lokaler Layer neu angelegt. VBA-Code:
Code:
Option Explicit Public Sub MoveMarksToLayer() Dim oApp As Inventor.Application Set oApp = ThisApplication If Not oApp.ActiveDocumentType = kDrawingDocumentObject Then Call MsgBox("Die Funktion ist nur in Zeichnungen verfügbar.", vbExclamation, "MoveMarksToLayer") Exit Sub End If
Dim oDrawDoc As DrawingDocument Set oDrawDoc = oApp.ActiveDocument Dim oSheet As Sheet Set oSheet = oDrawDoc.ActiveSheet Dim oView As DrawingView Set oView = oApp.CommandManager.Pick(kDrawingViewFilter, "Ansicht wählen... (ESC zum Abbrechen") If oView Is Nothing Then Exit Sub Dim oRefDoc As PartDocument Set oRefDoc = oView.ReferencedDocumentDescriptor.ReferencedDocument Dim oMarkFeature As MarkFeature For Each oMarkFeature In oRefDoc.ComponentDefinition.Features.MarkFeatures Dim oEdges As Edges Set oEdges = oMarkFeature.ResultEdges() Dim oLayer As Layer Set oLayer = GetLayer(oDrawDoc, "MarkFeatures") Dim oEdge As Edge For Each oEdge In oEdges Dim oDrawCurves As DrawingCurvesEnumerator Set oDrawCurves = oView.DrawingCurves(oEdge) Dim i As Integer Dim oDrawCurveSeg As DrawingCurveSegment For i = 1 To oDrawCurves.Count For Each oDrawCurveSeg In oDrawCurves(i).Segments oDrawCurveSeg.Layer = oLayer Next Next Next Next End Sub Private Function GetLayer(ByVal oDrawDoc As DrawingDocument, ByVal sLayerName As String) As Layer Dim oLayer As Layer For Each oLayer In oDrawDoc.StylesManager.Layers If oLayer.Name = "Marks" Then Set GetLayer = oLayer Exit For End If Next If oLayer Is Nothing Then Set GetLayer = CreateLayer(oDrawDoc, sLayerName) End Function Private Function CreateLayer(ByVal oDrawDoc As DrawingDocument, ByVal sLayerName As String) As Layer Dim oLayer As Layer Set oLayer = oDrawDoc.StylesManager.Layers.Item(1).Copy(sLayerName) oLayer.LineType = kDottedLineType oLayer.LineWeight = 0.05 oLayer.Color = ThisApplication.TransientObjects.CreateColor(0, 0, 0) oLayer.ScaleByLineWeight = True Set CreateLayer = oLayer End Function
------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TLipo Mitglied
 
 Beiträge: 103 Registriert: 11.05.2022 Inventor 2026
|
erstellt am: 07. Okt. 2024 08:20 <-- editieren / zitieren --> Unities abgeben:         
|

| |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik, Master Eng. IT-Security & Forensic
       

 Beiträge: 3010 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 07. Okt. 2024 10:50 <-- editieren / zitieren --> Unities abgeben:          Nur für TLipo
Moin Nein, es liegt nicht an dir. Im 2025er ist es ebenfalls noch so. Hat wohl noch niemand gestört bisher. Den Linientyp kann man ebenso wie Farbe und Linienstärke frei einstellen. Wenn man nicht im Code rumfrickeln will, legt man den Layer einfach vorher so an wie es gefällt. Das Programm verwendet ihn dann einfach. ------------------ MfG Ralf Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |