Știri Python Modelarea 3D folosind schița și eclipsa partea 2

Modelare 3D folosind SketchUp și Eclipse: Partea 2. Programarea în limbajul de scripting SketchUp

SketchUp Programare Script: Acest articol descrie un set de clase de bază folosite în scripturile SketchUp și oferă exemple de utilizare a acestora. Folosind aceste clase, poți construi o figură tridimensională (în continuare - 3-D) care constă din segmente și fețe.






Abrevieri obișnuite

  • API: interfață de programare a aplicațiilor
  • DHTML: limbaj Dynamic Hypertext Markup (limbaj dinamic de hipertext markup)
  • UI: Interfața cu utilizatorul

Având în vedere popularitatea limbajului de programare Java ™ și mențiunea Eclipse în titlul articolului, cred că sunteți familiarizat cu Java. Ruby nu este atât de popular, așa că voi explica pe scurt unele dintre asemănările și diferențele dintre ele. Sper că după aceea vă veți simți confortabil cu această limbă și veți putea să o încercați și să scrieți câteva comenzi elementare.

Amintind aceste reguli, puteți începe experimentele cu codul Ruby. În SketchUp, faceți clic pe Window> Ruby Console. Apoi, încercați să executați oricare dintre (sau toate) următoarele comenzi:

  • 2 * (5 + 5) / 4 * 1,0
  • 6.class
  • print 'Bună ziua lume'; pune "!"
  • m = Time.new; m.month
  • x = [4, adevărat, "hi there!"]
  • pune x [2] .to_s + "este un" + x [2] .class.to_s

În ultima comandă, metoda to_s a clasei Object Ruby îndeplinește aceeași funcție ca metoda ToString () a clasei Object Java: returnează un String. reprezentând Obiectul. Figura 1 prezintă consola SketchUp (Consola Ruby) cu rezultatele executării acestor comenzi.


Figura 1. Ieșire la consolă Ruby

Știri Python Modelarea 3D folosind schița și eclipsa partea 2






Aceste comenzi pot părea simple, dar Ruby oferă caracteristici care nu sunt deloc similare cu ceea ce puteți vedea în Java, C sau C ++. Pentru astfel de posibilități unice este posibil să purtați blocurile de iteratori, alocări paralele și curiozități cum ar fi clasa Range. Dar dacă vorbim despre API-ul SketchUp, putem trece foarte departe, având doar o idee generală despre limbaj. Acest API este discutat în detaliu în secțiunea următoare.
SketchUp API

În primul articol din această serie este un script de exemplu SketchUp și explică modul în care să-l execute folosind SketchUp comandă de încărcare și aplicația SketchUp Bridge. Dar acest articol nu explică cum funcționează scriptul. Comenzile Script fac parte din API-ul SketchUp, subiectul acestei secțiuni. Mai întâi, vă prezint structurile de date SketchUp fundamentale (Sketchup și Model) și apoi explicați modul de creare a obiectelor Edge și Face. După aceasta, voi explica cele două metode de extrudare (pushpull și followme) și se va încheia cu o descriere a aplicației pentru materialele SketchUp.

Fiecare modul Ruby este o colecție de metode; Modulul Sketchup este cel mai important modul din API-ul SketchUp. Metodele sale oferă informații referitoare la instalarea completă a SketchUp. Cinci dintre ele sunt enumerate mai jos:

  • os_language - returnează numele sistemului de operare pe care rulează SketchUp.
  • locale - returnează codul de limbă pentru localizarea curentă.
  • find_support_files - returnează calea către fișierele din directorul de nivel superior SketchUp.
  • version_number - returnează versiunea SketchUp.
  • active_model - returnează obiectul Model. reprezentând proiectul curent.

Similar cu o metodă statică în Java, trebuie să specificați numele modulului cu un nume de perioadă și de metodă pentru a apela metoda modulului Ruby. De exemplu, pentru a găsi versiunea aplicației SketchUp, puteți introduce următoarea comandă în Consola Ruby: Sketchup.version_number.

Dintre toate metodele din modulul Sketchup, cea mai importantă este metoda active_model. Returnează un obiect Model. care conține toate informațiile despre proiectul SketchUp actual. Fiecare proiect are un obiect Model. și fiecare obiect model încorporează un proiect. Spunând "toate informațiile", vreau să spun că obiectul Model stochează locația fiecărui vârf, culoarea fiecărei forme, stilurile disponibile pentru proiect și multe altele. Modelul stochează informații într-o secvență de obiecte container. care includ următoarele componente:

  • Entități - toate formele din proiectul actual.
  • Materiale - culori și texturi.
  • Straturi - straturi grafice ale proiectului.
  • Stiluri - setările aspectului proiectului.

În general, scopul scriptului SketchUp este de a schimba datele din obiectele containerului. Pentru a face acest lucru, apelați metoda corespunzătoare din clasa Model. Aceste metode sunt ușor de reținut: metoda straturilor returnează un obiect Layers. metoda de stiluri returnează un obiect Styles. metoda entități returnează un obiect entități și așa mai departe. De exemplu, următorul cod readuce containerul Entități al obiectului Model curent:







Trimiteți-le prietenilor: