diff options
Diffstat (limited to 'src/Wavefront/Types.hs')
-rw-r--r-- | src/Wavefront/Types.hs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/Wavefront/Types.hs b/src/Wavefront/Types.hs index 2ab48ba..fe49a57 100644 --- a/src/Wavefront/Types.hs +++ b/src/Wavefront/Types.hs | |||
@@ -132,7 +132,20 @@ data EmbeddedCurve = EmbeddedCurve | |||
132 | data Curve = Curve | 132 | data Curve = Curve |
133 | deriving (Eq,Ord,Show) | 133 | deriving (Eq,Ord,Show) |
134 | 134 | ||
135 | data CSType = Bmatrix | Bezier | Bspline | Cardinal | Taylor | ||
136 | deriving (Eq,Ord,Show,Enum) | ||
137 | |||
135 | data Surface = Surface | 138 | data Surface = Surface |
139 | { surfIsRational :: !Bool | ||
140 | , surfDegree :: !(Int,Int) | ||
141 | , surfType :: !CSType | ||
142 | , surfPoints :: [FaceIndex] | ||
143 | , surfRangeU :: !(Float,Float) | ||
144 | , surfRangeV :: !(Float,Float) | ||
145 | , surfKnotsU :: ![Float] | ||
146 | , surfKnotsV :: ![Float] | ||
147 | -- TODO: trim/hole/special | ||
148 | } | ||
136 | deriving (Eq,Ord,Show) | 149 | deriving (Eq,Ord,Show) |
137 | 150 | ||
138 | -- | A point is a single index that references the locations. It’s a canonical | 151 | -- | A point is a single index that references the locations. It’s a canonical |