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:
radius`float`, default: 0.5

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_resolution`int`, default: 30

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

phi_resolution`int`, default: 30

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

start_theta`float`, default: 0.0

Starting azimuthal angle in degrees `[0, 360]`.

end_theta`float`, default: 360.0

Ending azimuthal angle in degrees `[0, 360]`.

start_phi`float`, default: 0.0

Starting polar angle in degrees `[0, 180]`.

end_phi`float`, default: 180.0

Ending polar angle in degrees `[0, 180]`.

Returns:
`pyvista.PolyData`

Sphere mesh.

`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)
```

Create a quarter sphere by setting `end_theta`.

```>>> sphere = pv.Sphere(end_theta=90)
>>> out = sphere.plot(show_edges=True)
```

Create a hemisphere by setting `end_phi`.

```>>> sphere = pv.Sphere(end_phi=90)
>>> out = sphere.plot(show_edges=True)
```