docs/csg.js
function(normal, point, length) {
            var plane = CSG.Plane.fromNormalAndPoint(normal, point);
            var onb = new CSG.OrthoNormalBasis(plane);
            var crosssect = this.sectionCut(onb);
            var midpiece = crosssect.extrudeInOrthonormalBasis(onb, length);
            var piece1 = this.cutByPlane(plane);
            var piece2 = this.cutByPlane(plane.flipped());
            var result = piece1.union([midpiece, piece2.translate(plane.normal.times(length))]);
            return result;
        }
function(normal, point, length) {
            var plane = CSG.Plane.fromNormalAndPoint(normal, point);
            var onb = new CSG.OrthoNormalBasis(plane);
            var crosssect = this.sectionCut(onb);
            var midpiece = crosssect.extrudeInOrthonormalBasis(onb, length);
            var piece1 = this.cutByPlane(plane);
            var piece2 = this.cutByPlane(plane.flipped());
            var result = piece1.union([midpiece, piece2.translate(plane.normal.times(length))]);
            return result;
        }
function ( normal , point , length ) { var plane = CSG . Plane . fromNormalAndPoint ( normal , point ) ; var onb = new CSG . OrthoNormalBasis ( plane ) ; var crosssect = this . sectionCut ( onb ) ; var midpiece = crosssect . extrudeInOrthonormalBasis ( onb , length ) ; var piece1 = this . cutByPlane ( plane ) ; var piece2 = this . cutByPlane ( plane . flipped ( ) ) ; var result = piece1 . union ( [ midpiece , piece2 . translate ( plane . normal . times ( length ) ) ] ) ; return result ; }
cut the solid at a plane, and stretch the cross-section found along plane normal
cut the solid at a plane and stretch the cross - section found along plane normal