OpenGL多边形区域裁剪

浔阳小奇葩 2010-05-07 04:15:38
GDI,GDI+中区域裁剪功能很容易用CDC:SetClip()实现.本人在OpenGL上入行尚浅,不知在OpenGL中如何实现呢?我说的不是视椎体的裁剪,是平面里的区域裁剪, region clip,即是使指定区域里的图形可见。相信这种需求在OpenGL里依然存在,请各位高手不吝赐教
...全文
934 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
浔阳小奇葩 2010-06-05
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zhangci226 的回复:]
gl中对多边形的裁剪是固定在图形管线中的,在投影变换之后会自动进行裁剪过程。

如果想在一个区域里显示一些多边形,并且每个多边形都不超出这个区域可以有2中方法,

1.手动计算

判断多边形是不是在区域内,不是话,就求多边形区和这个区域边的交点,然后重新生成新的多边形

2.利用固定图形管线

在投影变换后会自动进行裁剪,可以利用这点。如果该区域是正四边形区域的话,将该区域设置……
[/Quote]
你可以在本贴下解答我的问题吧,我把贴分直接给你吧。请详细些。
浔阳小奇葩 2010-05-26
  • 打赏
  • 举报
回复
有哪位高手指教一下,好吗?给出可行的思路也行,马上结贴
浔阳小奇葩 2010-05-10
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zhangci226 的回复:]
gl中对多边形的裁剪是固定在图形管线中的,在投影变换之后会自动进行裁剪过程。

如果想在一个区域里显示一些多边形,并且每个多边形都不超出这个区域可以有2中方法,

1.手动计算

判断多边形是不是在区域内,不是话,就求多边形区和这个区域边的交点,然后重新生成新的多边形

2.利用固定图形管线

在投影变换后会自动进行裁剪,可以利用这点。如果该区域是正四边形区域的话,将该区域设置……
[/Quote]


楼主你好,您说的第一种方法可行性不太大,太繁琐。我要求的是是一般区域,即多边形不规则区域,您能否将您说的第二种方法叙述的更详细一些?有没有参考的资料或者例程,这样最好。或者说得更具体些,对于GDI中的一般多边形区域裁剪,在OpenGL中如何实现?非常谢谢您
浔阳小奇葩 2010-05-09
  • 打赏
  • 举报
回复
是这样的,我需要在多边形区域里用某种自定义的符号图形填充。直接在多边形填充无从下手,我可以先计算该多边形的最小包围盒矩形,然后在矩形区域内按照规定的间隔画上需要的符号图形,最后只需要用多边形区域裁剪一下,如同修剪一下就达到要求了。我在GDI,GDI+很容易就实现了这个功能,可是不知在OpenGL中如何实现
张赐 2010-05-09
  • 打赏
  • 举报
回复
gl中对多边形的裁剪是固定在图形管线中的,在投影变换之后会自动进行裁剪过程。

如果想在一个区域里显示一些多边形,并且每个多边形都不超出这个区域可以有2中方法,

1.手动计算

判断多边形是不是在区域内,不是话,就求多边形区和这个区域边的交点,然后重新生成新的多边形

2.利用固定图形管线

在投影变换后会自动进行裁剪,可以利用这点。如果该区域是正四边形区域的话,将该区域设置为投影范围后,就自动裁剪了,然后再恢复原来的投影设置即可。
向立天 2010-05-08
  • 打赏
  • 举报
回复
在OpenGL里为什么要裁剪
liuhaifeng1976 2010-05-08
  • 打赏
  • 举报
回复
DINGDINGIDNG
张赐 2010-05-08
  • 打赏
  • 举报
回复
楼主是要实现什么功能?

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧