mixins#
Mixin classes that compose the four functional areas of Plot3d.
All four mixins are defined in this module and are assembled into
Plot3d via multiple inheritance.
Mixin responsibilities#
ObserverMixinCamera and observer controls in spherical coordinates — position, focal point, up vector, position angle, line-of-sight FOV, and a live camera-state readout.
GeometryMixinSolar geometry primitives — Sun sphere, spherical shells, planar discs, longitude/latitude grid lines, and the Thomson sphere.
GridMeshMixinStructured-grid rendering from independent 1-D or pre-broadcast 3-D coordinate arrays: 1-D line slices, 2-D surface slices, 3-D volume slices, and isosurface contours.
StackMeshMixinRendering from stacked N-D coordinate arrays (all axes share the same shape): single points, point clouds, single splines, spline bundles, magnetic fieldlines, and free-form surfaces.
Common patterns#
Methods in GridMeshMixin and StackMeshMixin that accept
r, t, p positional arguments are decorated with
parse_mesh_params(), which promotes scalar inputs
to 1-D arrays before the method body runs.
Keyword arguments are passed through to add_mesh()
by merging stylistic defaults from pyvisual.core._styling with
caller-supplied overrides.
Classes
Mixin for adding solar geometry primitives to the 3-D scene. |
|
Mixin for rendering geometry from independent structured-grid coordinate arrays. |
|
Mixin for camera and observer controls expressed in spherical coordinates. |
|
Mixin for rendering geometry from stacked N-D coordinate arrays. |