求教:OpenGl中是否有能够直接加入视角与被描述物体的函数?

unicomhcg 2004-12-21 11:45:35
title说的不是很清楚
我想做成这样一个效果:
将被观测物体位置固定,然后可以随意调节观察角度,将三维的物体平面投影到二维平面上面,无论什么思路,只要有用,都表示感谢啦
...全文
106 点赞 收藏 16
写回复
16 条回复
unicomhcg 2004年12月30日
好的,多谢诸位啦,好几天没有过来了,这里的兄弟们真是热心肠啊,多谢多谢!
回复 点赞
unicomhcg 2004年12月28日
天啊,遍历3d物体的所有点?!!!运算量会很大的啊
回复 点赞
myling 2004年12月28日
……

遍历所有点

判断每个点是否在平面内
回复 点赞
unicomhcg 2004年12月28日
多谢myling,这个思路应该可行的,平移交点比较容易,请问,如何找出平面与物体的所有交点?是自己定义矩阵变换,还是opengl里面有具体的函数呢?
回复 点赞
Truefly 2004年12月28日
又看了下,发现楼主的意思是找轮廓,请问楼主到底是找轮廓的二维坐标,还是要画轮廓就行了,画轮廓很简单,不贴图直接画成3维就行了(屏幕本身不是二维的?,画出来肯定是一种颜色,不就是二维了?),如果要知道轮廓的二维坐标可以用gluproject把world坐标project到window坐标,再用glDrawPixel画出来也可以。
回复 点赞
myling 2004年12月28日
好像看懂一点了

试试这样

用一个和投影面平行的平面去穿过物体,
求出平面与物体的所有交点(应该是一个二维平面吧?)

然后平移所有交点到投影平面上就行了

这个应该不难实现吧?
回复 点赞
Truefly 2004年12月28日
先gluperspective
然后glulookat
最基本的ogl东东。
回复 点赞
myling 2004年12月28日

老大出马,一个顶俩
回复 点赞
寻开心 2004年12月28日
就用planar shadow方法,
自己可以构造一个投影矩阵
把这个投影矩阵当作world矩阵使用,
它就可以把三维的模型投影到任意一个2维的平面上
绘制这个投影出来的模型就是了




回复 点赞
huhenan2004 2004年12月28日
opengl里面有个可以设置视点漫游的函数啊叫什么:glulookat()

试试看,试试看
回复 点赞
myling 2004年12月28日
这有啥?

你要画这个3D物体还不是一个点一个点画的?

画完了顺便判断一下就行了
回复 点赞
unicomhcg 2004年12月27日
对不起诸位啦,看来还是我没有说清楚
是投影的变换,不过就是简单的要找出轮廓,比如说:古墓丽影里面的劳拉,是一个三维的模型,可是,当在电脑上面确定乐一个视角的时候,显示器上面的图形却是二维的,那么,应该怎么样把这个二维的轮廓找出来呢?这就达到乐我的目的乐。
myling说的的确不错,opengl里面有一个glproject可以进行投影的,但是那也只能作出来3d的效果,不能做到2d的。
多谢诸位乐。
多谢“菠萝蜜汁红塔山”,“太平洋”。
其实入彀能够作出来主视图俯视图也可以的,但是归根到底还是要作出二维投影的轮廓来,谢谢啦!
回复 点赞
myling 2004年12月24日
看了半天,好像就是投影和视图的变换吧?

D3D和opengl里都有现成的函数阿
回复 点赞
syy64 2004年12月23日
利用视图矩阵,看看阴影的制作。
回复 点赞
unicomhcg 2004年12月21日
对不起啊,是我自己对问题没有足够理解
是这样的,我需要作一个轮廓匹配的方案,其中有些因素是已知的:
1。已有的人体照片。
2。从人体照片上面找出的人体轮廓。
3。已有的三维人体模型。
4。确定的观测视角。

我需要完成的工作:
利用1:确定的观测视角与2:现有的三维人体模型
来画出人体模型的轮廓(是三维人体模型的轮廓),也就是相当于三维人体模型的二维平面投影(透视角度或无透视的都可以)。

我听说OpenGl里面有这样的函数,输入已知视角与人体模型,然后可以将轮廓找出来。
请各位指点一下,多谢!

ps:接下来还要将三维人体的二维投影轮廓与现在已经有的现实人的轮廓进行比较并进一步匹配,还不知道改如何下手,最近看了一些论文,正在整理思路,晚上出门看到路灯都会想到光源的角度问题,:(....
回复 点赞
capoatguitar 2004年12月21日
好象还是没说清楚,要得是什么样的效果?
回复 点赞
发动态
发帖子
机器视觉
创建于2007-08-27

2562

社区成员

1.4w+

社区内容

图形图像/机器视觉
社区公告
暂无公告