资源简介
逐点绘制渐变三角形,不用调用库函数的方法,实现点画三角形。
代码片段和文件信息
#include
#include
#include
#include
int x0=200y0=100x1=400y1=200x2=300y2=300;
float abca0a1a2a4; //用于存储到三条边的系数
int stepskj;
int i0i1; //过三角形内一点平行于x轴的直线与三角形两边的交点
void display(void)
{
glClear (GL_COLOR_BUFFER_BIT);
glBegin(GL_POINTS);
/*****************************
方法思路:
从三角形最高顶点,由上至下,用平行于x轴的直线扫描三角形。通过确定与三角形相交的两个点的颜色参数,按比例归一化确定该条线段上
各个点的颜色参数。比例的确定,应用了三角形等比的思想,即高的比等于斜边的比。对于非平底三角形,将三角形分为上下两部分,以过y
坐标居中的点的平行线为界
*/
for(j=y2;j>y1;j--)
{
i0=((x2-x0)*(j-y2)+(y2-y0)*x2)/(y2-y0);
i1=((x2-x1)*(j-y2)+(y2-y1)*x2)/(y2-y1);
a0=((float)y2-(float)j)/(float)(y2-y0);//R
// printf(“%f\n“a0);
a1=(float)((j-y0))/(float)((y2-y0));//BL
- 上一篇:一个完整的C语言编译器
- 下一篇:汇编转为shellcode形式
相关资源
- 交互式计算机图形学 第六版 OpenGL源代
- 图形学简单绘图系统
- OpenGL迷宫山东大学图形学实验三
- 计算机图形学走样反走样时钟
- c++QT5图形学-中点画圆完整工程文件
- 西北工业大学软件学院计算机图形学
- 计算机图形学实验源代码中南民族大
- 图形学各种曲线--Bezier曲线,B-样条曲
- 鼠标交互画圆及椭圆基于Bresenham、中
- 绘制任意斜率的直线段
- QSplat:基于点绘制的图形学开山之作
- 计算机图形学简单CAD系统
- 真实感图形学
- 计算机图形学多边形种子填充算法
- 计算机图形学 消隐
- 计算机图形学作业,中点算法画椭圆
- MFC中点圆的生成算法
- 改进的有效边表算法--计算机图形学
- 最好的CS游戏opengl、C++实现
- 梁友栋-直线裁剪算法图形学mfc
- 计算机图形学 清华大学教材 及 vc++
- 孔令德的计算机图形学实验及课程设
- 图形学消隐
- 计算机图形学大作业参考代码(VC版)
- 计算机图形学 图形变换 C++ MFC
- 用visual C++ 6.0编写的计算机图形的一些
- 计算机图形学简单多边形裁剪程序
- 计算机图形学 大作业 多功能图形学程
- MFC多边形画法--计算机图形学
- 计算机图形学 visual c++ 6.0 实时动画有
评论
共有 条评论