본문 바로가기
728x90
반응형
SMALL

Python Library/VPython17

Web VPython Web VPython VPython은 3D 애니메이션을 만들기 위한 사용하기 쉽고 강력한 환경이다. 여기 glowscript.org (또는 webvpython.org)에서 브라우저에서 바로 VPython 프로그램을 작성 및 실행하고, 클라우드에 무료로 저장하고, 다른 사람들과 쉽게 공유할 수 있다. 설치된 Python과 함께 VPython을 사용할 수도 있다 (vpython.org 참조). 도움말은 전체 문서를 제공한다. Trinket서 VPython 튜토리얼이 있다. VPython 프로그래밍을 처음 접하는 모든 사람에게 유용하다. 예제 프로그램 https://glowscript.org/ Web VPython VPython is an easy-to-use, powerful environment for c.. 2022. 7. 6.
[VPython] Trajectory Trajectory ball = sphere(make_trail=True) # simple moving object ball = sphere(make_trail=True, trail_type="points", interval=10, retain=50) make_trail Must be mentioned when creating the moving object; if False, no points will be added to the trail until you say ball.make_trail = True (assuming the moving object is named ball) trail_type Default is "curve", but can be "points" interval If inter.. 2022. 1. 20.
[VPython] Sharing / Backup Sharing 편집 모드에서 프로그램을 공유하려면 맨 위에 있는 프로그램 공유 또는 내보내기를 클릭한다. 세 가지 옵션이 있다. 1. 하단의 입력란에 HTML 및 Javascript 코드를 복사하여 웹 사이트 코드에 붙여넣는다. Bithub Pages는 이 코드를 호스팅할 수 있는 자유 플랫폼이다. 2. 다시 Edit this Program으로 돌아가서 프로그램을 실행한다. 프로그램이 공용 폴더에 있으면 프로그램을 실행하는 페이지의 URL을 직접 공유할 수 있다. 3. HTML의 iframe을 사용하여 프로그램을 실행하는 페이지를 직접 웹 사이트에 포함할 수 있다. Backup 구글 계정에 연결된 프로그램은 Glowscript의 서버에 저장되지만, 만약을 위해 python 코드를 백업할 수도 있다. 컴퓨.. 2022. 1. 18.
[VPython] Miscellaneous (3) Canvas canvas는 3D 개체를 표시하는 창이며 사용자 지정할 수 있다. canvas(width=700,height=500,background=color.white) sphere() Multiple Canvases 둘 이상의 canvas가 있을 수 있으며, 각 canvas를 변수에 할당한다. canvas를 여러 개 사용하는 경우 각 객체를 canvas 변수에 할당하려면 모든 객체에 (canvas=) parameter가 있어야 한다. canvas1 = canvas() # canvas 1 canvas2 = canvas() # canvas 2 box(canvas=canvas1) # assign box to canvas 1 sphere(canvas=canvas2) # assign sphere to can.. 2022. 1. 18.
[VPython] Miscellaneous (2) Camera 카메라의 위치와 축은 scene.camera를 사용하여 제어할 수 있다. Camera Follow 카메라는 움직이는 물체를 따라가도록 만들 수 있습니다. scene.camera.follow(obj)를 생성한 직후에 수행한다. ball = sphere() scene.camera.follow(ball) Camera Control scene.camera.pos를 사용하여 카메라 위치를 가져오고 카메라 위치를 제어한다. scene.camera.pos = vector(#,#,#) scene.camera.axis을 사용하여 카메라 방향을 가져오고 방향을 제어한다. scene.camera.axis = vector(#,#,#) scene.range = #를 사용하여 축소하고 더 넓은 범위를 설정한다. 2022. 1. 18.
[VPython] Miscellaneous (1) LaTex latex를 render하려면 코드를 삽입. MathJax.Hub.Queue(["Typeset",MathJax.Hub]) 모든 latex backslash는 이중 backslash (ex. \\ )로 대체해야 한다. 모든 latex 문은 \\( \\) 또는 $ $ 또는 $ $ $로 묶어야 하며, 여기서 $$는 방정식을 새로운 선으로 이동시킨다. box() scene.caption = "Final kinetic energy = \\( \\dfrac {1} {2}mv_i^{2}+\\int _{i}^{f}\\vec{F}\\circ d \\vec{r} \\)" MathJax.Hub.Queue(["Typeset",MathJax.Hub]) box() scene.caption = "$\\dfrac {5} .. 2022. 1. 18.
[VPython] Mouse and Keyboard Events Mouse and Keyboard Events VPython은 마우스 및 키보드 입력을 받을 수 있다. event는 사용자가 마우스나 키보드를 사용하여 수행할 수 있는 작업이다. 는 하나의 event일 수도 있고 공백으로 구분된 event 리스트일 수도 있다. 사용자 event를 listen하는 방법에는 두 가지가 있다. ev = scene.waitfor (‘ ‘) 이 method는 event를 한 번만 기다린다. box() ev = scene.waitfor(‘click’) print(ev.event, ev.pos) event를 두 번 이상 listen하려면 잠시 (while True:) loop를 사용한다. box() while True: ev = scene.waitfor('keydown') print.. 2022. 1. 18.
[VPython] Math Functions Math Functions https://www.glowscript.org/docs/VPythonDocs/math.html VPython Help Math Functions For versions of Python prior to 3.0, Python performs integer division with truncation, so that 3/4 is 0, not 0.75. This is inconvenient when doing scientific computations, and can lead to hard-to-find bugs in programs. In the Web VPython env www.glowscript.org https://www.glowscript.org/docs/VPythonD.. 2022. 1. 18.
[VPython] Animations Animations Moving Graphs에서 볼 수 있듯이, Animations의 핵심은 일정 시간 동안 동작을 수행할 수 있는 rate(#)이다. animation이 무한 재생되도록 하려면 (while True:) loop를 사용하고, (for i in range(#):) loop는 finite 시간 동안 재생한다. 참고 : 프로그램이 고장나면 loop에 rate(#)가 있는지 확인. Bouncing Ball Example # make sphere and 2 wall objects my_sphere = sphere(pos=vector(0,0,0), radius=0.25, color=color.green ) wall1 = box(pos=vector(2,0,0), size=vector(0.1,1,1),.. 2022. 1. 18.
[VPython] Graphs (2) Multiple Plots 동일한 graph에 여러 개의 그림을 추가하려면 동일한 (graph=) parameter를 사용하여 새 그림을 만든다. plot2 = (graph=g,color=color.green,data=[[10,11],[12,13],… ]) 여기서 plot type이 동일할 필요는 없다. Legend 범례 (legend)를 추가하려면 새 그림을 만들 때 (label=) parameter를 사용한다. plot2 = (graph=g,data=[[1,2],[3,4],… ],label=”plot name”) Aside on for loops: for i in range(start,stop): for i in range(start, stop, step size): for i in range(0,1.. 2022. 1. 17.
728x90
반응형
LIST