社区
GAME,图形处理/多媒体
帖子详情
江湖救急!!!OpenGL的问题,麻烦各位大侠路过时千万进来一看!100分
ssq237712
2003-09-18 09:36:06
我做个类似CAD的MDI窗口,在子窗口上绘图。
开始以子窗口区域作为Viewport,但发现在窗口Resize时,图形会随之改变。
现在我用Screen区域作为Viewport,但为什么在窗口上的坐标换算过去总有一些误差呢?最大化的时候,似乎就差个任务栏的高度,但非最大化的时候又不是这么回事?
到底坐标怎么换算?
初学OpenGL,麻烦各位指点详细一点。
...全文
39
8
打赏
收藏
江湖救急!!!OpenGL的问题,麻烦各位大侠路过时千万进来一看!100分
我做个类似CAD的MDI窗口,在子窗口上绘图。 开始以子窗口区域作为Viewport,但发现在窗口Resize时,图形会随之改变。 现在我用Screen区域作为Viewport,但为什么在窗口上的坐标换算过去总有一些误差呢?最大化的时候,似乎就差个任务栏的高度,但非最大化的时候又不是这么回事? 到底坐标怎么换算? 初学OpenGL,麻烦各位指点详细一点。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ssq237712
2003-09-25
打赏
举报
回复
问题已解决。也许我问的问题很菜,不过我还是奇怪,高手们为什么不愿意指点一二呢。
结贴了。
ssq237712
2003-09-24
打赏
举报
回复
提前!up up again and again.
不达目的誓不罢休
ssq237712
2003-09-22
打赏
举报
回复
?????
w1w2w3w4
2003-09-18
打赏
举报
回复
你是怎么换算的。
ssq237712
2003-09-18
打赏
举报
回复
似乎不行啊。郁闷...
知道opengl的坐标和窗口坐标应该怎么换算吗?
w1w2w3w4
2003-09-18
打赏
举报
回复
好像你在CreateParams里要给窗口类的Params.Style加上WS_CLIPCHILDREN和WS_CLIPSIBLINGS属性。Delphi中的MSHelp帮助有。我也不知道。
w1w2w3w4
2003-09-18
打赏
举报
回复
你改为scrPoint := ScreenToClient(你的窗口hwnd,Point(0, 0));试试.
ssq237712
2003-09-18
打赏
举报
回复
我是想当然尔。开始以Form区域作为Viewport时,即glviewport(0, 0, ClientWidth, ClientHeight)时,没有问题,窗口坐标(winX, winY)对应:
X := winX / clientWidth * 2 - 1;
Y := 1 - winY / clientHeight * 2;
但这时,窗口Resize时,图形也跟着改变。很讨厌的。
所以我想用Screen的区域来作为Viewport:
scrPoint := ScreenToClient(Point(0, 0));
glViewPort(scrPoint.x, scrPoint.y, Screen.Width, Screen.Height);
但奇怪的是,这时FormResize的时候,中心点Y坐标会跟着改变的,为什么?
单片机救急 期末版!!!!!
单片机救急 期末版!!!!!
Xtrabackup全备+binlog增备恢复整个数据库
江湖救急
Xtrabackup全备+binlog增备恢复整个数据库
江湖救急
山东大学2021~2022
江湖救急
笔记——计算机系统原理
计算机系统原理课救急笔记(基于期末划重点)
江湖救急
笔记——计算机网络.docx
山东大学2021~2022计网个人复习笔记
行业
分
类-设备装置-一种救急手机支付方法及系统.zip
行业
分
类-设备装置-一种救急手机支付方法及系统.zip
GAME,图形处理/多媒体
1,183
社区成员
14,336
社区内容
发帖
与我相关
我的任务
GAME,图形处理/多媒体
Delphi GAME,图形处理/多媒体
复制链接
扫一扫
分享
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章