Programowanie w SolidWorks, Vba, .NET, API

Witaj społeczności,

Jak wskazano w moim pytaniu, chciałbym przyjrzeć się programowaniu w SolidWorks, aby zautomatyzować jeden z moich projektów CAD.
Problem polega jednak na tym, że gubię się w oceanie informacji w internecie.
Oto dlaczego zwracam się do was o oświecenie:

- Robiłem już programowanie pod Catia z językiem Vba, czy to ta sama zasada i ten sam język pod SW?
- Znajduję bardzo niewiele samouczków i wyjaśnień na temat makr SW, ale przeczytałem wiele komentarzy mówiących, że powinieneś zacząć od programowania w Excelu, a następnie zastosować swoje umiejętności w innym oprogramowaniu, co o tym sądzisz? Ponieważ rzeczywiście w Excelu jest więcej pomocy.
- Próbowałem też znaleźć książki lub kursy w internecie, ale bez świetnych rezultatów.
- Często czytałem również SolidWorks API: Application Programming Interface, co to jest? Tylko środowisko, w którym wpisujesz kod?
- Słyszałem też o języku .NET, co to jest? Czy warto to wiedzieć?

Przepraszam za tę mnogość pytań, ale uważam, że makra są obecnie integralną częścią CAD i chciałbym się z nim zapoznać.

Ładny dzień.

1 polubienie

Witam

Postaram się jasno odpowiedzieć na Twoje pytania:

Vba to skrót od Visual Basic for Application. Jest to dość prosty i podstawowy język, którego podstawa jest identyczna w każdej aplikacji. Ładowana jest jednak biblioteka specyficzna dla aplikacji (dll). Więc tak, to ten sam język co Catia, ale nie są to te same obiekty.

Rozpoczęcie pracy z programem Excel w celu zrozumienia podstaw języka może być przydatne, ale nie nauczysz się niczego o obiektach Solidworks (API). Jeśli masz podstawy (wiedza na temat programowania obiektowego, typów zmiennych, ...) nie polecam przechodzenia przez Excela, aby nauczyć się API oprogramowania.

Poza pomocą SW i Google API, jest bardzo mało informacji. SW jako specyficzne oprogramowanie (choć używane przez dużą liczbę osób) pozostaje mniej używane niż na przykład Excel. Aby znaleźć jak najwięcej informacji o funkcji oprogramowania, wpisz w Google co chcesz zrobić w języku angielskim, dodając Solidworks API na końcu.

Język .Net jest bogatym językiem do tworzenia kompletnych aplikacji. Może być używany do tworzenia makr, ale w sposób zewnętrzny w stosunku do oprogramowania. Ponownie, jeśli nie znasz obiektów SW, nie polecam go używać.

Zaletą edytora makr SW jest to, że jeśli wykonasz F1 na obiekcie, otworzysz pomoc dla tego obiektu. Pozwala to na dość szybką naukę.

Mam nadzieję, że Ci pomogłem lub przynajmniej odpowiedziałem na Twoje pytania.

Pozdrowienia.

4 polubienia

Cześć

VBA to język programowania dla aplikacji: http://didier-gonard.developpez.com/tutoriels/office/vba-qu-est-que-c-est/

Jeśli chodzi o część programową: http://help.solidworks.com/2016/english/api/sldworksapiprogguide/Welcome.htm

Po drugie, .net umożliwia tworzenie aplikacji, które są niezależne od aplikacji natywnych. Jest znacznie potężniejszy niż VBA. Ponadto w oprogramowaniu umożliwia korzystanie z API Document Manager.

Ten interfejs API jest szczególnie interesujący, ponieważ umożliwia dostęp do informacji w plikach oprogramowania bez ich otwierania. Na przykład w ciągu kilku sekund można odczytać i edytować właściwości zestawu o rozmiarze kilkuset MB. Jest to metoda używana przez aplikacje MyCadTools, takie jak SmartBom...

 

Miłego dnia również. :-)

4 polubienia

Dziękuję wam obojgu bardzo, wasze odpowiedzi są bardzo jasne!

Szkoda, że nie możemy wybrać dwóch "Najlepszych Odpowiedzi"...

@industrialcadservices dziękuję za odpowiedź, rzucę okiem na internet, aby upewnić się, że opanowałem Vb, a następnie nauczę się korzystać z obiektów SW. Dziękujemy za zaoszczędzony czas! Dziękujemy za metodę wyszukiwania w internecie!

@remrem dziękuję za linki, pierwszy z nich pozwoli mi przejrzeć podstawy.

1 polubienie

Witam

Zgadzam się z pozostałymi odpowiedziami z dodaniem pytania "Co chcę zrobić i jak daleko?". Jeśli ma to być tworzenie makr programowych, to prawdopodobnie wystarczy VBA, ale jeśli celem jest pójście dalej w dziedzinie programowania i pisanie niezależnych programów do sterowania na przykład SW lub Epdm, to interesujące może być przejście na nieco bardziej kompletny język, taki jak VB.net lub C# (http://www.lesjeudis.com/article/cb-657-c)

Ze swojej strony wybrałem C#, język, który uważam za mniej "rozwlekły" niż VB.net i którego nauczyłem się samodzielnie za pomocą strony https://openclassrooms.com/ , którą uważam za bardzo dobrze wykonaną i na której można znaleźć doskonałe kursy lub samouczki. Używam EDI http://www.icsharpcode.net/OpenSource/SD/Default.aspx do pisania moich programów.

Pozdrowienia

1 polubienie