Skip to content

Cadova 0.4.0

Choose a tag to compare

@tomasf tomasf released this 28 Dec 23:20
· 733 commits to main since this release

New Part API

Breaking change: Parts are now created as reusable instances instead of using string names:

// Before
Box(10).inPart(named: "bracket", type: .solid)

// After
let bracket = Part("Bracket")
Box(10).inPart(bracket)

The same Part instance used multiple times collects geometry into a single part. Different instances with the same name are treated as separate parts.

Parts can specify their semantic role and a default material applied to geometry that doesn't specify its own:

let bracket = Part("Bracket", semantic: .solid, color: .gray)
let insert = Part("Insert", color: .silver, metallicness: 0.9, roughness: 0.3)

Ruler Visualization

New Ruler type for measuring distances:

Ruler(length: 100, interval: 10)