我有一個執行的每一幀和其經過的時間自應用程序啓動時爲浮動參數傳遞這個timeHandler功能:哈斯克爾光澤:做每N幀
timeHandler :: Float -> World -> World
timeHandler time = ... my funcs ...
現在我有一個函數不需要執行EACH幀,而是例如每10幀。所以,我想我會使用MOD功能這一點,但,這不是工作:
timeHandler time = if (((floor time) `mod` 10) == 0) then myFunc else id
我想我會執行的函數,只有當除以10的時候沒有留下休息值,或者換句話說:執行它每10秒(至少這是我的想法)。但(顯然)它不起作用,似乎情況總是如此。
如果有人可以幫助我,這將是非常感謝!
此致敬禮, Skyfe。
你的函數按你期望的方式工作 - 它將每10秒鐘應用'myFunc' 1秒鐘。如果你需要確定這一點 - '地圖(\時間 - >((樓層時間)'mod' 10)== 0)[9.95,10.00..11.05]'。你的錯誤幾乎肯定是其他地方。 – user2407038 2014-10-30 06:39:41