Interfejs API dodawania bloku SolidWorks

Witam

Kiedy dodaję blok zawierający stany powierzchni lub tolerancję geometryczną, jeśli dodam go za pomocą API, blok mówi "Link uszkodzony", natomiast jeśli dodam go ręcznie, działa.

Jest to szczególnie blokujące.

Czy Ty też masz ten problem, czy wiesz, jak go naprawić?

 

Przykładowe makro do przetestowania:

 

Dim swApp jako SldWorks.SldWorks

Przyciemnij część jako SldWorks.ModelDoc2
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()
    Ustaw swApp = Application.SldWorks
    Ustaw część = swApp.ActiveDoc
   
    Dim myBlockDefinition As Obiekt
    Set myBlockDefinition = Part.SketchManager.MakeSketchBlockFromFile(Nothing, "CHEMIN_VERS_LE_BLOCK", False, 1, 0)
Koniec subwoofera

 

W załączonym pliku blok do przetestowania.

Na zdjęciach:


 

Dziękuję.


bloc_tolerance_trous_fil.sldblk

Cóż, ponieważ nie ma wielu odpowiedzi, ujawnię swoją.

To trochę rozwiązanie dla majsterkowiczów, ale nadal skuteczne.

 

Zamiast dodawać wykończenia powierzchni i standardowe tolerancje geometryczne, przerysowałem je ręcznie. W ten sposób koniec z zerwanymi więziami. A jeśli praca jest wykonywana w czysty sposób, różnica nie jest widoczna!