pyvista.Sphere#

Sphere(radius=0.5, center=(0.0, 0.0, 0.0), direction=(0.0, 0.0, 1.0), theta_resolution=30, phi_resolution=30, start_theta=0.0, end_theta=360.0, start_phi=0.0, end_phi=180.0)[source]#

Create a sphere.

A sphere describes a 2D surface in comparison to pyvista.SolidSphere(), which fills a 3D volume.

PyVista uses a convention where theta represents the azimuthal angle (similar to degrees longitude on the globe) and phi represents the polar angle (similar to degrees latitude on the globe). In contrast to latitude on the globe, here phi is 0 degrees at the North Pole and 180 degrees at the South Pole. phi=0 is on the positive z-axis by default. theta=0 is on the positive x-axis by default.

Parameters:
radiusfloat, default: 0.5

Sphere radius.

centersequence[float], default: (0.0, 0.0, 0.0)

Center coordinate vector in [x, y, z].

directionsequence[float], default: (0.0, 0.0, 1.0)

Direction coordinate vector in [x, y, z] pointing from center to the sphere’s north pole at zero degrees phi.

theta_resolutionint, default: 30

Set the number of points in the azimuthal direction (ranging from start_theta to end_theta).

phi_resolutionint, default: 30

Set the number of points in the polar direction (ranging from start_phi to end_phi).

start_thetafloat, default: 0.0

Starting azimuthal angle in degrees [0, 360].

end_thetafloat, default: 360.0

Ending azimuthal angle in degrees [0, 360].

start_phifloat, default: 0.0

Starting polar angle in degrees [0, 180].

end_phifloat, default: 180.0

Ending polar angle in degrees [0, 180].

Returns:
pyvista.PolyData

Sphere mesh.

See also

pyvista.Icosphere

Sphere created from projection of icosahedron.

pyvista.SolidSphere

Sphere that fills 3D space.

Examples

Create a sphere using default parameters.

>>> import pyvista as pv
>>> sphere = pv.Sphere()
>>> sphere.plot(show_edges=True)
https://d33wubrfki0l68.cloudfront.net/775ae7e0f85ab37fd827da692920254bba711e38/a5cc9/_images/pyvista-sphere-1_00_00.png

Create a quarter sphere by setting end_theta.

>>> sphere = pv.Sphere(end_theta=90)
>>> out = sphere.plot(show_edges=True)
https://d33wubrfki0l68.cloudfront.net/c5c32636cfb1edc7eb04f165c7c97c75d1eac181/caf0f/_images/pyvista-sphere-1_01_00.png

Create a hemisphere by setting end_phi.

>>> sphere = pv.Sphere(end_phi=90)
>>> out = sphere.plot(show_edges=True)
https://d33wubrfki0l68.cloudfront.net/e4337ce78f3d3d414d5ca82ee3f39a89ffa00a80/c0680/_images/pyvista-sphere-1_02_00.png