Uproszczony montaż makr bez użycia

Czy nie byłaby to opcja "defeature", która upraszcza geometrię? (Defeature - 2022 - Pomoc SOLIDWORKS)

1 polubienie

@mdelbecq, tak Deafeature pozwala uprościć złożenie, tworząc uproszczoną kopię w jednym kawałku.

Tutaj celem jest utrzymanie tego samego zespołu, z lżejszą konfiguracją bez.

Celem jest tworzenie układów z dużą ilością maszyn, a dzięki tej konfiguracji nieco rozjaśnienie montażu jest niewielkie.

Deafeature został przetestowany i działa, ale uzyskanie czegoś poprawnego zajmuje noc lub dłużej, w porównaniu z kilkoma maszynami, staje się to niemożliwe.

Stąd popyt na makro.

1 polubienie

Witam;

Dlaczego nie przejrzysz "Inteligentnych list odtwarzania"?
-> Zaawansowany wybór komponentów / Ustaw kryteria wyszukiwania....
https://help.solidworks.com/2021/french/SolidWorks/sldworks/t_utilities_running_power_select.htm


Z filtrem ISfastener = 1
To prostsze, prawda?
Zwłaszcza, że możesz połączyć kilka filtrów, odwrócić je lub anulować. (I uratuj ich też...)

Pozdrowienia

3 polubienia

Witaj drogi @Maclane

Oznacza to, że pochodzą ze skrzynki narzędziowej.

Przez większość czasu pobieram (często w kroku przy okazji) i mam więcej niż wątpliwości, czy SW rozpoznaje je jako podkładkowe lub.

Jak zadeklarować ten typ części, aby były identyfikowalne przez SW jako i wkręty    ;-)

Podejrzewam, że @sbadenis chyba nie mieć tego typu pytań ;-) ;)

Pozdrowienia

2 polubienia

Twoje rozwiązanie @Maclane  działa bardzo dobrze, gdy wszystkie znajdują się w zespole głowicy.

Problem polega na tym, że mam w wielu podzespołach i muszę trzymać te w domyślnej konfiguracji, aby kolejność () była przełączana na automatyczną podczas uruchamiania.

Jedynym sposobem jest zrobienie tego cholernego makra.

Po dla makra można rozważyć rozwiązanie filtrujące.

1 polubienie

Witam

Rozwiązanie Maclane'a jest interesujące.

Ja używam podobnego metoidu:
-Tworzę konfigurację "Light"
-Używam "S", następnie wybieram przybornik, przytrzymuję "Ctrl" + kliknij prawym przyciskiem myszy -> Usuń

Daje mi to 2 konfiguracje, z których jedna jest bez...

Klasa A+

1 polubienie

@Zozo_mp: część nie musi pochodzić z przybornika. Musi on tylko zawierać właściwość ISfastener

Skonfigurowałem to, kiedy tworzyliśmy naszą bazę danych w 2005 roku (zupełnie inaczej niż Toolbox) i działa idealnie.

Dziękuję @Maclane, którzy pozwolili mi odkryć (lub odkryć na nowo) to narzędzie do selekcji, które jest w sumie bardzo potężne.

3 polubienia

Dziękuję @froussel zamierzam przyjrzeć się temu uważnie, czuję, że zaoszczędzi mi to czasu dzięki nowym funkcjom montażu od SW2020.

Pozdrowienia

Zozo_mp : 2015 dla tej funkcji "Nowy" (Solidworks nie komunikuje się zbyt dobrze o swoich nowych funkcjach... przydatne)
Jeśli chodzi o okropny ToolBox (fuj), nigdy go nie używam (z wyjątkiem tworzenia otworów/kranów/świateł... może być używany z kreatorem wiercenia).
Utworzyłem własne biblioteki niestandardowe (z właściwością IsFastener ustawioną na 0 lub 1).


-> FYI: ta właściwość (IsFastener) jest używana do rysowania  przekrojów lub do wykrywania kolizji (opcja: Wyklucz).
sbadenis : Użycie makr wydaje się rzeczywiście nieuniknione do stworzenia każdej konfiguracji "Lite" wszystkich podzespołów...
(Funkcja VBA to: "PowerSelec" dla inteligentnego wyboru, ale na razie nie wiem więcej -przepraszam-

Pomoc Solidworks (API)- > https://help.solidworks.com/...Interop.gtswutilities.IUtilities~PowerSelect.html


Pozdrowienia.

4 polubienia

Cześć wszystkim,
Zrobiłem makro, które tworzy konfigurację bez dla zespołu i jego podzespołów.

Aby to zadziałało, konieczne jest użycie interfejsów API Menedżera dokumentów. W szczególności do odczytu niewidocznej właściwości "IsToolboxStandard" , która pozwala określić, czy część jest śrubą. Licencja jest wymagana przy pierwszym uruchomieniu. Aby uzyskać tę licencję, należy złożyć wniosek za pośrednictwem Portalu klienta SolidWorks, postępując zgodnie z poniższymi procedurami :

Aby zażądać klucza licencyjnego API Menedżera dokumentów SOLIDWORKS, należy:

  1. Zaloguj się do portalu klienta SOLIDWORKS.
  2. Kliknij opcję Obsługa interfejsu API w sekcji Moja pomoc techniczna
  3. Kliknij opcję Document Manager Key Request (Żądanie klucza Menedżera dokumentów).
  4. Postępuj zgodnie z instrukcjami online, aby poprosić o klucz licencyjny.

Klucz licencyjny API Menedżera dokumentów SOLIDWORKS jest wysyłany do użytkownika pocztą elektroniczną po zatwierdzeniu żądania.  

 

Działa ze składnikami Toolbox i bibliotekami niestandardowymi, których komponenty mają właściwość "IsToolboxStandard".

Właściwość tę można łatwo dodać za pomocą narzędzia przeznaczonego do tego celu: "sldsetdocprop.exe" znajdującego się w folderze: "C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\Toolbox\data utilities"

 

Zapraszam do przetestowania makra na zestawach testowych i przekazania mi swojej opinii.

Miłego dnia.


suppression_visserie.zip
2 polubienia

Złożono kluczową prośbę, wszystko, co musisz zrobić, to poczekać na wiadomość e-mail.

Z drugiej strony tak naprawdę nie znam zasady, aby uruchomić projekt vb w tej formie (przez Visual Studio)

Dla makra w vba nie martw się, zaczynam wiedzieć.

Ale w tej formie przyznaję, że zainstalowałem Visual Studio 1 lub 2 lata temu, nigdy nie poświęcając zbyt wiele czasu na zagłębienie się w temat.

Aby otworzyć projekt, nie martw się, ale jak uruchomić program? Myślę, że będę potrzebował trochę dodatkowej pomocy @remrem  jeśli nie masz nic przeciwko.

A jeśli dodatkowo masz stronę pomocy, byłoby świetnie.

W przeciwnym razie kod wydaje mi się wcale nie zły po szybkim przeczytaniu, poczekaj tylko na ten słynny kod!

Przycisk makra wypełnia się tak jak w przypadku pliku w formacie .swb, z wyjątkiem tego, że wybiera się format dll:

Następnie klikasz przeglądaj i zmieniasz typ, wybierając "SW VSTA Macros (*.dll)" i wybierasz plik "Suppression_visserie.dll"

3 polubienia

Witam
Czy to działa?

1 polubienie

Dziękuję @remrem, właśnie przetestowałem po kilku problemach, aby zdobyć słynny klucz.

E-mail miał trafić do spamu, musiałem to zrobić na mojej osobistej skrzynce pocztowej i poczekać kilka dni...

Z wyjątkiem operacji, teraz, gdy udało mi się przetestować! Jest to bardzo bliskie mojej potrzebie, dziękuję za tę bardzo dobrą bazę.

Konfiguracje są dobrze utworzone dla wszystkich zestawów.

Z drugiej strony w tych konfiguracjach nie są usuwane (nawet jeśli opcja ISFastener jest ustawiona na 1)

Chciałbym również, aby konfiguracja była tworzona tylko wtedy, gdy zestaw zawiera z ISFastener=1, a właściwość "Category" to "Assembly".

W podzespołach aktywna konfiguracja pozostaje domyślna, a nie opcja Łączniki włączone w konfiguracji łączników włącz zespół główny.

Spróbowałbym kilku modyfikacji w kodzie, który jest bardzo dobrą bazą, aby ulepszyć go na swój własny sposób, ale zawsze programowałem za pomocą makr VBA (bez przechodzenia przez dll) i nie wiem, jak debugować, jeśli to możliwe, za pomocą Visual Studio, aby zobaczyć, gdzie utknął i zobaczyć zmiany na żywo, jeśli to możliwe.

Czy musisz skompilować projekt, aby później go przetestować?

Czy możemy wykonać krok po kroku i zobaczyć, gdzie utknie?

 

 

Uważaj, to pomyłka.
Właściwość "IsFastener" jest używana tylko do ukrywania łączników w instalacjach.
Makro nie korzysta z tej właściwości, ale jak wskazałem w moim poprzednim poście:

Działa ze składnikami Toolbox i bibliotekami niestandardowymi, których komponenty mają właściwość "IsToolboxStandard".

Właściwość tę można łatwo dodać za pomocą narzędzia przeznaczonego do tego celu: "sldsetdocprop.exe" znajdującego się w folderze: "C:\Program Files\SOLIDWORKS Corp\SOLIDWORKS\Toolbox\data utilities"

 

Właściwość "IsToolboxStandard" jest ukryta. Z tego powodu nie jest on widoczny w Edytorze właściwości SolidWorks. Dlatego musiałem skorzystać z biblioteki Document Manager.

2 polubienia

Rzeczywiście, @remrem, zaszła pomyłka, przyjrzę się temu, jak ulepszyć projekt, który jest bardzo dobrą podstawą. Czy możesz mi odpowiedzieć, jeśli masz trochę czasu na metodę używaną do kompilowania i debugowania projektów za pomocą biblioteki dll.

Ponieważ dołączyłeś do całego projektu z odrobiną czasu i pracy, powinienem w końcu odnieść sukces w zmodyfikowaniu tego  projektu pod kątem mojej użyteczności.

Cześć sbadenis,

SolidWorks jest kompatybilny tylko z Visual Studio 2015. Zajrzyj tutaj.

Jakich zmian oczekujesz?

1 polubienie

Tak , @remrem widziałem, że w międzyczasie miałem 2019, po prostu go odinstalowałem i zainstalowałem 2015 i teraz działa idealnie, mogę edytować z Solidworks, a tym samym debugować.

Dla pożądanych zmian, jak wspomniałem w mojej poprzedniej wiadomości:

- Utwórz konfigurację wtedy i tylko wtedy, gdy określony komponent IsToolboxStandard jest obecny i jeśli właściwość "Kategoria" zestawu to "Zespół"

- Obróbka otwartego zespołu i wszystkich odnośnych podzespołów (zgodnie z powyższymi kryteriami)

- Zmodyfikuj wszystkie konfiguracje podzespołów za pomocą uproszczonej konfiguracji "Łącznik włączony" tylko w uproszczonej konfiguracji głównego zespołu "Łącznik włączony", ale nie w konfiguracji domyślnej, która musi pozostać bez zmian.

Zaczynam odkrywać makra za pomocą Visual Studio i wydaje mi się to bardzo obiecujące, nawet jeśli jeszcze nie rozumiem całości!

W punkcie 2 właśnie zobaczyłem, że mam błąd: klasa nie ma licencji na użytkowanie.

Może nie wbiłem odpowiedniego klucza?

Czy można to zmienić?

Co należy wkleić w otrzymanym mailu klucz w tej formie (zmień cyfry na 0 dla zachowania poufności):

swdocmgr_general-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0,swdocmgr_previews-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-000 swdocmgr_dimxpert-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0,swdocmgr_geometry-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000-0000-0000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00 swdocmgr_xml-000000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000 swdocmgr_tessellation-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-00000-00000-00000-0000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0

 

Ze swojej strony wkleiłem to:

swdocmgr_general-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000 0-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-0000-000-000-00 000-00000-0000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-00000-00000 -00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-0000-0000-0000-0000-0000

Zrobiłem tak, aby makro przechowywało swoje ustawienia w pliku Xml znajdującym się w tym folderze: C:\Users\UserName\AppData\Local\Suppression_visserie

Plik składa się z następujących elementów:

<?xml version="1.0" encoding="utf-8"?>
<Parametres xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Version>1.0.0.0</Version>
  <DocMgrLicence>NomEntreprise:swdocmgr_general-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-000000-00000-000,swdocmgr_xml-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-00000-000</DocMgrLicence>
</Parametres>