dist/index.js
function poly2solid(top, bottom, height) {
  if (top.sides.length == 0) {
    // empty!
    return new CSG$1();
  }
  // var offsetVector = CSG.parseOptionAs3DVector(options, "offset", [0, 0, 10]);
  var offsetVector = CSG$1.Vector3D.Create(0, 0, height);
  var normalVector = CSG$1.Vector3D.Create(0, 1, 0);

  var polygons = [];
  // bottom and top
  polygons = polygons.concat(
    bottom._toPlanePolygons({
      translation: [0, 0, 0],
      normalVector: normalVector,
      flipped: !(offsetVector.z < 0)
    })
  );
  polygons = polygons.concat(
    top._toPlanePolygons({
      translation: offsetVector,
      normalVector: normalVector,
      flipped: offsetVector.z < 0
    })
  );
  // walls
  var c1 = new CSG$1.Connector(
    offsetVector.times(0),
    [0, 0, offsetVector.z],
    normalVector
  );
  var c2 = new CSG$1.Connector(
    offsetVector,
    [0, 0, offsetVector.z],
    normalVector
  );
  polygons = polygons.concat(
    bottom._toWallPolygons({
      cag: top,
      toConnector1: c1,
      toConnector2: c2
    })
  );
  // }

  return CSG$1.fromPolygons(polygons);
}
function poly2solid(top, bottom, height) {
  if (top.sides.length == 0) {
    // empty!
    return new CSG$1();
  }
  // var offsetVector = CSG.parseOptionAs3DVector(options, "offset", [0, 0, 10]);
  var offsetVector = CSG$1.Vector3D.Create(0, 0, height);
  var normalVector = CSG$1.Vector3D.Create(0, 1, 0);

  var polygons = [];
  // bottom and top
  polygons = polygons.concat(
    bottom._toPlanePolygons({
      translation: [0, 0, 0],
      normalVector: normalVector,
      flipped: !(offsetVector.z < 0)
    })
  );
  polygons = polygons.concat(
    top._toPlanePolygons({
      translation: offsetVector,
      normalVector: normalVector,
      flipped: offsetVector.z < 0
    })
  );
  // walls
  var c1 = new CSG$1.Connector(
    offsetVector.times(0),
    [0, 0, offsetVector.z],
    normalVector
  );
  var c2 = new CSG$1.Connector(
    offsetVector,
    [0, 0, offsetVector.z],
    normalVector
  );
  polygons = polygons.concat(
    bottom._toWallPolygons({
      cag: top,
      toConnector1: c1,
      toConnector2: c2
    })
  );
  // }

  return CSG$1.fromPolygons(polygons);
}
function poly2solid ( top , bottom , height ) { if ( top . sides . length == 0 ) { // empty! return new CSG$1 ( ) ; } // var offsetVector = CSG.parseOptionAs3DVector(options, "offset", [0, 0, 10]); var offsetVector = CSG$1 . Vector3D . Create ( 0 , 0 , height ) ; var normalVector = CSG$1 . Vector3D . Create ( 0 , 1 , 0 ) ; var polygons = [ ] ; // bottom and top polygons = polygons . concat ( bottom . _toPlanePolygons ( { translation : [ 0 , 0 , 0 ] , normalVector : normalVector , flipped : ! ( offsetVector . z < 0 ) } ) ) ; polygons = polygons . concat ( top . _toPlanePolygons ( { translation : offsetVector , normalVector : normalVector , flipped : offsetVector . z < 0 } ) ) ; // walls var c1 = new CSG$1 . Connector ( offsetVector . times ( 0 ) , [ 0 , 0 , offsetVector . z ] , normalVector ) ; var c2 = new CSG$1 . Connector ( offsetVector , [ 0 , 0 , offsetVector . z ] , normalVector ) ; polygons = polygons . concat ( bottom . _toWallPolygons ( { cag : top , toConnector1 : c1 , toConnector2 : c2 } ) ) ; // } return CSG$1 . fromPolygons ( polygons ) ; }
Takes two CSG polygons and createds a solid of `height`.
Similar to `CSG.extrude`, excdept you can resize either
polygon.
@param  {CAG} top    Top polygon
@param  {CAG} bottom Bottom polygon
@param  {number} height heigth of solid
@return {CSG}        generated solid
Takes two CSG polygons and createds a solid of height . Similar to CSG . extrude excdept you can resize either polygon .