在Haskell中使用函数映射列表

时间:2017-03-14 05:44:00

标签: haskell

我是Haskell的新手,我正试图改变绘制路径的位置。

let redPath =  Path[Point 420 750, Point 420 550] red Solid

drawPicture 10 [redPath, movePictureObject (Vector 100 100)
redPath]

函数movePictureObject和movePoint应该使用给定的向量(100,100)更改路径的每个点。

movePoint :: Point -> Vector -> Point
movePoint (Point x y) (Vector xv yv)
  = Point (x + xv) (y + yv)

movePictureObject :: Vector -> PictureObject ->PictureObject
movePictureObject vec (Path points colour lineStyle) 
  = Path map (movePoint (points vec)) red Solid

我不确定如何正确使用地图功能,我在这里阅读了几篇文章,并观看了其他教程。

谢谢。

1 个答案:

答案 0 :(得分:1)

我的水晶球告诉我,你在最后一行只需要(map movePoint (points vec))而不是map (movePoint (points vec))