| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Data.OctTree.Internal
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 Methods 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 Cubes.