BezierCurveCubic¶
Qualified name: algan.mobs.bezier\_circuit.BezierCurveCubic
- class BezierCurveCubic(*args, filled=None, **kwargs)[source]¶
Bases:
BezierCircuitCubicAn open path of cubic bezier curves – a stroke with no interior.
A
BezierCircuitCubicwithfilled=False, which is the whole difference: there is no fill to paint, so the color you set is the stroke’s,stroke_color. The stroke stays centred on the path rather than being laid inward from an outline, which is whatLineis built on.The control points need not describe a closed loop, and need not lie in a plane either: an open path bounds no surface, so a 3-D curve keeps its true position in space and is drawn by splitting it into near-straight runs, each turned to face the camera so the stroke keeps a constant width on screen. That decision is made once, from the control points you construct it with (see the tutorial). Nothing stops the path from closing – a closed path drawn as a curve is an outline.
- Parameters:
*args – Passed to
BezierCircuitCubic, exceptfilled, which is alwaysFalse.colorstands in forstroke_colorwhen that was not given, as it does on aLine, since an unfilled path has no fill for it to act on otherwise.**kwargs – Passed to
BezierCircuitCubic, exceptfilled, which is alwaysFalse.colorstands in forstroke_colorwhen that was not given, as it does on aLine, since an unfilled path has no fill for it to act on otherwise.
See also
BezierCircuitCubicThe filled counterpart, and where the parameters are documented.
Examples
Example: Example1BezierCurveCubic ¶
from algan import * import torch BezierCurveCubic( torch.tensor([[-2.0, -1.0, 0.0], [-1.0, 2.0, 0.0], [1.0, -2.0, 0.0], [2.0, 1.0, 0.0]]), stroke_color=YELLOW, ).spawn() Scene.save_video()
Methods
Attributes
animation_managerThis mob's scene-owned animation manager.
basisThe Mob's orientation and scale, as a flattened 3x3 matrix of shape
(*, 9).casts_shadowsWhether this Mob's geometry blocks light on its way from a light source to another surface -- whether it casts a shadow.
childrenThe Mobs attached below this one, in attachment order.
closed_shellWhether this Mob's triangles form a CLOSED shell -- every camera ray that enters the geometry crosses a second time on its way out.
draws_descendantsWhether
get_render_primitivesreturns geometry belonging to this Mob's DESCENDANTS as well as its own.forwardGet the direction the Mob is facing.
lifespanThis mob's [spawn, despawn) interval on its Scene timeline (a
Lifespan).locationThe Mob's position in world space, shape
(*, 3).normalized_basisThe Mob's orientation with scale divided out, shape
(*, 9).parentsThe Mobs this one is attached to, in attachment order.
receives_shadowsWhether this Mob's surfaces are darkened by shadows cast onto them.
rightGet the Mob's own rightward direction.
scale_coefficientThe Mob's scale along its own right, up and forward axes, shape
(*, 3).stroke_colorThe color of the circuit's border stroke.
two_sidedWhether this Mob's geometry should be lit from whichever side the ray arrives on.
upGet the Mob's own upward direction.
xThe Mob's x coordinate in world units, shape
(*, 1).xyThe Mob's x and y coordinates in world units, shape
(*, 2).yThe Mob's y coordinate in world units, shape
(*, 1).zThe Mob's z coordinate in world units, shape
(*, 1).z_indexWhich of two exactly coplanar circuits draws in front (higher wins).