可能性の重複:回転マトリックスPBMfile Haskellは
:data RGBdata= RGB Int Int Int data PBMfile= PBM Int Int [[RGBdata]]
Rotate Image .pbm Haskell
私は2のデータ型を持っているHaskellの
に回転行列についてのヘルプが必要
と私の機能「x」と「y」はそれぞれ列と行の数です(多分関数を実行するのに役立つことがあります)。例えば
:
(PBM 2 2 [[(RGB 0 255 255),(RGB 255 0 0)],[(RGB 255 255 255),(RGB 255 0 0)]])
私は逆に組み合わせを使用して左に90度回転し、移調してみてください、しかし、画像の結果が間違っています。
私は行列を回転させるが、動作しません
spin :: PBMfile -> PBMfile
spin (PBM x y l) = (PBM x y ((reverse . transpose) l))
と
spin :: PBMfile -> PBMfile
spin (PBM x y l) = (PBM x y ((transpose . reverse) l))
と
spin :: PBMfile -> PBMfile
spin (PBM x y l) = (PBM x y (((map reverse) . transpose) l))
を試してみてください。
結果は転置操作は逆の操作の前に起こるべき
http://imageshack.us/photo/my-images/52/catmc.jpg/
"画像の結果は間違っています" ... ...間違っていますか?あなたの質問を "私はXをして、Yを期待していましたが、代わりにZが起こった"という形で表現してみてください。 –
私は理解を助けるために解説を追加します – user495943
私たちの理解だけでなく、あなたの機能をテストするためにも。 kunwoo32のソリューションを独自の例に適用した結果はどうですか? –