Функция для получения ширины и высоты окна с блеском 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 конструктор.

Другие вопросы по тегам