91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 20.23MB
    文件類型: .rar
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2023-08-06
  • 語言: 其他
  • 標(biāo)簽: opengl??

資源簡介

完整的OPENGL的掃描線算法,基于VS2017開發(fā)。文件已經(jīng)打好,自己找個路徑放就行

資源截圖

代碼片段和文件信息

#include??
#include??
#include
#include?“GL/glut.h“
using?namespace?std;?

void?Pixelfill(GLint?xCoord?GLint?yCoord)
{
glColor3f(1.0f?0.0f?0.0f);//設(shè)定顏色為紅色
glPointSize(3.0);//點(diǎn)大小為3像素(減少生成時間)
glBegin(GL_POINTS);
glVertex2i(xCoord?yCoord);
glEnd();
glFlush();
}
//定義用于邊表ET和活動邊表AET的通用類Edge
class?Edge
{?
public:
int?ymax;
float?x;?
float?dx;?
Edge*?next;
};?//定義用于表示像素點(diǎn)坐標(biāo)的類Point
class?Point
{?
public:?
int?x;
int?y;?
Point(int?x?int?y)?
{?
this->x?=?x;
this->y?=?y;?
}
};?
/////////////////////請使用對應(yīng)Demo/////////////////////?
//窗體寬高
//Demo1?
//const?int?windowWidth?=?18;?
//const?int?windowHeight?=?12;?
//Demo2?
//const?int?windowWidth?=?180;?
//const?int?windowHeight?=?120;
//Demo3、Demo4、Demo5?
const?int?windowWidth?=?1800;
const?int?windowHeight?=?1200;?
//多邊形頂點(diǎn)?
//Demo1?
//vector?vertices?=?{?Point(2?5)?Point(2?10)?Point(9?6)?Point(16?11)?Point(16?4)?Point(12?2)?Point(7?2)?};?
//Demo2?
//vector?vertices?=?{?Point(20?50)?Point(20?100)?Point(90?60)?Point(160?110)?Point(160?40)?Point(120?20)?Point(70?20)?};?
//Demo3?多邊形?
//vector?vertices?=?{?Point(200?500)?Point(200?1000)?Point(900?600)?Point(1600?1100)?Point(1600?400)?Point(1200?200)?Point(700?200)?};
//Demo4?箭頭?
//vector?vertices?=?{?Point(395?887)?Point(479?998)?Point(1199?433)?Point(1101?867)?Point(1294?715)?Point(1417?171)?Point(857?163)?Point(668?314)?Point(1111?321)?};?
//Demo5?閃電?
vector?vertices?=?{?Point(566?970)?Point(685?1020)?Point(754?683)?Point(985?768)?Point(1037?481)?Point(1208?546)?Point(1233?179)?Point(1140?440)?Point(951?386)?Point(899?662)?Point(668?562)?};?
//邊表?
Edge?*ET[windowHeight];?
//活動邊表?
Edge?*AET;
void?init(void)
{?
glClearColor(1.0?1.0?1.0?0.0);?
glMatrixMode(GL_PROJECTION);
gluOrtho2D(0.0?windowWidth?0.0?windowHeight);
}

void?polygonScan()?
{
//計算最高點(diǎn)的y坐標(biāo)?
int?maxY?=?0;?
for?(unsigned?int?i=0;?i {
if?(vertices[i].y?>?maxY)?
{
maxY?=?vertices[i].y;?
}?
}
//初始化ET和AET?
Edge?*pET[windowHeight];
for?(int?i=0;?i {
pET[i]?=?new?Edge();
pET[i]->next?=?nullptr;
}?
AET?=?new?Edge();
AET->next?=?nullptr;
//清空顯示窗口并設(shè)置畫點(diǎn)顏色為紅色?
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0?0.0?0.0);
glBegin(GL_POINTS);?
//建立邊表ET?
for?(int?i=0;?i {
//取出當(dāng)前點(diǎn)1前后相鄰的共4個點(diǎn),點(diǎn)1與點(diǎn)2的連線作為本次循環(huán)處理的邊,另外兩個點(diǎn)點(diǎn)0和點(diǎn)3用于計算奇點(diǎn)
int?x0?=?vertices[(i?-?1?+?vertices.size())?%?vertices.size()].x;?
int?x1?=?vertices[i].x;
int?x2?=?vertices[(i?+?1)?%?vertices.size()].x;?
int?x3?=?vertices[(i?+?2)?%?vertices.size()].x;?
int?y0?=?vertices[(i?-?1?+?vertices.size())?%?vertices.size()].y;
int?y1?=?vertices[i].y;?
int?y2?=?vertices[(i?+?1)?%?vertices.size()].y;?
int?y3?=?vertices[(i?+?2)?%?vertices.size()].y;?
//水平線直接舍棄?
if?(y1?==?y2)?continue;
//分別計算下端點(diǎn)y坐標(biāo)

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

????..A..H.?????25600??2018-10-18?18:08??掃描線填充\.vs\掃描線填充\v15\.suo

?????文件???37117952??2018-10-18?18:08??掃描線填充\.vs\掃描線填充\v15\Browse.VC.db

?????文件???73203712??2018-10-18?18:06??掃描線填充\.vs\掃描線填充\v15\ipch\AutoPCH\61737355d0251ab8\MAIN.ipch

?????文件??????84480??2018-10-18?18:06??掃描線填充\Debug\掃描線填充.exe

?????文件?????492552??2018-10-18?18:06??掃描線填充\Debug\掃描線填充.ilk

?????文件?????798720??2018-10-18?18:06??掃描線填充\Debug\掃描線填充.pdb

?????文件?????176298??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\main.obj

?????文件?????363520??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\vc141.idb

?????文件?????454656??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\vc141.pdb

?????文件????????243??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.log

?????文件????????664??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.tlog\CL.command.1.tlog

?????文件??????40776??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.tlog\CL.read.1.tlog

?????文件????????444??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.tlog\CL.write.1.tlog

?????文件???????1094??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.tlog\link.command.1.tlog

?????文件???????3908??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.tlog\link.read.1.tlog

?????文件????????422??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.tlog\link.write.1.tlog

?????文件????????219??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.tlog\掃描線填充.lastbuildstate

?????文件???????5346??2018-10-18?18:06??掃描線填充\掃描線填充\main.cpp

?????文件???????5945??2018-10-17?15:58??掃描線填充\掃描線填充\掃描線填充.vcxproj

?????文件????????949??2018-10-17?15:58??掃描線填充\掃描線填充\掃描線填充.vcxproj.filters

?????文件????????165??2018-10-17?15:45??掃描線填充\掃描線填充\掃描線填充.vcxproj.user

?????文件???????1459??2018-10-17?15:45??掃描線填充\掃描線填充.sln

?????目錄??????????0??2018-10-18?18:05??掃描線填充\.vs\掃描線填充\v15\ipch\AutoPCH\61737355d0251ab8

?????目錄??????????0??2018-10-17?15:46??掃描線填充\.vs\掃描線填充\v15\ipch\AutoPCH

?????目錄??????????0??2018-10-17?15:46??掃描線填充\.vs\掃描線填充\v15\ipch

?????目錄??????????0??2018-10-18?18:08??掃描線填充\.vs\掃描線填充\v15

?????目錄??????????0??2018-10-18?18:06??掃描線填充\掃描線填充\Debug\掃描線填充.tlog

?????目錄??????????0??2018-10-17?15:45??掃描線填充\.vs\掃描線填充

?????目錄??????????0??2018-10-18?18:06??掃描線填充\掃描線填充\Debug

????...D.H.?????????0??2018-10-17?15:45??掃描線填充\.vs

............此處省略6個文件信息

評論

共有 條評論