zeczywiście dotyczącą interesującego go <strong>zjawisk</strong>a. Również nie wydaje się prawdopodobne,aby uczeń stawiający pierwsze kroki w programowaniu napisał silnik 3D. W takich sytuacjach pomocny może się okazać Python. Jest to język warty poznania – sprawdza się nie tylko w nauce programowania, ale może się okazać niezastąpiony w codziennej pracy. Wystarczy powiedzie, że jest on intensywnie używany przez inżynierów z tak potężnych firm jak Google czy Industrial Light&Magic. 3
2. Modelowanie obiektów (część 1) VPython to język Python plus graficzny moduł 3D zwany „Visual” napisany przez Davida Scherera. W tym rozdziale poznamy niektóre podstawowe możliwości tego modułu, pozwalające nam budować obiekty, nadawać im parametry (także fizyczne), oraz wprawiać je w ruch. Animacje te staną się w przyszłości podstawą pozwalającą modelować i symulować <strong>zjawisk</strong>a fizyczne. Na początku jednak musimy poznać kilka podstawowych funkcji biblioteki Visual. Okno 3D Kiedy używamy VPython'a wyświetlane okno pokazuje nam obiekty w przestrzeni trójwymiarowej. Punkt (0,0,0) kartezjańskiego układu współrzędnych jest w centrum wyświetlanego okna. Dodatnie wartości współrzędnych x przebiegają w prawo, y przebiegają do góry, natomiast z wychodzą z płaszczyzny ekranu do użytkownika. Wartości x , y , i z mogą być wyrażane w dowolnych jednostkach. Okno 3D dopasuje się automatycznie skalując obiekty i dobierając odpowiednio zakres wyświetlanej sceny. Możemy, na przykład, zainicjować sferę o promieniu r=1 ⋅10 −15 m reprezentującą nukleon, lub sferę [G] o promieniu r=1 ⋅10 6 m przedstawiającą planetę, jednak nie ma sensu umieszczać obu tych obiektów w tej samej scenie. Wpisując poniższy skrypt używając IDLE (interactive development environment ) a następnie zapisując i uruchamiając go (poprzez naciśnięcie F5) zobaczyć możemy przykładowe okno 3D zawierające obiekty. from visual import * scene.background=(1.0,1.0,1.0) p=(0.0,0.0,0.0) strzalkax = arrow(pos=p, axis=(1,0,0), shaftwidth=1, color=color.red) strzalkay = arrow(pos=p, axis=(0,1,0), shaftwidth=1, color=color.green) strzalkaz = arrow(pos=p, axis=(0,0,1), shaftwidth=1, color=color.blue) pudelko=box(pos=vector(1.0,0.0,0.5), size=(1.0,0.5,0.2),color=(1.0,0.0,0.3)) kula=sphere(pos=vector(2.5,0.0,0.0), radius=0.6, color=(0.3,0.8,0.4)) Rysunek 1: Przykładowe obiekty wyświetlane w oknie 3D Widok wyświetlanej sceny możemy zmienić naciskając prawy przycisk myszy i przesuwając ją w górę, dół lub prawo, lewo. Zakres wyświetlanej sceny możemy zmienić klikając środkowym przyciskiem myszy i przesuwając ją w górę – zmniejszamy zakres widocznej sceny, lub w dół - powiększamy zakres. 4