본문내용
// 헤더파일
#include
#include
#include
// 도형별 ID상수 선언
#define NOTDEFINED 0
#define CIRCLE 1
#define CIRCLEPASSIVE 2
#define RECTANGLE 3
#define POLYGONE 4
// 도형이 가지는 핵심속성인 포인트정보와 색상정보를 선언하기 위해 새로운 형을 지정한다.
typedef GLfloat point2[2]; // 하나의 점의 값(x,y)을 가질 수 있는 새로은 형을 정의
typedef GLfloat color3[3]; // 색상정보인 R,G,B 값을 가질 수 있는 새로운 형을 정의
// 각 도형 개체가 가지는 속성을 저장할 구조체를 정의하는 것으로 도형의 색상, 선의 굵기, 채우기 여부에 관한 정보를 포함한다.
struct attributeType{
color3 color; // 색상
int lineWidth; // 선의 굵기
bool fill; // 채우기 여부
};
#define CIRMAX 100 //원의 최대 개수를 100으로 정의
// 원의 정보를 저장할 구조체를 정의하는 것으로 원이 가지는 정보는 선터포인트와 보더포인트, 속성(색상, 선의 굵기, 채우기여부), 원의 인덱스넘버, 작업상태를 나타내는 정보들로 구성된다.
struct circleType {
int drawing; // 현재 진행중인지를 표시: 1: 진행중 0: 완성됨
int curNum; // 현재 원의 인덱스넘버
point2 center[CIRMAX]; // 원의 센테포인트를 저장할 배열
point2 border[CIRMAX]; // 원의 보더포인트를 저장할 배열
attributeType attrib[CIRMAX]; // 원의 속성(색상, 선의 굵기, 채우기여부)을 저장할 배열
};
// 원의 구조체 변수로 'circle'을 선언하고, drawing, curNum을 0으로 초기화한다.
circleType circle={0,0};
#define RECTMAX 100 // 사각형의 최대 개수를 100으로 정의
// 사각형의 정보를 저장할 구조체를 정의하는 것으로 원이 가지는 정보는 스타트포인트와 엔드포인트, 속성(색상, 선의 굵기, 채우기여부), 사각형의 인덱스넘버, 작업상태를 나타내는 정보들로 구성된다.
struct rectangleType {
int drawing; // 현재 진행중인지를 표시: 1: 진행중 0: 완성
int curNum; // 현재 사각형의 인덱스넘버
point2 start[RECTMAX]; // 사각형의 시작포인트를 저장할 배열
point2 end[RECTMAX]; // 사각형의 끝 포인트를 저장할 배열
attributeType attrib[RECTMAX]; // 사각형의 속성(색상, 선의 굵기, 채우기여부)을 저장할 배열
};
// 사각형의 구조체 변수로 'rectangle'을 선언하고, drawing, curNum을 0으로 초기화한다.
rectangleType rectangle={0,0};
.
.
.
.
#include
#include
#include
// 도형별 ID상수 선언
#define NOTDEFINED 0
#define CIRCLE 1
#define CIRCLEPASSIVE 2
#define RECTANGLE 3
#define POLYGONE 4
// 도형이 가지는 핵심속성인 포인트정보와 색상정보를 선언하기 위해 새로운 형을 지정한다.
typedef GLfloat point2[2]; // 하나의 점의 값(x,y)을 가질 수 있는 새로은 형을 정의
typedef GLfloat color3[3]; // 색상정보인 R,G,B 값을 가질 수 있는 새로운 형을 정의
// 각 도형 개체가 가지는 속성을 저장할 구조체를 정의하는 것으로 도형의 색상, 선의 굵기, 채우기 여부에 관한 정보를 포함한다.
struct attributeType{
color3 color; // 색상
int lineWidth; // 선의 굵기
bool fill; // 채우기 여부
};
#define CIRMAX 100 //원의 최대 개수를 100으로 정의
// 원의 정보를 저장할 구조체를 정의하는 것으로 원이 가지는 정보는 선터포인트와 보더포인트, 속성(색상, 선의 굵기, 채우기여부), 원의 인덱스넘버, 작업상태를 나타내는 정보들로 구성된다.
struct circleType {
int drawing; // 현재 진행중인지를 표시: 1: 진행중 0: 완성됨
int curNum; // 현재 원의 인덱스넘버
point2 center[CIRMAX]; // 원의 센테포인트를 저장할 배열
point2 border[CIRMAX]; // 원의 보더포인트를 저장할 배열
attributeType attrib[CIRMAX]; // 원의 속성(색상, 선의 굵기, 채우기여부)을 저장할 배열
};
// 원의 구조체 변수로 'circle'을 선언하고, drawing, curNum을 0으로 초기화한다.
circleType circle={0,0};
#define RECTMAX 100 // 사각형의 최대 개수를 100으로 정의
// 사각형의 정보를 저장할 구조체를 정의하는 것으로 원이 가지는 정보는 스타트포인트와 엔드포인트, 속성(색상, 선의 굵기, 채우기여부), 사각형의 인덱스넘버, 작업상태를 나타내는 정보들로 구성된다.
struct rectangleType {
int drawing; // 현재 진행중인지를 표시: 1: 진행중 0: 완성
int curNum; // 현재 사각형의 인덱스넘버
point2 start[RECTMAX]; // 사각형의 시작포인트를 저장할 배열
point2 end[RECTMAX]; // 사각형의 끝 포인트를 저장할 배열
attributeType attrib[RECTMAX]; // 사각형의 속성(색상, 선의 굵기, 채우기여부)을 저장할 배열
};
// 사각형의 구조체 변수로 'rectangle'을 선언하고, drawing, curNum을 0으로 초기화한다.
rectangleType rectangle={0,0};
.
.
.
.
추천자료
ms비주얼 c++ 로 만든 큐 자료구조 구현 소스 파일
Visual C++로 만든 큐(주석 달려있음)
Visual C++로 만든 스택(주석 달려있음)
Visual C++6.0으로 배우는 C언어 - 제3부 제어문과 순환문(3/7)
[C++]타이머와 삼각함수를 이용한 타원운동
삼각형 외심 구하기C++로 구현)
홀수차 마방진 C++ 소스
c++프로그래밍소스(제품판매점)class,if등중요소스.
Visual C++ 2005 MFC로 제작한 Triple 로직퍼즐 게임 소스
C++를 이용하여 만든 공학용 계산기
음주측정 구구단 c++(프로그래밍) 파워포인트
Visual C++을 이용한 CRC구현
객체지향프로그래밍, c++
컴퓨터 - c++이용한 볼링소스
소개글