Files
purescript-mujoco-mjcf/src/Mujoco.MJCF.Geom.purs
orion kindel 88fcf9b4a3 more
2026-02-23 12:35:20 -06:00

53 lines
1.0 KiB
Plaintext

module Mujoco.MJCF.Geom where
import Mujoco.Prelude
import Mujoco.MJCF.Keyword as Kw
type Contact r =
( contype :: Int
, conaffinity :: Int
, condim :: Int
, priority :: Int
| r
)
type ContactSpacing r =
( margin :: Real
, gap :: Real
| r
)
type Solver r =
( solmix :: Real
, solref :: Real /\ Real
, solimp :: Vec5 Real
| r
)
type Props_geom =
( class :: String
, type :: Kw.Plane \/ Kw.Hfield \/ Kw.Sphere \/ Kw.Capsule \/ Kw.Ellipsoid \/ Kw.Cylinder \/ Kw.Box \/ Kw.Mesh \/ Kw.Sdf
, group :: Int
, size :: Array Real
, material :: String
, rgba :: Vec4 Real
, friction :: Vec Real
, mass :: Real
, density :: Real
, shellinertia :: Boolean
, fromto :: Array Real
, hfield :: String
, mesh :: String
, fitscale :: Real
, fluidshape :: Kw.None \/ Kw.Ellipsoid
, fluidcoef :: Vec5 Real
, user :: Array Real
| Named
+ Contact
+ ContactSpacing
+ Solver
+ Pos
+ Oriented ()
)
geom = tag @Props_geom "geom" :: Tag Props_geom