-
光线跟踪
首先确定眼睛的位置和视线方向。然后确定从眼睛出发通过每个象素中心的光线方程。通过该光线求光线与场景中物体的最近交点。 若有交点,首先产生阴影测试光线,它是连接交点与光源的光线,然后计算该交点与光源间是否有阻挡物,如果没有则计算该点的Phong模型分量,若有阻挡物则不计算。若交点处的场景为反射表面,则产生反射光线,将此光线继续与场景求交。若交点处的场景具有透明性,则产生透射光线,将此光线继续与场景求交。 若无交点,则返回默认值。 最后将颜色填入相应象素中。 递归结束条件: 1.递归深度:预先设定一个递归深度值 2.光亮度值:如果反射或折射光线的光亮度贡献太小,可以忽略不计,则停止递归 本系统选择VS2008平台开发,采用MFC单文档结构作为系统的整体架构。其中,Object类为场景中物体的基类,从中派生出两个子类:Plane类和Sphere类,分别表示平面类和球面类。 Colour结构表示颜色,包含r,g,b三个颜色分量。 Material结构表示场景中物体的材质属性,包含,,三个分量,分别表示物体的漫反射系数、镜面反射系数和折射系数。 Vect结构表示场景中的点坐标。 Ray类表示光线或光源,当它表示光线时,它包含原点origin和单位方向向量dir;当它表示光源时,它还包含了光源颜色colour。 Hit类表示交点类,它包含交点处的法向量normal,交点所处的物体表面surface,交点系数t。 Scene类表示场景类,它包含物体指针数组objects,光源指针数组lights,场景物体个数nObjectCount,场景光源个数nLightCount。 CSceneLightDlg类为场景光源配置对话框,它里面显示了当前场景中的所有光源,用户可以在对话框中继续添加光源。 CSceneObjectDlg类为场景物体配置对话框,它里面显示了当前场景中的所有物体,用户可以在该对话框中继续添加物体。 CScenePictureDlg类为照片配置对话框,它里面显示当前人眼的位置、照片的大小、位置和分辨率。用户可以对该设置进行修改。 CRayTraceView类为框架的视图类,负责图片的显示。我在其中包含了一个Scene对象,光线跟踪的具体实
- 2022-03-19 03:38:04下载
- 积分:1
-
程序运行平台为AutoCAD2000简体中文版。 开发平台VC6.0及ObjectARX3.0(本程序所涉及的文件已包含在安装程序中)。 1. 解压缩sourc...
程序运行平台为AutoCAD2000简体中文版。 开发平台VC6.0及ObjectARX3.0(本程序所涉及的文件已包含在安装程序中)。 1. 解压缩source.zip到C盘,自动生成c:source目录。 2.在VC6下打开工程c:sourceMyModelessSheet.dsw。 3.编译生成c:/source/debug/MyModelessSheet.arx文件。(用Rebuild All命令) 4.启动 AutoCAD2000。选择主菜单“工具”下“加载应用程序”菜单项。 弹出加载/卸载应用程序对话框,选中c:/source/debug/MyModelessSheet.arx 单击加载按扭。关闭对话框。 5.在AutoCAD命令行输入命令MODELESSSHEET,即可显示一个无模式标签对话框。 其中属性页1和属性页2为基本子标签,扩展标签为动态扩展的。 首次运行编辑控件使用初始数据,以后运行使用注册数据,调整对话框尺寸 则编辑窗口的位置自动调整。-platform for running AutoCAD English version. VC6.0 development platform and AutoCAD2000 (the procedures involved in the document has been included in the installation procedure). 1. Decompress source.zip to C plates, automatic generation c : source directory. 2. The VC6 open the project c : source MyModelessSheet.dsw. 3. C Compiler Generation :/source/debug/MyModelessSheet.arx document. (With Rebuild All orders) 4. Start AutoCAD2000. The main menu option "Tools" under "application loading" menu item. Pop loading/unloading applicatio
- 2022-08-26 05:35:33下载
- 积分:1
-
在Visual C++中实现的Sutherland
在Visual C++中实现的Sutherland-Hodgman多边形裁剪算法-achieved by Sutherland-Hodgman polygon clipping algorithm
- 2022-04-18 16:15:54下载
- 积分:1
-
图像处理平台。可以在上面编写一些图像处理程序
图像处理平台。可以在上面编写一些图像处理程序-image processing platform. The above can be prepared in some image-processing program
- 2023-05-29 20:45:04下载
- 积分:1
-
这是OpenGL高级编程与可视化系统开发(系统开发篇)源码
这是OpenGL高级编程与可视化系统开发(系统开发篇)源码 -This is a high-level programming with OpenGL visualization system development (system development articles) source
- 2023-04-20 16:40:03下载
- 积分:1
-
/ / TetGen计算Delaunay tetrahedralizations,约束Delaunay四
// TetGen computes Delaunay tetrahedralizations, constrained Delaunay tetra- //
// hedralizations, and quality Delaunay tetrahedral meshes. The latter are //
// nicely graded and whose tetrahedra have radius-edge ratio bounded. Such //
// meshes are suitable for finite element and finite volume methods. -//TetGen computes Delaunay tetrahedralizations, constrained Delaunay tetra-////hedralizations, and quality Delaunay tetrahedral meshes. The latter are//// nicely graded and whose tetrahedra have radius-edge ratio bounded. Such//// meshes are suitable for finite element and finite volume methods.
- 2022-01-22 15:57:29下载
- 积分:1
-
general basic graphics and basic operations such as mobile, Cut, Copy, etc.
一般的基本图形及基本操作如移动,剪切,拷贝等-general basic graphics and basic operations such as mobile, Cut, Copy, etc.
- 2022-05-30 00:15:08下载
- 积分:1
-
my name is zhangheng!! zhe ge dongxi hen shuang jingbenren shiyan!!
qu yu tian chong zhe ge dongxi hen shuang jingbenren shiyan-my name is zhangheng!! zhe ge dongxi hen shuang jingbenren shiyan!!
- 2022-07-12 13:02:20下载
- 积分:1
-
用VC++开发的简化版CAD绘图程序,功能还可以自己完善和更改,可以作为学习的范例。...
用VC++开发的简化版CAD绘图程序,功能还可以自己完善和更改,可以作为学习的范例。-VC development of the CAD simplified procedures, functions they can improve and change. can be used as an example to study.
- 2022-07-20 19:18:47下载
- 积分:1
-
Constraint Delaunay triangulations,用于剖分具有外部轮廓线或内部轮廓线的离散点集...
Constraint Delaunay triangulations,用于剖分具有外部轮廓线或内部轮廓线的离散点集 -Constraint Delaunay triangulations, uses in to cut in half has
exterior contour line or the internal contour line separate set of
points
- 2023-06-05 22:15:02下载
- 积分:1