User Tools


Summary of V2 Changes

Core Library (Previously named CSG)

The core library has been fundamentally changed to acheive several goals.

  • math functions have been rewritten based on the glmatrix library, which is array based data for WEBGL use
  • geometry has been simplified to arrays of data to improve memory usage and performance
    • geom2 - 2D geometries
    • geom3 - 3D geometries
    • path2 - 2D paths
  • APIs have been standardized, and now align to JavaScript standards for interoperability
  • tests for everything, no more unknowns

Changes to Primitive Shapes

  • square / rectangle, circle / ellipse, cube / cuboid, sphere / ellipsoid, torus
  • NEW star primitive
  • APIs have been standardized
  • all angles / rotations are now based on radians. Use degToRad() to convert easily.
  • major rewrites of roundedRectangle, roundedCube
  • bug fixes

Changes to Transforms

  • center, mirror, rotate, scale, transform, translate
  • APIs have been standardized
  • all rotations are now based on radians. Use degToRad() to convert easily.
  • bug fixes

Changes to Booleans

  • intersect, subtract, union
  • APIs have been standardized
  • bug fixes

Changes to Measurements

  • measureArea, measureBounds, measureVolume
  • RENAMED bounds to measureBounds
  • RENAMED area to measureArea
  • RENAMED volume to measureVolume
  • major rewrites of measureArea and measureVolume

Changes to Hulls

  • hull, hullChain
  • RENAMED chainHull to hullChain
  • changed hull to accept one or more geometries
  • NEW hull and hullChain now support path2

Changes to Expansions

NOTE: Contraction is a negative (-) expansion.

  • expand, offset
  • NEW offset function for 2D paths
  • NEW expand function for 2D paths
  • NEW offset function for 2D geometries
  • bug fixes

Changes to Extrusions

  • extrudeLinear, extrudeRectangular, extrudeRotate, extrudeFromSlices
  • RENAMED linear_extrude to extrudeLinear
  • RENAMED rectangular_extrude to extrudeRectangular
  • RENAMED rotate_extrude to extrudeRotate
  • RENAMED solidFromSlices to extrudeFromSlices
  • all angles / rotations are now based on radians
  • major rewrites of all extrusions

Changes to Hulls

  • hull, hullChain
  • RENAMED chain_hull to hullChain
  • NEW hull function for 2D paths

Removed Functionality

  • REMOVED CSG, CAG, etc. objects
  • REMOVED OpenSCAD functions / function signitures
  • REMOVED OpenSCAD math functions
  • REMOVED old text functions
    • vector_char (use vectorChar)
    • vector_text (use vectorText)
  • REMOVED functionality for 3D geometries
    • lieFlat
    • getTransformationToFlatLying
    • getTransformationAndInverseTransformationToFlatLying
    • stretchAtPlane
    • cutByPlane
    • sectionCut
  • REMOVED functionalty for 2D geometries
    • overCutInsideCorners
    • extrudeInOrthonormalBasis
    • extrudeInPlane

NOTE: We expect this functionality to be supported via small user libraries.