|
www.cadblog.pl www.cadglobe.com | Strona korzysta z plików cookies m.in. na potrzeby statystyk. Więcej >>>

stronę najlepiej oglądać z wykorzystaniem przeglądarki Chrome w rozdzielczości min. 1024 x 768 (zalecane 1280 x 1024)

Blog i czasopismo o tematyce CAD, CAM, CAE,     
systemach wspomagających projektowanie... 
    
 

© Maciej Stanisławski 2009
     
ul. Jeździecka 21c lok. 43, 05-077 Warszawa     
kom.: 0602 336 579     
  maciej@cadblog.pl     
2017 rok IX
   

  

>> Strona główna | Aktualności | CAD blog | Solid Edge blog | SolidWorks blog | CadRaport Historia CAD | Sprzętowo | W numerze | ArchiwumLinki Pobierz


    


Wydanie aktualne

nr 1-2(21-22) 2017
dostępny w pdf
, wydanie flash tutaj


W przygotowaniu

nr 3-4(23-24) 2017


Wydania archiwalne

nr 1-2(19-20) 2015
dostępny w pdf
, wydanie flash tutaj

numer 1(18) 2014
dostępny w pdf
, wydanie flash tutaj


numer 1(17) 2013
dostępny w pdf
, wydanie flash tutaj


numer 1(16) 2012
dostępny
w archiwum

numer 1(15) 2011
dostępny
w archiwum


numer 4(14) 2010
HD dostępny
w archiwum


numer 3(13) 2010
HD już dostępny
w archiwum


numer 2(12) 2010
dostępny
w archiwum


numer 1(11) 2010 dostępny
w archiwum

Wtorek, 28.06.2016 r.

Onshape
Pięta achillesowa i FeatureScript

Nieoceniony (bo chyba doceniony) Ralph Grabowski w jednym ze swoich ostatnich upFront.ezine odniósł się do artykułu na temat słabych stron Onshape (autorstwa Tara Roopinder), a także poruszył temat wprowadzonej nowej funkcjonalności – możliwości pisania własnych skryptów, własnych narzędzi. To istotnie nowość, jeśli nie przełom – mówimy przecież o oprogramowaniu, które pracuje tylko „on-line”, w całości w oknie przeglądarki...

Maciej Stanisławski

Zacznijmy od „słabych stron”, a potem przyjrzymy się tej „mocniejszej” nowości. Podobnie jak Tara Roopinder, ja również zawsze „punktowałem” stabilność i szybkość łącza internetowego jako najsłabszy element systemu, który de facto pracuje tylko w sieci – i dotyczy to wszystkich takich rozwiązań, a nie tylko Onshape. W sytuacji, gdy infrastruktura którą dysponujemy nie jest w stanie zagwarantować nam bezproblemowej przepustowości danych, nie możemy liczyć na to, że używany w oknie przeglądarki system CAD będzie pracował wydajnie i stabilnie. Owszem, nasze dane pozostają bezpieczne i nie grozi nam ich utrata, ale praca może okazać się uciążliwa.

Co prawda Darren Henry (dyrektor marketingu Onshape) zastrzegł, iż Onshape istotnie „może nie być najlepszym wyborem dla wszystkich regionów”, ale jednocześnie podkreślił, że daleki jest od uznania za piętę achillesową wpływu jakości połączeń internetowych na komfoft pracy z Onshape. Informacje zwrotne ze strony użytkowników wskazują bowiem na to, że nie napotykają na większe trudności, niż ma to miejsce w przypadku firm, które wykorzystują co prawda systemy CAD stacjonarne (instalowane lokalnie na komputerach), ale za to zarządzają licencjami przez sieć, współdzielą dane i informacje drogą internetową – innymi słowy także w znacznym stopniu uzależnione są od jakości łączy i szybkości przesyłu sygnału.

 

Onshape bez wątpienia jest jednym z najdroższych startupów w historii systemów CAD. Czy istotnie będzie w stanie wspierać rozwój branży i nowej generacji użytkowników-inżnierów, którzy gotowi będą realizować swoje projekty tylko on-line?

 

Tara Roopinder zadaje jednak – nie całkiem wprost – pytanie, czy od systemu CAD, na którego powstanie i rozwój wydano wręcz zawrotną kwotę ok. 169 mln USD, nie należałoby wymagać czegoś więcej (tylko w kwietniu br. dofinansowanie dla projektu wyniosło... 100 mln USD, co wg Schnitger Corp, http://schnitgercorp.com/ firmy zajmującej się profesjonalnym analizowaniem rynku CAD, czyni Onshape najdroższym „startupem” w historii branży)? On sam, jak przyznaje, najchętniej pracuje z aplikacjami, które wykorzystują cloud-computing, ale które pozwalają jednak na pracę lokalnie, poza siecią. Słowem: off-line. Cóż, nie ukrywam, że ja także.

 

Bolid F1 projektowany w Onshape? Z pewnością PERRINN będzie pierwszym w historii F1 pojazdem
zaprojektowanym od początku do końca w chmurze! A może nie tylko w historii F1?

 

Onshape nie ma problemu z pozyskaniem inwestorów gotowych, jak dosadnie określa Tara, głęboko sięgnąć do swoich portfeli. Za projektem stoi w końcu m.in. osoba odpowiedzialna za „ostatnią rewolucję w branży CAD” – Jon Hirschtick, założyciel SolidWorks, którego wizja realizowana jest w zasadzie przez wszystkie współczesne rozwiązania CAD 3D. Nie zmienia to jednak faktu, iż Onshape nie jest stowarzyszeniem, ani organizacją charytatywną, tylko prywatnym przedsiębiorstwem nastawionym w końcu na zysk. A tymczasem największe zyski branży CAD jak do tej pory przynosiła nie obsługa techniczna, tylko sprzedaż stanowisk (obecnie trend ten ulega odwróceniu) – po prostu z każdą sprzedaną wieczystą licencją, na konto firmy wpływała konkretna suma liczona nierzadko w tysiącach dolarów. A obecnie? W modelu subskrypcyjnym od każdej profesjonalnej licencji kwota ta wynosi ok. 100 USD miesięcznie, a przecież wielu użytkowników (wliczając piszącego te słowa) korzysta z możliwości pracy nieodpłatnie (realizacja do 10. projektów jednocześnie). Z drugiej jednak strony, nie znam liczby zarejestrowanych obecnie użytkowników Onshape (podczas beta testów wynosiła ona kilkanaście tysięcy, obecnie szefowie Onshape mówią o kilkudziesięciu tysiącach osób). Ile spośród nich zdecydowało się (lub zdecyduje) na rozszerzenie licencji do wersji profesjonalnej? I czy to wystarczy, by zapewnić przedsięwzięciu stabilność i możliwości rozwoju, bez uciekania się do zastrzyków finansowych z zewnątrz? A jeśli nie... to gdzie szukać przyczyny, dla której tak się dzieje – i czy problem nie tkwi właśnie w modelu cloud-based-computing?

Odpowiedź na to pytanie poznamy zapewne w ciągu kilku-kilkunastu miesięcy. Czas teraz przyjrzeć się wspomnianej przez Ralpha „mocnej nowości”, kolejnemu atutowi po stronie Onshape. A jest nim...

FeatureScript
Wszystkie systemy MCAD posiadają wbudowane funkcje, które pozwalają na tworzenie operacji geometrycznych, takich jak wyciągnięcia brył, fazowania, szkice, etc. Ale kod, który odpowiada za ich realizację w praktyce, nie jest tak zwyczajnie dostępny dla zwykłego, końcowego użytkownika. Nikt nie zakładał, iż będzie można go samemu modyfikować, dostosowywać pod kątem swoich potrzeb etc. Kiedy użytkownik chce, aby dana funkcjonalność realizowała swoje zadanie w inny sposób, albo kiedy chciałby dodać jakieś nowe, potrzebne narzędzie (operację etc.), najczęściej zmuszony jest do użycia API (ang. Application Programming Interface). Z drugiej strony API nie jest dostępne w każdym systemie i nie powstało z myślą o tym, by powszechnie korzystali z nich projektanci, czy wręcz kreślarze na co dzień pracujący z systemami CAD. Z założenia praca z CAD ma być prosta, a nie polegać na dodatkowym układaniu skryptów, czy podprogramów – bo to już raczej dziedzina ocierająca się o informatykę.
Tymczasem FeatureScript pozwala użytkownikowi na intuicyjne pisanie własnych, krótkich kodów generujących niestandardowe, parametryczne cechy geometryczne. Co więcej, kodami tymi można wymieniać/dzielić się z innymi użytkownikami Onshape. Jest to znakomite ułatwienie, pozwalające np. na zdefiniowanie w ten sposób gotowych elementów (typu koła zębate, wałki etc.). Gdy są to powtarzające się elementy naszych projektów, trudno przecenić takie ułatwienie, szczególnie w przypadku bardzo specyficznych funkcjonalności (czy form geometrycznych), których nie znajdziemy w „standardowym wyposażeniu” systemów CAD.

 

„Cody Armstrong z zespołu Onshape zademonstrował mi w zeszłym tygodniu funkcjonalność, która może okazać się najmocniejszym atutem, kluczowym argumentem przemawiającym na korzyść wykorzystania Onshape w praktyce: to FeatureScript. Co więcej, jest to ten sam język programowania, który został użyty do napisania samego Onshape...”

Ralph Grabowski, upFront.ezine, nr 905, 13.06.2016

 

Proszę nie odnieść jednak mylnego wrażenia, że Onshape udostępnił jedynie coś na kształt języka AutoLISP, pozwalającego na modyfikowanie, czy wręcz samodzielne kreowanie geometrii modelowanych w CAD kształtów. Twórcy Onshape posunęli się o krok dalej – FeatureScript jest bowiem niczym innym, jak językiem, który posłużył do napisania Onshape, a firma obecnie udostępnia go niemalże na zasadach Open Source (vide fot).

 

Onshape napisany został w FeatureScript. Firma udostępniła cały kod na zasadzie Open Source...

 

FeatureScript został wdrożony w latach 2012-2013, czyli właściwie w początkach Onshape (wtedy jeszcze firma nazywała się Belmont Technology Inc., o czym pisałem m.in. tutaj) i miał ogromny wpływ na rozwój i ogólny kształt nowego systemu CAD 3D. Wszystkie operacje geometryczne, wszystkie funkcje dostępne w Onshape powstały właśnie w oparciu o FeatureScript. I – jak z tego wynika – to działa :). Język programowania zawiera tzw. IDE (ang. integrated development enviroment), co można przetłumaczyć jako zintegrowane środowisko programistyczne, o nazwie Feature Studio (video poniżej).

 

 

Użytkownik Onshape może tworzyć własne fragmenty kodu, własne funkcje/operacje w Create Feature Studio,
albo korzystać z gotowych przykładowych FeatureScript, np. do projektowania wałków, kół zębatych etc.

 

Kiedy oglądamy model w środowisku Onshape, widzimy także jego drzewo operacji, uwzględniające wszystkie cechy (jak wyciągnięcia, fazowania, profile etc.). Każda z cech związana jest z kodem FeatureScript – wystarczy kliknąć „Refresh” (Odśwież), a Onshape odbudowuje model na podstawie kodu FeatureScript dołączonego do dokumentu. Co więcej, można go poddać edycji, zmieniając w ten sposób wygląd modelu. Istnieje oczywiście ryzyko, że możemy w ten sposób uszkodzić nasz model (tutaj Ralph Grabowski wskazuje na bardzo bliską analogię do pracy z kodem HTML odpowiedzialnym za wygląd i działanie witryn, np. CADblog.pl), ale Onshape ma wbudowany mechanizm pozwalający na cofanie błędnych operacji (Undo) w zasadzie w nieskończoność, także możemy w najgorszym wypadku w ten sposób wrócić do sytuacji wyjściowej.
Można modyfikować kod napisany przez kogoś innego (zasady Open Source). Zainteresowana firma może też stworzyć swoją prywatną stronę z kodem stworzonym wewnętrznie, a zarejestrowani użytkownicy, którzy nie czują się dobrze w roli „niemalże informatyków”, mogą zwrócić się o napisanie kodu do osób trzecich. Albo użyć bez żadnych zmian kodu napisanego przez innych, pod warunkiem, że owi „inni” zdecydowali się na jego upublicznienie. A wszystko dzieje się... w chmurze!

 

Liczba dostępnych gotowych kodów, ułatwiających tworzenie własnego projektu, zwiększa się w zasadzie każdego dnia :)

 

Onshape poważnie myśli o stworzeniu czegoś na kształt „Rynku FeatureScript” (na zasadach zbliżonych do już działających AppStore), na którym programiści (lub zwykli użytkownicy Onshape) będą mogli nie tylko dzielić się, ale wręcz sprzedawać nowe niestandardowe funkcje/operacje napisane w FeatureScript. Natomiast wiele skryptów jest dostępnych już w tej chwili, nieodpłatnie, pod adresem: https://www.onshape.com/featurescript. Zachęcam do odwiedzin i wypróbowania rozwiązań Onshape we własnym zakresie.

(ms)

P.S. Artykuł przygotowany na zlecenie dwumiesięcznika „STAL. Metale i nowe technologie” wyd. ELAMED.


Źródła:
http://www.thecadinsider.com/2016/06/connectivitythe-achilles-heel-of-onshape.html
http://www.upfrontezine.com/2016/06/all-about-featurescript-from-onshape-.html

 


FeatureScript Demo

Jak wspomniałem, kod FeatureScript można znaleźć wewnątrz dokumentów tworzonych i edytowanych w Onshape, a mechanizm współdzielenia i wymiany danych pozwala na użycie kodów pochodzących z jednego dokumentu – w innym projekcie. Oto, jak może to wyglądać na prostym przykładzie.

1. Zaczynamy od kliknięcia przycisku Create Tab, który umieszczony jest na dolnym pasku narzędzi Onshape (lewy dolny róg) i następnie ze wstążkowego menu wybieramy Create Feature Studio – przejdziemy do okna Feature Studio.
2. Na górnym pasku klikamy polecenie „New Feature”, otwarty zostanie „szkielet” naszego kodu.
3. W pierwszym kroku zdefiniujemy interfejs użytkownika naszej nowo tworzonej funkcji/operacji (jej określenie, wybór możliwych wartości, parametrów – np. średnicy etc.).
4. W kolejnym definiujemy sposób działania funkcji, rodzaj wybranej operacji, zmienne, które będą uwzględniane; można wybrać wartości domyślne, można wprowadzić własne już założone.
5. W obu przypadkach dokonujemy tego, podświetlając kursorem myszy dany fragment kodu wymagający uzupełnienia i wskazując odpowiednie opcje z paska narzędzi.
6. Edycję kończymy wciśnięciem klawisza Commit.

Teraz wystarczy przejść do środowiska modelu (Part Studio) i kliknąć przycisk „Add Custom Feature”, aby dodać funkcję do naszego projektu.

Powyższe działania zostały dokładnie pokazane w materiałach video dostępnych na stronie: https://www.onshape.com/featurescript

 


Linki do innych wpisów o Onshape:

Nowy system CAD założycieli SolidWorks
Nowy system CAD 3D zapowiada się nieźle...

Nowości Onshape...
Onshape: Odsłaniam tajemnicę...

 

Share
 


 [ powrót na stronę główną ]

reklama



 

Blog monitorowany przez:

 


 

 

 

| reklama | redakcja | dane kontaktowe | prenumerata |

© Copyright by Maciej Stanisławski. Publikowane materiały są objęte prawem autorskim.
Przedruk materiałów w jakiejkolwiek formie tylko za wcześniejszą zgodą autora.  
webmaster@skladczasopism.home.pl. Opracowanie graficzne: skladczasopism@home.pl
CADblog.pl jest tytułem prasowym  zarejestrowanym w krajowym rejestrze dzienników i czasopism
na podstawie postanowienia Sądu Okręgowego Warszawa VII Wydział Cywilny Rejestrowy Ns Rej. Pr. 244/09
z dnia 31.03.2009 poz. Pr 15934