Форум программистов, компьютерный форум, киберфорум
OpenGL
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
353 / 153 / 39
Регистрация: 11.07.2013
Сообщений: 827
1

Как сделать, чтобы изображение на экране занимало заданное количество пикселей?

19.11.2017, 15:18. Просмотров 530. Ответов 6
Метки нет (Все метки)

Необходимо, чтобы квадрат, созданный в OpenGL с координатами (1,1,z), (-1,1,z), (-1,-1,z) и (1,-1,z) занимал на экране 100х100 пиксесей. Как это можно сделать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.11.2017, 15:18
Ответы с готовыми решениями:

Как сделать чтобы под каждый столбец отводилось заданное количество символов
Текст берется из dgv. private void ToWord(DataGridView dgv,string filename,string sHeaders) ...

Сформировать на экране заданное изображение
Написать программу на Паскале,которая формирует на экране изображение.

Подскажите, как сделать в html, чтобы изображение накладывалось на другое изображение?
Нужно, чтобы изображение накладывалось на другое изображение, а другое изображение растягивалось по...

Рамка при наведении на изображение - изображение скачет, как сделать, чтобы они не изменяли позицию?
Хочу сделать рамку при наведении на изображение, но изображение скачет, как сделать, чтобы они не...

6
с++
1160 / 453 / 202
Регистрация: 15.07.2015
Сообщений: 2,295
19.11.2017, 21:23 2
https://www.opengl.org/archive... ations.htm
9.090
0
353 / 153 / 39
Регистрация: 11.07.2013
Сообщений: 827
19.11.2017, 22:17  [ТС] 3
Цитата Сообщение от Antikl Посмотреть сообщение
https://www.opengl.org/archives/reso...formations.htm
9.090
Посмотрел, но ответа на свой вопрос не нашёл.
0
547 / 1714 / 218
Регистрация: 11.08.2016
Сообщений: 1,846
19.11.2017, 22:32 4
gluProject и gluUnProject тебе в руки.
1
353 / 153 / 39
Регистрация: 11.07.2013
Сообщений: 827
20.11.2017, 14:28  [ТС] 5
Спасибо, но это опять не то. Возможно я плохо объяснил свой вопрос, поэтому постараюсь объяснить при помощи картинок.
Есть изображение, которое в перспективной проекции выглядит так:
Как сделать, чтобы изображение на экране занимало заданное количество пикселей?

Размер его в пространственных и экранных координатах я знаю. Мне необходимо (в ортгональной проекции) для последующей обработки увеличить его до требуемых размеров (размер его в пикселях может превышать размер экрана). Затем в несколько приёмов вывести эти части на экран. Т.е. углы этих частей должны строго совпадать с заданными на экране пикселями. Примерно как на картинках ниже:
Название: 4.png
Просмотров: 22

Размер: 21.7 Кб Название: 5.png
Просмотров: 22

Размер: 9.1 Кб
Название: 2.png
Просмотров: 22

Размер: 47.7 Кб Название: 3.png
Просмотров: 22

Размер: 19.7 Кб
Вариант разбиения выводимого файла на области на этапе его вывода не подходит, т.к. он состоит из треугольников (т.е. ровной границы не получится) и информация о координатах треугольников в файле не систематизирована. (Сортировка и обсчёт точек занимает более часа.)
Суть задачи в конечном итоге - получить из буфера глубины данные для определённых узлов. Количество таких узлов равно количеству пикселей.
Т.е. надо, чтобы изображение (часть изображения) занимала заданное количество пикселей и начиналось с заданной точки на экране.
0
1025 / 657 / 109
Регистрация: 12.10.2013
Сообщений: 4,275
20.11.2017, 16:38 6
Может это http://www.opengl-tutorial.org... o-texture/
Зачем вообще сохранять карту глубины?
А не проще: камера это фреза, читать карту глубины круглой области (стенсил буфер) налету получая максимум Z пикселей? Читать сеткой N точек вокруг фрезы. Может даже есть способ в OpenGL найти максимум в массиве карты глубины всех пикселей быстрей CPU.
0
353 / 153 / 39
Регистрация: 11.07.2013
Сообщений: 827
21.11.2017, 09:39  [ТС] 7
Всем спасибо за помощь! Тему можно закрывать.
Решение оказалось удивительно простым.
Если пишу:
Delphi
1
glOrtho(-1, 1, -1, 1, 0, 15.0);
То получается так:
Как сделать, чтобы изображение на экране занимало заданное количество пикселей?

Изменяю коэффициенты:
Delphi
1
glOrtho(-0.5, 0, -1, -0.5, 0, 15.0);
Получаю желаемый результат:
Как сделать, чтобы изображение на экране занимало заданное количество пикселей?

Соответственно, выполняя несложные расчёты коэффициентов с учётом разрешения окна (в пикселях) и требуемых пространственных координат можно получить требуемую часть рисунка с привязкой к пикселям.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.11.2017, 09:39

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как нарисовать на экране заданное количество окружностей и окружности не должны пересекаться?
Здравствуйте хорошие программеры, я с C# слабак и только начинаю изучать. Есть вопрос по теме: С...

Изменение размера главной формы приложения на заданное количество пикселей
Разработать приложение, позволяющее увеличивать или уменьшать размер главной формы приложения на...

Как сделать чтобы на экране 320px загружалось 600px
Как сделать чтобы на экране 320px; загружалось 600px; Фотографии прикрепил. При первой загрузке...

Как сделать, чтобы форма по-человечески появлялась на экране)) ?
Проблема в том, что на главной форме у меня несколько тяжелых компонентов, которые при...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.