← Ecky CAD / Ecky Language Reference

REFERENCE / 02

Language Overview

An .ecky file describes geometry with parenthesized expressions. A call starts with a function name followed by its arguments: (box 60 30 4) makes a box. Calls can contain other calls: (translate 10 0 0 (box 60 30 4)) moves that box along X.

Lengths use millimetres and rotations use degrees. Trigonometric helpers such as sin use radians. A value like 2cm converts to 20 millimetres; it is not a different geometry type.

A complete file contains one model. Its params declare controls and its part forms name the output geometry. Reusable functions and components go before the model.

(model
  (params (number width 60mm :min 20 :max 120))
  (part plate (box width 30 4)))

A Solid has volume; a Sketch is a planar profile; a Path describes a route; a Frame describes position and orientation. The argument type matters: extrude takes a profile, while translate can move a profile or a solid.

For a first model, start with the bracket chapter. Use this reference to look up a call while editing. Square brackets in signatures mark optional arguments; do not type the brackets. Examples containing names such as body or profile are fragments: those names must be defined in the surrounding model.