VPython

Visual (Python Library)
Originalförfattare David Scherer
Initial release 2000 ; 23 år sedan ( 2000 )
Stabil frisättning
7.5.2 / 11 november 2019 ; 3 år sedan ( 2019-11-11 )
Skrivet i C++ , Python
Operativ system Cross-plattform
Licens Öppen källa
Hemsida www .vpython .org

VPython är Python-programmeringsspråket plus en 3D-grafikmodul som heter Visual. VPython tillåter användare att skapa objekt som sfärer och koner i 3D-rymden och visar dessa objekt i ett fönster. Detta gör det enkelt att skapa enkla visualiseringar, vilket gör att programmerare kan fokusera mer på beräkningsaspekten av sina program. Enkelheten med VPython har gjort det till ett verktyg för att illustrera enkel fysik, särskilt i den pedagogiska miljön.

Historia

1985 skapades cT-programmeringsspråket av forskare vid Carnegie Mellon University . Bidragsgivare till projektet var David Andersen, Bruce Sherwood, Judith Sherwood och Kevin Whitley. Programmeringsspråket cT skapades till stor del från TUTOR (1965) och MicroTutor (1977). Även om cT hade många applikationer, var dess primära användning 2D-grafik för klassrumsmiljön. Många prisbelönta utbildningsprogram skrevs i cT (se VISQ ), särskilt inom fysikområdet. 1997 fick elever på Carnegie Mellon lära sig cT i en ny introduktionskurs i fysik skapad av Ruth Chabay och Bruce Sherwood.

1998 kom David Scherer in på universitetet som nybörjare och skrev in sig på en av de inledande fysikklasserna som använde cT. Även om cT erbjöd en relativt enkel 2D-grafikprogrammeringsmiljö, såg Scherer möjligheten att skapa ett ännu bättre verktyg. Under våren och sommaren 2000, med hjälp av David Andersen, Ruth Chabay, Ari Heitner, Ian Peters och Bruce Sherwood, skapade Scherer Visual, en modul för Python som inte bara var lättare att använda än programmeringsspråket cT , men även renderade objekt i tre dimensioner . Kombinationen av Python plus Visual kallas VPython. Ytterligare utveckling av cT-programmeringsspråket avslutades och den nyskapade VPython användes i dess ställe. Sedan VPython skapades har flera versioner släppts för allmänheten.

Under 2016 meddelade utvecklare att klassiska VPython inte längre skulle utvecklas. Istället kommer utvecklingen att koncentreras på Glowscript- och Jupyter -implementeringar av språket.

Användande

VPython är ett enkelt renderingsverktyg för 3D-objekt och grafer. Dess huvudsakliga användning har varit inom utbildning, men den har också använts i kommersiella eller forskningsmiljöer. VPython användes först i inledande fysikkurser på Carnegie Mellon och spreds sedan till andra universitet och så småningom gymnasier, särskilt i samband med Matter & Interactions läroplanen .

En relaterad utveckling på grund av David Scherer och Bruce Sherwood är GlowScript , som gör det möjligt att skriva och köra VPython-program i en webbläsare, inklusive på mobila enheter, tack vare RapydScript Python-till-JavaScript-kompilatorn, skapad av Alexander Tsepkov. Program kan skrivas, köras och lagras på glowscript.org, och den kompilerade-till-JavaScript-koden kan exporteras och bäddas in i ens egen webbsida. John Coady har skapat den ivisual versionen för användning i IPython, numera Jupyter- miljön, med hjälp av GlowScript WebGL-grafikbiblioteken för att återge 3D-utdata i en IPython/Jupyter-anteckningsbok. Rhett Allain i sin Wired-blogg visar ett exempel på hur man använder Trinkets för att bädda in både redigerbar VPython-källkod och 3D-exekvering i sin egen webbsida.

Föremål

Se artikeln om Python för Python-syntax. Den här artikeln kommer att ta upp flera av de objekt som är specifika för VPython. Klicka här för den fullständiga dokumentationen. Cylinderobjektet är ett bra exempel på ett enkelt VPython-objekt. Här är ett exempel på en enkel cylinder som ges i VPythons dokumentation (i äldre VPython-implementationer är modulen som ska importeras vpython , inte visuell ):

     

  0    0 0  från  visuell  import  *  # Importera den visuella modulens  stav  =  cylinder  (  pos  =  (  ,  2  ,  1  ),  axel  =  (  5  ,  ,  ),  radie  =  1  ) 

VisualRef-1.gif

Några liknande objekt som erbjuds av VPython 3D-renderingsmotorn är kon- , sfär- och boxobjekt . Förutom solida objekt erbjuder VPython också grafverktyg. Här är ett exempel på en enkel graf i VPython som ges i dess dokumentation:

     
     

    

       
                från  visual.graph  import  *  # Importera graffunktioner  från  numpy  import  arange  ,  cos  ,  exp  funct1  =  gcurve  (  färg  =  färg  .  cyan  )  # Ett anslutet kurvobjekt  för  x  i  arange  (  0.  ,  8.1  ,  0.1  ):  # x går från 0 till 8  funktion1  .  plot  (  pos  =  (  x  ,  5.  *  cos  (  2.  *  x  )  *  exp  (  -  0,2  *  x  )))  # Plot 

externa länkar