Функция для получения ширины и высоты окна с блеском haskell
Есть ли функция, похожая на JS screen.width
а также screen.height
в Haskell с библиотекой глянцевой графики, которая возвращает ширину и высоту экрана?
2 ответа
Есть функция в Graphics.Gloss.Interface.Environment
называется getScreenSize
это вернуть IO (Int,Int)
первое значение - ширина, второе - высота.
Я не думаю, что глянец сам экспортирует эту возможность, но вы можете использовать эти вызовы из пакета GLFW, чтобы определить разрешение экрана:
import Graphics.UI.GLFW
main = do
initialize
desktopMode >>= print
putStrLn "all video modes:"
videoModes >>= mapM_ print
Обратите внимание, что gloss
может быть скомпилирован для использования GLUT или GLFW. Если глянец использует GLFW в качестве интерфейса к Open GL, он вызывает GLFW initialize
Функция при создании окна, и, возможно, есть проблема с вызовом initialize
дважды в одном и том же процессе, но я в этом сомневаюсь.
Затем вы можете использовать эти размеры для задания области рисования при создании глянцевого окна с FullScreen
конструктор.