Hallo
Ich möchte ein Makro erstellen, um die Achsenlinien aus allen abgewickelten Ansichten in einem MEP und aus allen Registerkarten zu entfernen
Blechbauer finden, dass es ohne Achslinien besser lesbar ist
Ich habe einen Anfang mit diesen 2 Elementen gefunden, die gelöscht werden sollen
swSelCENTERMARKSYMS = 100 ' "CENTERMARKSYMS"
swSelCENTERLINES = 103 ' "MITTELLINIE"
und
https://www.lynkoa.com//forum/solidworks/macro-selectionner-toute-les-ligne-existante-sur-une-vue
aber ich weiß nicht, wie ich alles wieder in die richtige Reihenfolge bringen soll
Wenn jemand eine Idee hat
Vielen Dank
HILFE
wenn jemand weiß, wie man zumindest ein Stück Code programmiert
Oder wenn kein vollautomatisches Makro vorhanden ist, kann ich auch eine MEP-Ansicht auswählen und das Makro entfernt die Mittellinien aus den Löchern
Ein Beispiel für eine Zeichnung?
Was ist die Berechtigung, um eine DXF-Datei ohne Achsenlinie zu exportieren?
Dies ist nicht möglich, indem der Hintergrundplan oder der Kleidungsstandard des Abgeordneten geändert wird? Wenn ja, können Sie es vielleicht ohne viel Programmierung mit dem Integration (Visiativ-Tool (mycadtools)) tun, auf das Sie als Mycadservice-Abonnent Zugriff haben. Und dafür kann Ihnen die Hotline sogar weiterhelfen.
Andernfalls, wenn Sie programmieren müssen, müssen Sie dies für Ihr Makro tun:
Eine Schleife, die jedes Blatt 1 x 1 aktiviert
dass Sie auf jedem Blatt die 1. aktive Ansicht erhalten, dass Sie prüfen, ob der Konfigurationsname des referenzierten Teils tatsächlich Flat-Pattern ist.
Wenn ja, nehmen Sie die Änderung vor.
Grundsätzlich nicht einfach, wenn man keine Ahnung vom Programmieren hat und nicht ein paar Dinge, die man in wenigen Sekunden erkennen sieht.
Es sei denn, Sie haben einen Code, der nah genug ist.
1 „Gefällt mir“
Es geht darum, die Mittellinien der Bohrungen nur für abgewickelte Ansichten oder die der anderen Arten von Bohrungen zu entfernen, für die Solidworks standardmäßig die Mittellinien anzeigt, ich spreche nicht von den Biegemittellinien, ich möchte die Mittellinien der Bohrungen für die anderen Ansichtstypen automatisch beibehalten
Diese Linien müssen entfernt werden, bevor mit der Herstellung auf einer Laserschneidmaschine oder einer anderen Fertigung begonnen wird
Für die Schlaufe auf den Blättern:
https://help.solidworks.com/2021/English/api/sldworksapi/Get_Loaded_Sheets_Example_VB.htm
Hallo
Versuchen Sie Folgendes:
Option Explicit
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swDrawing As SldWorks.DrawingDoc
Dim vSheetName As Variant
Dim swView As SldWorks.View
Dim swCtrMark As SldWorks.CenterMark
Dim swCtrLine As SldWorks.Centerline
Dim swAnn As SldWorks.Annotation
Dim swSelMgr As SldWorks.SelectionMgr
Dim swSelData As SldWorks.SelectData
Dim status As Boolean
Dim bRet As Boolean
Dim i As Long
Dim SearchString As String
Dim SearchChar As String
Dim MyPos As Integer
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set swSelMgr = swModel.SelectionManager
Set swSelData = swSelMgr.CreateSelectData
Set swDrawing = swModel
SearchChar = "SM-FLAT-PATTERN"
vSheetName = swDrawing.GetSheetNames
For i = 0 To UBound(vSheetName)
bRet = swDrawing.ActivateSheet(vSheetName(i))
Set swView = swDrawing.GetFirstView
swModel.ClearSelection2 True
Do While Not swView Is Nothing
SearchString = swView.ReferencedConfiguration
MyPos = InStr(1, SearchString, SearchChar)
If MyPos <> 0 Then
Set swCtrMark = swView.GetFirstCenterMark
Do While Not swCtrMark Is Nothing
Set swAnn = swCtrMark.GetAnnotation
status = swAnn.Select3(True, swSelData)
Set swCtrMark = swCtrMark.GetNext
Loop
End If
Set swView = swView.GetNextView
Loop
swModel.EditDelete
Set swView = swDrawing.GetFirstView
swModel.ClearSelection2 True
Do While Not swView Is Nothing
SearchString = swView.ReferencedConfiguration
MyPos = InStr(1, SearchString, SearchChar)
If MyPos <> 0 Then
Set swCtrLine = swView.GetFirstCenterLine
Do While Not swCtrLine Is Nothing
Set swAnn = swCtrLine.GetAnnotation
status = swAnn.Select3(True, swSelData)
Set swCtrLine = swCtrLine.GetNext
Loop
End If
Set swView = swView.GetNextView
Loop
swModel.EditDelete
Next i
End Sub
Herzliche Grüße
1 „Gefällt mir“
Ein großes Dankeschön an d.roger, der die Herausforderung erneut annimmt, angesichts der Häufigkeit, mit der eine meiner Fragen dank Ihnen in diesem Forum beantwortet wurde, ziehe ich meinen Hut vor Ihnen für Ihre gut geschriebenen und prägnanten Makros
1 „Gefällt mir“