-----------------------------------------------------------------------------
{-# LANGUAGE DerivingVia #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE OverloadedStrings #-}
-----------------------------------------------------------------------------
module THREE.BoxGeometry
  ( -- * Types
    BoxGeometry (..)
  , THREE.BoxGeometry.new
  ) where
-----------------------------------------------------------------------------
import           Miso hiding (new)
-----------------------------------------------------------------------------
import           THREE.BufferGeometry (BufferGeometryClass)
import           THREE.Internal as THREE
-----------------------------------------------------------------------------
-- | https://threejs.org/docs/#api/en/geometries/BoxGeometry
newtype BoxGeometry
  = BoxGeometry
  { BoxGeometry -> JSVal
unBoxGeometry :: JSVal
  } deriving (BoxGeometry -> IO [JSVal]
(BoxGeometry -> IO [JSVal]) -> ToArgs BoxGeometry
forall args. (args -> IO [JSVal]) -> ToArgs args
$ctoArgs :: BoxGeometry -> IO [JSVal]
toArgs :: BoxGeometry -> IO [JSVal]
ToArgs, BoxGeometry -> IO Object
(BoxGeometry -> IO Object) -> ToObject BoxGeometry
forall a. (a -> IO Object) -> ToObject a
$ctoObject :: BoxGeometry -> IO Object
toObject :: BoxGeometry -> IO Object
ToObject, BoxGeometry -> IO JSVal
(BoxGeometry -> IO JSVal) -> ToJSVal BoxGeometry
forall a. (a -> IO JSVal) -> ToJSVal a
$ctoJSVal :: BoxGeometry -> IO JSVal
toJSVal :: BoxGeometry -> IO JSVal
ToJSVal) 
    deriving newtype ToObject BoxGeometry
ToJSVal BoxGeometry
Property BoxGeometry Bool
(ToObject BoxGeometry, ToJSVal BoxGeometry) =>
Property BoxGeometry Bool -> BufferGeometryClass BoxGeometry
forall geometry.
(ToObject geometry, ToJSVal geometry) =>
Property geometry Bool -> BufferGeometryClass geometry
$cisBufferGeometry :: Property BoxGeometry Bool
isBufferGeometry :: Property BoxGeometry Bool
BufferGeometryClass
-----------------------------------------------------------------------------
new
  :: (Double,Double,Double)
  -> THREE.Three BoxGeometry
new :: (Double, Double, Double) -> Three BoxGeometry
new = (JSVal -> BoxGeometry)
-> MisoString -> (Double, Double, Double) -> Three BoxGeometry
forall args con.
ToArgs args =>
(JSVal -> con) -> MisoString -> args -> Three con
THREE.new JSVal -> BoxGeometry
BoxGeometry MisoString
"BoxGeometry"
-----------------------------------------------------------------------------