それぞれ立方体の中心と辺の長さを表すaPoint
と aを取る関数を Haskell で書いています。Double
はPoint
ですtype Point = [Double]
。
関数シグネチャはgetCubeFaces :: Cube -> [Face]
、 aFace
とdata Face = Face [Point]
a の場所Cube
ですdata Cube = Cube Point Double
。
私の質問は、どうすればこれを行うことができますか? 私は素朴なアプローチを試みました
[ Face [ [-1, 1, 1], [1, 1, 1] ...
6 つの顔すべてを 8 つのポイントで記述したリストにしますが、これは本当に見苦しいものです。
これを行うためのより直感的/パターン化された方法はありますか(法線ベクトルにアクセスする必要はありません)?