학교 수업에서 OpenGL을 배운다는데
교재에 있는 코드다
#include <stdio.h>
#include <math.h>
inline int round(const float a) {
return int(a + 0.5);
}
void lineDDA(int x0, int y0, int xEnd, int yEnd) {
int dx = xEnd - x0, dy = yEnd, steps, k;
float xIncrement, yIncrement, x = x0, y = y0;
if (fabs(dx) > fabs(dy))
steps = fabs(dx);
else
steps = fabs(dy);
xIncrement = float(dx) / float(steps);
yIncrement = float(dy) / float(steps);
setPixel(round(x), round(y));
for (k = 0; k < steps; k++) {
x += xIncrement;
y += yIncrement;
setPixel(round(x), round(y));
}
}
아무것도 아는게 없어서 그냥
환경은 비주얼 스튜디오 2013에서
그냥 빈 프로젝트 생성해서 .cpp파일 만들어 실행시켰는데
컴파일 에러가 뜬다 ㅜㅜ
컴파일 에러 뜨는 부분을 보면,
round()
fabs()
setPixel() 세 부분인데..
round()는 반환형만 다른 오버로드라고 떠서 함수명을 고쳐서 해결하였고,
fabs()는 math.h 헤더 파일을 인클루드 하면 된다고 하는데 이게 잘 안고쳐짐 ㅜ
마지막으로, setPixel()은 API, MFC에서 쓰는 함수라는데
windows.h, afxwin.h 헤더파일을 인클루드 해도 안된다 ㅜㅜ
저 코드가 교재에 실려있는거라 잘못되어있는건 아닐텐데..
나 지금 무슨 삽질을 하고 있는건지 알려줄 게이 있냐 ㅜㅜ
코드가 잘못된것도 아닐텐데
뭐 한번 돌려보기가 이리 힘드냐 ㅜㅜ
무슨 풀소스 써놓은 것도 아니고 에러메시지도 안써놓고 질문이라고 처써놨네
그러네.. 이게 풀소스가 아니구나 그러고보니까
뒤에꺼 보니까 거기도 main 함수 없는데다가 setPixel 함수를 정의해서 씀. 그냥 저자가 설명하는 부분만 수도형식처럼 써놨나보다. 떙큐
풀소스 들고오던가 그리고 어디서 시건방지게 반말이야