请问有学计算机图形学的吗?用VC++时有问题.求助!!!!
我刚开始学计算机图形学.有一些问题,希望能有达人指导.我的QQ是342109027.希望能得到阁下的指导.我试着拿一段正确的程序在VC++上运行.可是就会有错误.可能是在操作VC++6.0上不会一些库的调用的问题.是不是除了编写原程序外,还要在VC++上操作些东西才能编译成功.望指教!!!谢谢!!!
#include "stdafx.h"
#include <math.h>
//画线,右手坐标系(x向右,y向上),也适合左手坐标系
//起点:x0,y0
//终点:x1,y1
//画线颜色 color
void Bresenham_Line(HDC hdc,int x0,int y0,int x1,int y1,long color)
{
int x,y,dx,dy,e;
int i,temp;
int change=0; //如果直线斜率<=1, change=0; 否则change=1
int Step_X=1,Step_Y=1; //取值为1 或 -1 ,表示迭代过程中 x坐标和y坐标变化的方向
dx=x1-x0, dy=y1-y0;
if(dx<0) {
dx=-dx; //dx始终为正
Step_X=-1;//改变x的迭代方向为负,即每次迭代x减1
}
if(dy<0) {
dy=-dy; //dy始终为正
Step_Y=-1; //改变y的迭代方向为负,即每次迭代y减1
}
if(dy>dx){ //如果斜率>1
temp=dx; //交换dx和dy
dx=dy;
dy=temp;
change=1; //设置斜率>1标志
}
e=-dx, x=x0,y=y0;
for(i=0;i<=dx;i++)
{
//画点
SetPixel(hdc,x,y,color);
if(change) y=y+Step_Y; //如果斜率>1, 每次先递增(或递减)y,而后判断x的变化
else x=x+Step_X; //如果斜率<=1,每次先递增(或递减)x,而后判断y的变化
e=e+2*dy;
if(e>=0)
{
if(change) x=x+Step_X; //x的值比上一点有变化
else y=y+Step_Y; //y的值比上一点有变化
e=e-2*dx;
}
}
}
#include "stdafx.h"(错误就出现在这里)
F:\c\fg\xdf.cpp(1) : error C2014: preprocessor command must start as first nonwhite space
F:\c\fg\xdf.cpp(2) : fatal error C1083: Cannot open include file: 'stdafx.h': No such file or directory
执行 cl.exe 时出错.
xdf.obj - 1 error(s), 0 warning(s)