Skip to main content
2026-11-10
3.0 is a new API. Code written for 2.0 does not run without changes. Follow Migrate from 2.0.

Check these when you upgrade

  • Breaking: three body classes. Make bodies with new Wire(kind, params), new Solid(kind, params) and new Sheet(OG_OPERATION_SWEEP, params). The 2.0 classes such as Cuboid, Polygon, Sweep and AnalyticSolid are gone.
  • Breaking: arrays, not Vector3. Points and vectors are [x, y, z].
  • Breaking: move with transform. Setting position, rotation or scale is reverted.
  • Breaking: start the kernel first. Await OpenGeometry.create(input, options) once. workerURL goes in the second argument.
  • Breaking: 2D calls are statics. Use OpenGeometry.booleanRegions2D, OpenGeometry.offsetRingVariable and the others. Offsets return line and arc edges.
  • Breaking: OpenGeometry.exportIfcBody(solid) replaces solid.prepareIfcExchange().
  • Breaking: OGError. Catch it and branch on code.
  • Breaking: the shell hollows in place. Use solid.operate(OG_OPERATION_SHELL, { thickness }).
  • Breaking: display follows drawing. A body gets its mesh when it is drawn or walked. Its surface and outline meshes are static: call updateMatrix() after you move them yourself.
  • Smooth edges. Outlines leave out smooth edges, and faceted curves shade smooth. Set appearance.smoothAngle to 0 for the 2.0 look.
  • Removed: IFC file text, STL and PDF export, projection, loft, public triangulation, and curves other than lines, circles, arcs and polylines, such as the elliptical arc. 3.0 has no spline, no ellipse and no elliptical arc. The wedge and the 2.0 Curve class are gone too. Build a wedge as a five-face OG_PRIMITIVE_POLYHEDRON, and a 2.0 Curve as an OG_PRIMITIVE_POLYLINE wire through its points.

Added

Fixed

  • A circular hole away from the profile centre extrudes.
  • Offset corners are exact arcs.
  • A point inside one of two touching solids of a body is Inside.
Last modified on November 10, 2026