Makro do mocowania elementów zespołu i podpoziomów

Witam

jesteśmy zobowiązani do pracy na złożeniach wyodrębnionych z plików STEP lub IGES.

Domyślnie części, zespoły i podpoziomy są bezpłatne.

Czy znasz lub znasz szybki sposób na naprawienie wszystkich elementów głównego zespołu.

Dziękuję.

Davy

Witam

Spróbuj tego:

Opcja jawna
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swAssy As SldWorks.AssemblyDoc
Dim swModelDocExt As SldWorks.ModelDocExtension
Dim swComp As SldWorks.Component2
Dim swSelMgr As SldWorks.SelectionMgr
Dim errors As Long
Dim warnings As Long
Dim status As Boolean
Sub main()
    Ustaw swApp = Application.SldWorks
    Ustaw swModel = swApp.ActiveDoc
    Set swAssy = swModel
    Set swModelDocExt = swModel.Zestaw rozszerzeń
    swSelMgr = swModel.Menedżer wyboru
    
    ' Rozwiąż wszystkie błędy lekkich komponentów
    = swAssy.ResolveAllLightWeightComponents(True)
    Debug.Print ("Wszystkie lekkie komponenty rozwiązane (0 = Wszystkie komponenty rozwiązane)? " & błędy)
    
    ' Napraw stan wybranego komponentu
    = swModelDocExt.SelectByID2("Pad_1-1@key pad_1", "KOMPONENT", 0, 0, 0, Fałsz, 0, Nic, 0)
    swAssy.FixComponent
    status = swModelDocExt.SelectByID2("Pad_1-1@key pad_1", "KOMPONENT", 0, 0, 0, Fałsz, 0, Nic, 0)
    Ustaw swComp = swSelMgr.GetSelectedObjectsComponent3(1, -1)
    Debug.Print ("Wybrany komponent naprawiony?" " & swComp.IsFixed)
    
Koniec subwoofera

 

Źródła: http://help.solidworks.com/2015/english/api/sldworksapi/resolve_all_components_fix_a_component_example_vb.htm

Edycja: Załączam plik txt, ponieważ prezentacja jest automatycznie usuwana

 

 


macro_resoud_et_fixe_les_composants.txt
2 polubienia

Witam

Czy jest to możliwe w formie załączonego dokumentu, za pomocą kliknięcia prawym przyciskiem myszy i "naprawienia" wszystkich elementów!?


capture.png
1 polubienie

Dzięki remrem, spróbuję.

Problem w rysunku 6 polega na tym, że ta manipulacja nie pozwala nam naprawić podpoziomów. Ale i tak dziękuję!

Davy

1 polubienie

Remrem,

Nie mogę zaimplementować makra, które mi przysłałeś.

Czy masz jakieś dodatkowe informacje, które mógłbyś mi przekazać?

Dziękuję.

Witam

Wszystkie komponenty złożenia muszą zostać przeprowadzone, jak pokazano w tym makrze:

http://help.solidworks.com/2012/english/api/sldworksapi/traverse_assembly_at_component_level_example_vb.htm

Następnie napraw je wszystkie, jak wskazano w jednym z tych dwóch linków:

http://help.solidworks.com/2014/English/api/sldworksapi/Resolve_All_Components_Fix_A_Component_Example_VB.htm

http://help.solidworks.com/2016/English/api/sldworksapi/Temporarily_Fix_and_Group_Components_Example_VB.htm

 

2 polubienia

Teraz, szczerze mówiąc, jestem przytłoczony.

Nie mogę pogodzić przytoczonych przez Pana/Panią przykładów ze sprawą, którą się zajmuję.

 

Kolega znalazł działające makro, jednak jest ono zablokowane i nie mam hasła.

Najważniejsze, że to działa.

Dzielę się, na wypadek, gdyby inni mieli takie same potrzeby.

Dziękuję wszystkim za odpowiedzi.

@+ na forum.

Davy


fixer_ensembles_et_sous_ensembles.swp
3 polubienia

Witam

- 1. ogniwo umożliwia wyszczególnienie i pracę nad wszystkimi częściami zespołu jedna po drugiej (zespół trawersu). Byłby to pierwszy fragment kodu, który zostałby zaimplementowany w makrze: tworzy pętlę. Na pierwszy rzut oka należy używać tylko pierwszego subwoofera

- Drugi link łączy się z linkiem @remrem: zawiera polecenia do naprawy komponentu, nad którym pracujesz, oraz część "napraw wybrany komponent" do wstawienia w środku pętli (na poziomie debug.print)

- Trzeci link powinien być makrem wykonującym poprzednie operacje, ale w SW2016: Nie mogę znaleźć funkcji FixGroup w 2015

 

 

3 polubienia

Dziękuję za tę precyzję glaffont!

Zawsze dobrze jest wziąć.

Więc nie powinieneś był wybrać mojej odpowiedzi jako najlepszą! Ponieważ w rezultacie nie zrobiłem zbyt wiele.

Majstrowałem przy kodzie, aby działał. Ale odpowiedziałeś wcześniej.

Dziękujemy za umieszczenie makra.

Skorzystam z tego. :-)

2 polubienia

Nie mogłem umieścić mojej odpowiedzi zawierającej makro jako rozwiązania.

Więc twoja odpowiedź jest dla mnie najbliższa.

Zapraszamy do makr. Mimo to nadal byłbym ciekawy, czy będę mógł ją opublikować.

1 polubienie

Jako dobrą nagrodę, oto plik bez hasła.

Pozwoliło mi to dostrzec mój błąd.

:-)


fixer_ensembles_et_sous_ensembles.swp
1 polubienie

@remrem, dziękujemy!

Czy to twoje makro? Albo znalazłeś mdp...

Ważne jest, aby wiedzieć, że hasło makra nie jest zbyt skuteczną ochroną.

Możesz anulować ochronę za pomocą prostego czytnika szesnastkowego.

4 polubienia

Super! Dziękuję remrem!

Nie można go jednak pobrać.

Witaj @davy,

W Lynkoa występuje błąd, który oznacza, że po pobraniu załącznika odpowiedzi musisz ponownie wprowadzić rozszerzenie pliku zamiast ".htm", jak zaproponowano w oknie dialogowym. W Twoim przypadku musisz napisać ".swp" dla ostatniego pliku @remrem.

Są szanse, że problem z pobieraniem wynika z tego.

(również należy zauważyć, ale myślę, że wiesz, że pliki .swp nie uruchamiają się bezpośrednio z eksploratora, musisz przejść do Narzędzia/Makro/Uruchom)

1 polubienie

Nie mam żadnych problemów.

Używam Firefoksa i W7.

1 polubienie

Dziękuję za informację Benoit!