Professional Documents
Culture Documents
Spis treci:
&. $. ,. -. /. 1. 3.
'st(p. Pro)ra* Topsolid_swept.exe + opis. Instalacja. Prosta instrukcja dzia.ania + krok po kroku. 0wa)i. 2istin) kodu. 4r#d.a.
Ad.1. Wstp.
Top Solid ! to 5rodowisko in67niersko8projektowe !narz(dzie usprawniaj9ce i prz7spieszaj9ce prac(. ozbudowana aplikacja z *o6liwo5cia*i zinte)rowania jej z baz9 dan7c: ! opcj9 poszerzania o nowe ;unkcje za po*oc9 *i(dz7 inn7*i 5rodowisk pro)ra*ist7czn7c: ( co w tej procedurze zosta.o zade*onstrowane ). Ten prz7k.ad pokazuj9 t7lko jedn9 z wielu *ozliwo5ci te)o 5rodowiska ! kt#re sa*o rozwij9 si( wraz z wzroste* u67wania )o przez operatora. Podstawowa biblioteka ko*ponent#w ! blibliotek *ateria.ow7c: ! dodatkow7c: ;unkcji ( <b ) rozrasta si(! jednocze5nie udost(pniaj9c ten poszerzaj9c7 si( zbi#r dla operator#w danej ;ir*7 + korz7staj9c7c: ze wsp#ln7c: zasob#w. Tutaj prezentowan7 jest prost7 prz7k.ad z pozio*u API + dodatkowa ;unkcja ! *akro .9cz9ca w sobie kilka opercaji w jedn9. Aplikacja w7*a)a zainstalowania .=>T ( ?ra*eworka ) w s7ste*ie.
! API
7s.1. Formularz Topsolid_swept.exe w rodowisku programistycznym VB.net. Tutaj pro)ra* *a za zadanie stworz7@ - okr()i o pro*ieniac: r&!r$!r,!r- ( jednostka A**B ) odsuni(te od siebie o t&!t$!t, ( jednostka A**B ). Po wpisaniu para*etr#w i klikni(ciu prz7cisku r7suj !5rodowisko TopSolid ! )eneruje now7 doku*ent desi)n i tworz7 krz7we. =ast(pnie w7w7.owana jest opcja Swept ( bez pocz9tkowe)o wizarda ) opieraj9ca si( o krz7w9 prowadz9c9 i przekroje.
Ad .:.;wa<i:
Do s*uci to ;akt !6e API do Top Solida jest bardzo ubo)ie. Ilo5c ;unkcji ! *etod ! o)ranicza si( do kilku podstawow7c: operacji ze 5rodowiska. ' pow76sz7* prz7k.adzie nie*o6na z pozio*u VN w.9cz7@ *etod7 swept. 0ruc:a*iane jest Gacro ( T.lob U T.lip ) odpowiedzialne w TopSolidzie za t( ;unkcj(. Pr#ba przes.ania na stos para*etr#w ustanowion7c: z ;or*ularza + niepowiod.a si(. Trzeba r(cznie przeprowadzi@ operacje prz7pisania para*etr#w ! ele*et#w dla ;unkcji Swept. 'a6na in;or*acj9 dla os#b pracuj9c7c: w 5rodowisku pro)ra*ist7czn7* np. VN.net jest prz7pisanie re;erencji TopSolida do projektu + pozwalaj9ce na u67wanie obiekt#w te)o6 5rodowiska.
Ad.=.>istin< kodu :
Dim TopApp As TopSolid.Application Dim TopDoc As TopSolid.DocumentDesign Private Sub Form_Load()
' i# TopSolid isn't open$ it !ill open a ne! session o# TopSolid TopApp % &e! TopSolid.Application
Private Sub r*su+() Form_Load() Dim Top,ircle-$ Top,ircle.$ Top,ircle/$ Top,ircle0 As TopSolid.,urve Dim TopLine As TopSolid.,urve 'Dim TopS"ape As TopSolid.S"ape Dim elem As TopSolid.1lement Dim t-$ t.$ t/$ r-$ r.$ r/$ r0 As Double r- % Val(Te2t r. % Val(Te2t r/ % Val(Te2t r0 % Val(Te2t o2-.Te2t) o2..Te2t) o2/.Te2t) o20.Te2t)
t- % Val(Te2t o23.Te2t) t. % Val(Te2t o24.Te2t) t/ % Val(Te2t o25.Te2t) ' ,reate a basic circle ' ,entre % 6$ 6$ 6 ' 7 a2is % -$ 6$ 6 ' 8 a2is % 6$ -$ 6 ' 9adius % 6.6(centr $ 777777 $ 888888 $ 9 ) Top,ircle- % TopDoc.,urves.Add asic,ircle(6$ 6$ 6$ -$ 6$ 6$ 6$ -$ 6$ r-) ' Set t"e name o# t"e circle Top,ircle-.1lement.&ame % ):;rag_-) '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Top,ircle. % TopDoc.,urves.Add asic,ircle(6$ 6$ t-$ -$ 6$ 6$ 6$ -$ 6$ r.) Top,ircle..1lement.&ame % ):;rag_.) Top,ircle/ % TopDoc.,urves.Add asic,ircle(6$ 6$ t- = t.$ -$ 6$ 6$ 6$ -$ 6$ r/) Top,ircle/.1lement.&ame % ):;rag_/) Top,ircle0 % TopDoc.,urves.Add asic,ircle(6$ 6$ t- = t. = t/$ -$ 6$ 6$ 6$ -$ 6$ r0) Top,ircle0.1lement.&ame % ):;rag_0) TopLine % TopDoc.,urves.Add asicLine(6$ 6$ 6$ 6$ 6$ t- = t. = t/) >?r@ucanie na stos parametrA! $ elementA! 'TopApp.Pus"1lement:nStac;(TopLine) 'TopApp.Pus"String:nStac;()7=)) 'TopApp.Pus"1lement:nStac;(Top,ircle-) 'TopApp.Pus"Double:nStac;(6.6) '2 'TopApp.Pus"Double:nStac;(6.6) '* 'TopApp.Pus"Double:nStac;(6.6) '@
'TopApp.Pus"1lement:nStac;(Top,ircle.) 'TopApp.Pus"Double:nStac;(6.6) '2 'TopApp.Pus"Double:nStac;(6.6) '* 'TopApp.Pus"Double:nStac;(t-) '@ 'TopApp.Pus"1lement:nStac;(Top,ircle/) 'TopApp.Pus"Double:nStac;(6.6) '2 'TopApp.Pus"Double:nStac;(6.6) '* 'TopApp.Pus"Double:nStac;(t- = t.) '@ 'TopApp.Pus"1lement:nStac;(Top,ircle0) 'TopApp.Pus"Double:nStac;(6.6) '2 'TopApp.Pus"Double:nStac;(6.6) '* 'TopApp.Pus"Double:nStac;(t- = t. = t/) '@ 'TopApp.Pus"1lement:nStac;(TopLine) 'TopApp.12ecuteBacroCeepStac;(D),EFBisslerFV4--FdFs"Fs!-dngFcvsFlFcreate.lob)) 'elem % TopApp.Get1lementFromStac;() >(ruc"omienie ma;ra ( pominiHt* !i@ard metod* S?1PT ) TopApp.12ecuteBacro(),EFBisslerFV4--FdFs"Fs!-dngFcvsFlFcreate.lob)) TopApp.S*nc"roni@e() Top,ircle- % &ot"ing Top,ircle. % &ot"ing Top,ircle/ % &ot"ing Top,ircle0 % &ot"ing TopLine % &ot"ing 1nd Sub
Ad.?. @rAd8a.
PlikiE Toplip.doc TopSolidAPI.c:* Stron7 wwwE :ttpEUU;oru*.topsolid.co*U