# Making a box with VPython

`VPython` makes it easy to create navigable 3D displays and animations, even for those with limited programming experience. Because it is based on Python, it also has much to offer for experienced programmers and researchers. `VPython` allows users to create objects such as spheres and cones in 3D space and displays these objects in a window. This makes it easy to create simple visualizations, allowing programmers to focus more on the computational aspect of their programs. The simplicity of `VPython` has made it a tool for the illustration of simple physics, especially in the educational environment.

Installation :

`pip install vpython`

A box or a cube is a geometrical object in three-dimensional space that is bounded by six square faces with three meeting at each vertex. We can generate a box in `VPython` using the `box()` method.

## box()

Syntax : box(parameters)

Parameters :

• pos : It is the position of the center of the box. Assign a vector containing 3 values, example pos = vector(0, 0, 0)
• axis : It is the axis of alignment of the box. Assign a vector containing 3 values, example axis = vector(1, 2, 1)
• up : It is the orientation of the box. Assign a vector containing 3 values, example up = vector(0, 1, 0)
• color : It is the color of the box. Assign a vector containing 3 values, example color = vector(1, 1, 1) will give the color white
• opacity : It is the opacity of the box. Assign a floating value in which 1 is the most opaque and 0 the least opaque, example opacity = 0.5
• shininess : It is the shininess of the box. Assign a floating value in which 1 is the most shiny and 0 the least shiny, example shininess = 0.6
• emissive : It is the emissivity of the box. Assign a boolean value in which True is emissive and False is not emissive, example emissivity = False
• texture : It is the texture of the box. Assign the required texture from the textures class, example texture = textures.stucco
• length : It is the length of the box in the x direction in the simple case. Assign a floating value, the default length is 1, example length = 10
• height : It is the height of the box in the y direction in the simple case. Assign a floating value, the default height is 1, example height = 10
• width : It is the width of the box in the z direction in the simple case. Assign a floating value, the default width is 1, example width = 10
• size : It is the size of the box. Assign a vector containing 3 values representing the length, height and width respectively, the default size is (2, 2, 2), example size = vector(1, 1, 1)

All the parameters are optional.

Example 1 :A box with no parameters, all the parameters will have the default value.

 `# import the module ` `from` `vpython ``import` `*` `box() `

Output : Example 2 :A box using the parameters color, opacity, shininess and emissivity.

 `# import the module ` `from` `vpython ``import` `*` `box(color ``=` `vector(``1``, ``0.6``, ``0``),  ` `    ``opacity ``=` `0.5``,  ` `    ``shininess ``=` `1``,  ` `    ``emissive ``=` `False``) `

Output : Example 3 :Displaying 2 boxes to visualize the attributes pos and size.

 `# import the module ` `from` `vpython ``import` `*` ` `  `# the first box ` `box(pos ``=` `vector(``-``2``, ``2``, ``0``), ` `    ``size ``=` `vector(``1``, ``1``, ``1``), ` `    ``color ``=` `vector(``0``, ``1``, ``0``)) ` ` `  `# the second box ` `box(pos ``=` `vector(``1``, ``-``2``, ``0``),  ` `    ``size ``=` `vector(``3``, ``3``, ``3``), ` `    ``color ``=` `vector(``1``, ``1``, ``0``)) `

Output : Example 4 :A box using the parameters texture, axis and up.

 `# import the module ` `from` `vpython ``import` `*` `box(texture ``=` `textures.stucco, ` `    ``axis ``=` `vector(``1``, ``2``, ``2``), ` `    ``up ``=` `vector(``-``1``, ``2``, ``2``)) `

Output : Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out - check it out now!

Previous
Next