curves
<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->
curves
<!-- zero:scaffolded-readme --> <!-- Replace the line below with what this module provides and who consumes it, then delete both comment lines. -->TODO: describe this module.
Interface
What this asset declares: the schema it conforms to, what it exposes, and the rendered structured payload.
conforms to
zero/source-extract/v2Curve and text object evaluation with Blender semantics: POLY/BEZIER splines, bevel_depth/bevel_resolution/extrude profiles, 2D fills and 3D caps. Output is a polygon mesh { vertices, faces, face_mat?, smooth }.
add(a: ?, b: ?) → void
| arg | type | description |
|---|---|---|
| a | ? | |
| b | ? |
sub(a: ?, b: ?) → void
| arg | type | description |
|---|---|---|
| a | ? | |
| b | ? |
mul(a: ?, s: ?) → void
| arg | type | description |
|---|---|---|
| a | ? | |
| s | ? |
dot(a: ?, b: ?) → void
| arg | type | description |
|---|---|---|
| a | ? | |
| b | ? |
cross(a: ?, b: ?) → void
| arg | type | description |
|---|---|---|
| a | ? | |
| b | ? |
len(a: ?) → void
| arg | type | description |
|---|---|---|
| a | ? |
unit(a: ?) → void
| arg | type | description |
|---|---|---|
| a | ? |
reversed(t: ?) → void
| arg | type | description |
|---|---|---|
| t | ? |
area(vs: ?, f: ?) → void
| arg | type | description |
|---|---|---|
| vs | ? | |
| f | ? |
new(name: ?, kind: ?) → void
| arg | type | description |
|---|---|---|
| name | ? | |
| kind | ? |
addPoints(sp: ?, n: ?) → void
| arg | type | description |
|---|---|---|
| sp | ? | |
| n | ? |
newSpline(kind: ?) → void
| arg | type | description |
|---|---|---|
| kind | ? |
handles(sp: ?) → void
Blender's AUTO / VECTOR handle rules; a missing neighbour is mirrored.
| arg | type | description |
|---|---|---|
| sp | ? |
sample(sp: ?, cu: ?, flat: ?) → void
| arg | type | description |
|---|---|---|
| sp | ? | |
| cu | ? | |
| flat | ? |
push(p: ?, r: ?, d: ?) → void
| arg | type | description |
|---|---|---|
| p | ? | |
| r | ? | |
| d | ? |
profile(cu: ?) → void
Cross-section as {u, v} offsets; second value: whether it is a closed loop. Round bevel: 4+2r points. Bevel + extrude: four quarter arcs of r+1 segments, split at 0 and 180 degrees by the extrude (Blender's point layout).
| arg | type | description |
|---|---|---|
| cu | ? |
frames(pts: ?, cyclic: ?, is2D: ?, planar: ?) → void
Per-point tangent, profile axes (U, V) and 2D miter scale. 3D curves use a minimum-twist frame; 2D curves offset within their XY plane.
| arg | type | description |
|---|---|---|
| pts | ? | |
| cyclic | ? | |
| is2D | ? | |
| planar | ? |
nb(i: ?) → void
| arg | type | description |
|---|---|---|
| i | ? |
glyphSplines(cu: ?) → void
Text as filled 2D bezier outlines (the curve pipeline Blender uses), which is what bevel_depth on text needs.
| arg | type | description |
|---|---|---|
| cu | ? |
alignShift(cu: ?, lo: ?, hi: ?) → void
| arg | type | description |
|---|---|---|
| cu | ? | |
| lo | ? | |
| hi | ? |
textOutline(cu: ?) → void
| arg | type | description |
|---|---|---|
| cu | ? |
text(cu: ?) → void
| arg | type | description |
|---|---|---|
| cu | ? |
signedArea(pts: ?) → void
| arg | type | description |
|---|---|---|
| pts | ? |
contains(pt: ?, pts: ?) → void
| arg | type | description |
|---|---|---|
| pt | ? | |
| pts | ? |
toMesh(cu: ?) → void
| arg | type | description |
|---|---|---|
| cu | ? |
vert(p: ?) → void
| arg | type | description |
|---|---|---|
| p | ? |
face(ids: ?, mat: ?) → void
| arg | type | description |
|---|---|---|
| ids | ? | |
| mat | ? |
arc(from: ?, to: ?, z0: ?, skipFirst: ?) → void
| arg | type | description |
|---|---|---|
| from | ? | |
| to | ? | |
| z0 | ? | |
| skipFirst | ? |
cap(ring: ?, dir: ?) → void
| arg | type | description |
|---|---|---|
| ring | ? | |
| dir | ? |
capAt(z: ?, dir: ?) → void
| arg | type | description |
|---|---|---|
| z | ? | |
| dir | ? |
profileFrom(bcu: ?) → void
Profile of a bevel object: its first spline, sampled like any curve.
| arg | type | description |
|---|---|---|
| bcu | ? |
taperFrom(tcu: ?) → void
Taper: the taper curve's Y along its own parameter (index-uniform), as Blender evaluates it.
| arg | type | description |
|---|---|---|
| tcu | ? |
taperAt(ys: ?, t: ?) → void
| arg | type | description |
|---|---|---|
| ys | ? | |
| t | ? |
serialize(cu: ?) → void
| arg | type | description |
|---|---|---|
| cu | ? |
deserialize(d: ?) → void
| arg | type | description |
|---|---|---|
| d | ? |
Sub-parts
Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.
Showing up to 3 levels deep. Open a part to see what it holds further down.
Problems
Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.
These counts cover only the parts this page shows. Problems on the parts it leaves out are not counted here.
Inside
1 problem across 1 itemagent_score is exposed.+ quality × 0.35
+ performance × 0.25
± compat factor
Usability ratings
Did the part work as advertised when consumers tried to drop it in. Separate from upvotes: those are taste; this is "did it function".
Scoped to this part · feeds back into the world's score.