Extruded Pill - 3D CAD Model
blueprint

Extruded Pill - 3D CAD Model

FlowCad is the fast, free, and precise web app for 3D design and printing. Build professional parametric models with ease-no programming required, but it's there if you need it.

3D Model Components

Blueprint Script (TypeScript)

const PARAMS = {
    dim: 'disabled',
    size: {
        x: 30,
        y: 10,
        z: 2,
    },
}

function createHalfCylinder(height: number, radius: number) {
    const diameter = radius * 2
    const capCutoff = Manifold.cube(diameter, true).translate([-radius, 0, 0])
    const fullCylinder = Manifold.cylinder(height, radius)
    const halfCylinder = fullCylinder.subtract(capCutoff)
    return halfCylinder
}

function createExtrudedPill(height: number, diameter: number, l: number) {
    const radius = diameter / 2

    const middleCube = Manifold.cube([l - diameter, diameter, height], true)

    let halfCylinderA = createHalfCylinder(height, radius).translate([
        l / 2 - radius,
        0,
        -height / 2,
    ])

    let halfCylinderB = createHalfCylinder(height, radius)
        .rotate([0, 0, 180])
        .translate([-l / 2 + radius, 0, -height / 2])
    return middleCube.add(halfCylinderA.add(halfCylinderB))
}

const radius = PARAMS.size.y / 2
const diameter = radius * 2
const height = PARAMS.size.z

let result = createExtrudedPill(height, diameter, PARAMS.size.x)

return { result, PARAMS }