VextCAD

VXL reference: statements

Every entry of parts[].steps[] is tagged with the step's op; an unknown op is VXL-C400.

Every op-tagged entry also carries the common fields: id id, when boolean expression, at_each at_each clause[], notes string.

The table lists only the fields each op adds beyond those common fields.

Type legend: expr is an expression (a JSON number or Boolean literal or an expression string) and a boolean expression is a Boolean literal or expression yielding a bool; [expr; 2] and [expr; 3] are tuples; an [] suffix marks a list, and (each/emit item allowed) marks a list that also takes an {"each": [clause…], "emit": template} generator item (§3.2); italic names are object shapes described in the body of this manual; required fields are bold.

op Fields
box bind new binding id, size [expr; 3], at [expr; 3], center [expr; 3], rotate rotation[]
cylinder bind new binding id, diameter expr, length expr, axis direction, at [expr; 3]
extrude bind new binding id, plane token xy/yz/xz, at expr, toward direction, length expr, profile profile loop (or a $<profile parameter> marker in a fragment body), holes profile loop (or a $<profile parameter> marker in a fragment body)[] (each/emit item allowed)
union target binding id, tool binding id, tools binding id or {binding, place?, alias?} tool item[] (each/emit item allowed), tool_place placement, bind new binding id, alias construction-name prefix, tolerance expr
cut target binding id, tool binding id or primitive cut tool, tools binding id or {binding, place?, alias?} tool item[] (each/emit item allowed), bind new binding id, tool_place placement, alias construction-name prefix, tolerance expr
intersect target binding id, tool binding id, tools binding id or {binding, place?, alias?} tool item[] (each/emit item allowed), tool_place placement, bind new binding id, alias construction-name prefix, tolerance expr
hole target binding id, targets binding id[] (or a list-parameter marker in a fragment body), diameter expr, at [expr; 3], axis direction, depth "through" or expr, counterbore counterbore, countersink countersink, thread thread
pattern target binding id, linear linear pattern, circular circular pattern, path path pattern, placements placement[], instances instance-name stem
mirror target binding id, plane mirror plane, maps map of construction names
fillet target binding id, radius expr, edges edge selection
chamfer target binding id, distance expr, edges edge selection
place target binding id, place placement
shell target binding id, thickness expr, open face selection
cone bind new binding id, base_diameter expr, top_diameter expr, length expr, axis direction, at [expr; 3]
wedge bind new binding id, size [expr; 3], width_at_y_max expr, at [expr; 3], rotate rotation[]
sphere bind new binding id, diameter expr, at [expr; 3]
torus bind new binding id, major_radius expr, minor_radius expr, axis direction, at [expr; 3]
revolve bind new binding id, plane token xy/yz/xz, profile profile loop (or a $<profile parameter> marker in a fragment body), axis revolve_axis, at expr, angle expr, holes profile loop (or a $<profile parameter> marker in a fragment body)[] (each/emit item allowed)
draft target binding id, faces face selection, angle expr, pull direction, neutral neutral plane {"through"}
face_offset target binding id, faces face selection, distance expr
variable_fillet target binding id, edges edge selection, run directed straight run {"from", "to"}, radii endpoint radii {"start", "end"}
text style token outline/stroke, stroke stroke text parameters, target binding id, content single text {"literal", "font", "size"} or spans {"spans", …}, mode token relief/engraving, depth expr, placement one of planar/paragraph/path/cylinder/general_surface placement
sweep bind new binding id, path open straight or curved path, section_x direction, profile profile loop (or a $<profile parameter> marker in a fragment body), sections arc-length sweep station[]
rod bind new binding id, path open straight or curved path, diameter expr
loft bind new binding id, sections path section[] (each/emit item allowed), at [expr; 3], rotate rotation[]
ruled bind new binding id, sections path section[] (each/emit item allowed), at [expr; 3], rotate rotation[]
guided_loft bind new binding id, sections path section[] (each/emit item allowed), guides vertex guide[] (each/emit item allowed), at [expr; 3], rotate rotation[], frame guided frame, continuity token g0/g1/g2
split target binding id, by split cutter, pieces split piece[]
split_print target binding id, by split cutter, pieces split piece[], connectors print connectors, pins new binding id
imprint target binding id, on face selection, sketch profile loop (or a $<profile parameter> marker in a fragment body), by binding id, region construction-name prefix
spur_gear bind new binding id, module expr, teeth expr, pressure_angle expr, face_width expr, root_diameter expr, tip_diameter expr, root_fillet_radius expr, profile_shift expr, thinning expr, chord expr, axis direction, at [expr; 3]
rack bind new binding id, module expr, teeth expr, pressure_angle expr, face_width expr, height expr, profile_shift expr, thinning expr, axis direction, height_dir direction, at [expr; 3]
sheet bind new binding id, plane token xy/yz/xz, at expr, toward direction, thickness expr, radius expr, k_factor expr, profile profile loop (or a $<profile parameter> marker in a fragment body), holes profile loop (or a $<profile parameter> marker in a fragment body)[] (each/emit item allowed), bends sheet bend[], fixed [expr; 2]
flange target binding id, bind new binding id, edge construction face name prefix.face, angle expr, direction token up/down, length expr, measure token outer_sharp/inner_sharp/tangent, position token material_inside/material_outside/bend_outside, radius expr, k_factor expr, span flange span, relief flange relief, profile profile loop (or a $<profile parameter> marker in a fragment body), holes profile loop (or a $<profile parameter> marker in a fragment body)[] (each/emit item allowed)
hem target binding id, bind new binding id, edge construction face name prefix.face, direction token up/down, gap expr, length expr, position token bend_outside/material_inside, k_factor expr, span flange span, relief flange relief
jog target binding id, bind new binding id, region string, line jog line, offset expr, angle expr, direction token up/down, radius expr, k_factor expr
corner target binding id, bind new binding id, edges construction face name prefix.face[], relief corner relief, gap expr, flange corner flange
dimple target binding id, region string, center [expr; 2], diameter expr, height expr, wall_angle expr, shoulder_radius expr, bottom_radius expr, direction token up/down
bead target binding id, region string, kind token capsule/through, line capsule bead line, height expr, fillet_radius expr, crown_radius expr, width expr, flank_angle expr, radius expr, k_factor expr, direction token up/down
louver target binding id, kind token cut_tab/hood, line louver line, direction token up/down, kerf expr, region string, height expr, fillet_radius expr, crown_radius expr, tongue_length expr, relief expr, angle expr, radius expr, k_factor expr
gusset target binding id, bend string, axial_center expr, height expr, fillet_radius expr, crown_radius expr, parent_extension expr, child_extension expr, side token outside/inside
unfold target binding id, bind new binding id
thicken bind new binding id, surface surface id or {select, from} lookup, along direction, normal token +/-, distance expr
sew_solid bind new binding id, patches string[], seams surface seam[]
trim_to_surface target binding id, bind new binding id, surface surface id or {select, from} lookup, keep token below/above
thread bind new binding id, form token external/internal, diameter expr, pitch expr, length expr, turns expr, outer_diameter expr, axis direction, at [expr; 3], hand token right/left, starts expr, ends token trimmed/full_profile
helix bind new binding id, radius expr, section helix section, pitch expr, turns expr, axis direction, at [expr; 3], hand token right/left, starts expr, ends token plain/closed/closed_ground, end_coils expr
import bind new binding id, asset id, source_units string, heal healing policy, at [expr; 3], rotate rotation[]
direct_edit target binding id, edit direct edit
tessellate bind new binding id, source binding id, deflection expr, angular expr
repair target binding id, bind new binding id, weld weld policy, orient bool, fill fill-all policy, remove_internal_shells bool
decimate target binding id, bind new binding id, max_deviation expr
field bind new binding id, expr field expression
extract source binding id, bind new binding id, grid explicit sample grid, mode token dense/sparse, iso expr
offset target binding id, bind new binding id, distance expr, grid sample grid
hollow target binding id, bind new binding id, wall expr, grid sample grid, drains explicit drain[]
shell_mesh target binding id, bind new binding id, thickness expr, opening opening plane, grid sample grid
reinforce target binding id, bind new binding id, wall expr, grid sample grid
deform target binding id, bind new binding id, kind token bend/twist/taper/lattice, frame mesh surface object, range [expr; 2], angle expr, turns expr, scale [expr; 2], bounds mesh surface object, offsets [expr; 3][] (each/emit item allowed), region mesh region, protect mesh region[]
conform_surface target binding id, reference binding id, bind new binding id, projection surface conform projection, thresholds bounded conform acceptance thresholds, offset expr, no_intersections bool, region mesh region, protect mesh region[]
displace target binding id, bind new binding id, map height source (PNG object or height-field expr), mapping surface mapping, amplitude expr, chord_error expr, min_edge expr, max_depth expr, profile mesh surface object, direction direction or "normal", region mesh region, protect mesh region[]
subdivide target binding id, bind new binding id, rule token midpoint/loop/adaptive, levels expr, target_edge expr, inherit_creases bool, creases mesh region[]
remesh target binding id, bind new binding id, target_edge expr, iterations expr, crease_angle expr, protect mesh region[]
smooth target binding id, bind new binding id, rule token laplacian/taubin, iterations expr, lambda expr, mu expr, crease_angle expr, protect mesh region[]
cage bind new binding id, asset string, source binding id, rule token loop/catmull_clark, levels expr
surface_grid bind new binding id, u parameter domain, v parameter domain, position [expr; 3], wrap grid wrap, poles grid poles, topology token quad/triangle, diagonal token alternate/a_c, output token mesh/cage, flip bool, creases {u: expr}, {v: expr} or "boundary"[] (each/emit item allowed), channels surface grid channel[]
polyhedron bind new binding id, kind token box/octahedron, at [expr; 3], size [expr; 3], center [expr; 3], radii [expr; 3], channels polyhedron channel[]
combine_meshes bind new binding id, sources binding id[] (each/emit item allowed), weld boundary weld, closed bool
loop_cut target binding id, bind new binding id, ring grid cell crossed-edge ring, fraction expr
edge_slide target binding id, bind new binding id, loop binding id, fraction expr
loop_remove target binding id, bind new binding id, loop binding id
dyntopo target binding id, bind new binding id, region mesh region, halo_mm expr, split expr, collapse expr, flip bool, target_growth expr, max_growth expr, selection authenticated mesh selection, locks mesh region[], drop_channels string[]
sculpt target binding id, bind new binding id, asset string, geometry_projection bool
sculpt_path target binding id, bind new binding id, brush authored path brush, points authored path point[], selection authored semantic path selection, sampling authored path sampling
import_indexed asset string, bind new binding id
mode_convert target binding id, bind new binding id, direction token bake/reproject, target_edge expr, max_vertices expr, budget_mm expr, max_lost_features expr, max_lost_channels expr, target_base binding id
multires_delta bind new binding id, neutral neutral subdivision relation, source delta source, edit delta edit
multires_open target binding id, bind new binding id, rule token loop/midpoint, level expr, budget_mm expr, backend string
detail_layer target binding id, bind new binding id, order expr, layer absolute composite layer
detail_reanchor target binding id, bind new binding id, root binding id, layers binding id[], rule token loop/midpoint, level expr, budget_mm expr, max_residual_mm expr, max_non_anchored expr
detail_transport target binding id, bind new binding id, root binding id, layers binding id[], rule token loop/midpoint, level expr, budget_mm expr, max_residual_mm expr, max_non_anchored expr
multires_apply target binding id, bind new binding id, asset string, old_base string, chunks string[], mode token reconstruct/transfer, geometry_projection bool
pose target binding id, bind new binding id, rig string, geometry_projection bool, joints map of placement
curve_sweep bind new binding id, path curve path, section curve section, section_scale curve section scale profile, frame curve frame, sampling curve sampling, twist expr, caps token none/start/end/both
scatter bind new binding id, prototype binding id, on scatter support, distribution scatter distribution, seed unsigned integer, spacing expr, axes instance axes, reference direction, scale [expr; 2], roll [expr; 2], scale_by instance scale remap
realize source binding id, bind new binding id, base binding id
bridge target binding id, bind new binding id, first mesh edit selection query or asset selection, second mesh edit selection query or asset selection, first_edge [[expr; 3]; 2], second_edge [[expr; 3]; 2]
region_extrude target binding id, bind new binding id, selection mesh edit selection query or asset selection, plane metric mesh edit plane, distance expr
region_inset target binding id, bind new binding id, selection mesh edit selection query or asset selection, plane metric mesh edit plane, width expr, max_miter_ratio expr
remove_faces target binding id, bind new binding id, selection mesh edit selection query or asset selection
refine_faces target binding id, bind new binding id, selection mesh edit selection query or asset selection, levels expr