Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data Cube a = Cube {}
- r_x :: Cube a -> a
- r_y :: Cube a -> a
- r_z :: Cube a -> a
- r_w :: Cube a -> a
- r_h :: Cube a -> a
- r_d :: Cube a -> a
- cubeContainsCube :: (Num a, Ord a) => Cube a -> Cube a -> Bool
- cubeContainsPoint :: (Ord a, Num a) => Cube a -> V3 a -> Bool
- cubeCorners :: Num a => Cube a -> Oct (V3 a)
- data Free a
- data Oct a = Oct !(V4 a) !(V4 a)
- pattern Oct8 :: a -> a -> a -> a -> a -> a -> a -> a -> Oct a
- normalize :: (Num a, Ord a) => Cube a -> Cube a
- intersects :: (Ord a, Num a) => Cube a -> Cube a -> Bool
- cubeSize :: Num a => Cube a -> a
- getIntersect :: (Ord a, Num a) => Cube a -> Cube a -> Maybe (Cube a)
- unwrap :: Free a -> Oct (Free a)
- fuse :: Eq a => Free a -> Free a
- doFuse :: Eq a => Oct (Free a) -> Free a
Documentation
An axis-aligned bounding box in 3-space.
Instances
Functor Cube Source # | |
Generic (Cube a) Source # | |
Read a => Read (Cube a) Source # | |
Show a => Show (Cube a) Source # | |
Eq a => Eq (Cube a) Source # | |
Ord a => Ord (Cube a) Source # | |
type Rep (Cube a) Source # | |
Defined in Data.OctTree.Internal type Rep (Cube a) = D1 ('MetaData "Cube" "Data.OctTree.Internal" "nspace-0.2.0.0-JcrzAw5ubjR6TX1H0E6SmC" 'False) (C1 ('MetaCons "Cube" 'PrefixI 'True) (S1 ('MetaSel ('Just "r_pos") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (V3 a)) :*: S1 ('MetaSel ('Just "r_size") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (V3 a)))) |
cubeContainsCube :: (Num a, Ord a) => Cube a -> Cube a -> Bool Source #
is true when containsCube
c1 c2c2
is inside or equal to c1
.
cubeContainsPoint :: (Ord a, Num a) => Cube a -> V3 a -> Bool Source #
Does the cube contain a given point?
Free
, but with better instances.
Instances
An 8-tuple of values.
Instances
Foldable Oct Source # | |
Defined in Data.OctTree.Internal fold :: Monoid m => Oct m -> m # foldMap :: Monoid m => (a -> m) -> Oct a -> m # foldMap' :: Monoid m => (a -> m) -> Oct a -> m # foldr :: (a -> b -> b) -> b -> Oct a -> b # foldr' :: (a -> b -> b) -> b -> Oct a -> b # foldl :: (b -> a -> b) -> b -> Oct a -> b # foldl' :: (b -> a -> b) -> b -> Oct a -> b # foldr1 :: (a -> a -> a) -> Oct a -> a # foldl1 :: (a -> a -> a) -> Oct a -> a # elem :: Eq a => a -> Oct a -> Bool # maximum :: Ord a => Oct a -> a # | |
Traversable Oct Source # | |
Applicative Oct Source # | |
Functor Oct Source # | |
Monoid a => Monoid (Oct a) Source # | |
Semigroup a => Semigroup (Oct a) Source # | |
Generic (Oct a) Source # | |
Show a => Show (Oct a) Source # | |
Eq a => Eq (Oct a) Source # | |
Ord a => Ord (Oct a) Source # | |
type Rep (Oct a) Source # | |
Defined in Data.OctTree.Internal type Rep (Oct a) = D1 ('MetaData "Oct" "Data.OctTree.Internal" "nspace-0.2.0.0-JcrzAw5ubjR6TX1H0E6SmC" 'False) (C1 ('MetaCons "Oct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (V4 a)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (V4 a)))) |
getIntersect :: (Ord a, Num a) => Cube a -> Cube a -> Maybe (Cube a) Source #
Compute the intersection of two Cube
s.