Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data Solid
- nowhere :: Solid
- unitCube :: Solid
- centeredCube :: Solid
- box :: V3 Double -> Solid
- unitSphere :: Solid
- unitCylinder :: Solid
- centeredCylinder :: Solid
- unitCone :: Solid
- prism :: Double -> Shape -> Solid
- volume :: Solid -> Double
- centerOfMass :: Solid -> V3 Double
- momentOfInertia :: V3 Double -> V3 Double -> Solid -> Double
Documentation
The Boundary Representation of a solid object.
Alternatively, a region of 3d Space.
Under the hood, this is represented by an OpenCascade Shape
.
The underlying shape should either be a Solid, or a CompSolid.
While you shouldn't need to know what this means to use the library,
please feel free to report a bug if you're able to construct a Solid
where this isnt' the case (without using internal functions).
Instances
Monoid Solid Source # | |
Semigroup Solid Source # | While The Semigroup from |
BoundedJoinSemiLattice Solid Source # | |
Defined in Waterfall.Internal.Solid | |
Lattice Solid Source # | |
Transformable Solid Source # | |
An empty solid
Be warned that complement nowhere
does not appear to work correctly.
A cube with side lengths of 1, one vertex on the origin, another on \( (1, 1, 1) \)
centeredCube :: Solid Source #
A cube with side lengths of 1, centered on the origin
unitSphere :: Solid Source #
A sphere with radius of 1, centered on the origin
unitCylinder :: Solid Source #
A cylinder with radius 1, length 1, one of it's circular faces centered on the origin, the other centered on \( (0, 0, 1) \)
centeredCylinder :: Solid Source #
A cylinder with radius 1, length 1, centered on the origin,
A cone With a point at the origin and a circular face with Radius 1, centered on \( (0, 0, 1) \)