본문내용
<시뮬레이션 방법 - 마우스 및 키 사용법>
1. 마우스
왼쪽 마우스 버튼 - 초기 카메라 위치로 이동된다.
오른쪽 마우스 버튼 - 초기 카메라 초점으로 변경된다.
드래그 - 드래그시 마우스 위치(x,y)에 따라 카메라 위치 및 초점 변경하여 전체 공간 확대 및 축소, 스크롤이 가능하다.
2. 키보드
: 자동차 엑셀레이터 - 누르고 있는 동안 속도 증가
: 자동차 브레이크 - 누르고 있는 동안 속도 감소되면서 정지
: 좌회전 - 누르는 정도에 따라 앞바퀴의 각도가 최대 ±65°까지 변경되고, 바퀴 각도에 따라 회전속도가 달라짐 ex) ±65° -> 가장 빠름
: 우회전 - 누르는 정도에 따라 앞바퀴의 각도가 최대 ±65°까지 변경되고, 바퀴 각도에 다 라 회전속도가 달라짐
: 기아 - 토글버튼으로 전진기어, 후진기어 변경
: 소문자 'a' 카메라위치 X 좌표 증가
+ : 대문자 'A' 카메라위치 X 좌표 감소
: 소문자 's' 카메라위치 Y 좌표 증가
+ : 대문자 'S' 카메라위치 Y 좌표 감소
: 소문자 'd' 카메라위치 Z 좌표 증가
+ : 대문자 'D' 카메라위치 Z 좌표 감소
: 소문자 'z' 카메라초점 X 좌표 증가
+ : 대문자 'Z' 카메라초점 X 좌표 감소
: 소문자 'x' 카메라초점 Y 좌표 증가
+ : 대문자 'X' 카메라초점 Y 좌표 감소
: 소문자 'c' 카메라초점 Z 좌표 증가
+ : 대문자 'C' 카메라초점 Z 좌표 감소
[Source]
#include
#include
#include
#include
#include
#include
#include
#include
#define PI 3.14159265359f
void drag(int x,int y, int z);//마우스 drag시의 콜백선언
//자동차의 속도, 방향, 회전 속도 등을 정하는 파라매터
#define WHEELSIZE 5.0f // wheel의 반경
GLfloat curRLRotationSpeed = 0.0; // 자동차의 회전 속도 angle/frame_interval
GLfloat curRLRotationCircle = 0.0; // 자동차바퀴 각도
GLfloat curGear = 0.0; // 기어설정
GLfloat curRotSpeed =0.0; // 바퀴의 회전속도 각도/frame_interval. 자동차의 속도를 나타냄.
// curMovingSpeed = 2*3.14*WHEELSIZE * curRotSpeed / 360
GLint CUBLIST = 0; // OpenGL의 List pointer
GLfloat curXPos = -100.0f; // 자동차의 현재 위치 X
GLfloat curZPos = 45.0f; // 자동차의 현재 위치 Z
GLfloat curMovingSpeed; // 자동차 속도 pixels/frame interval
double curOrientation = 0.0; // 자동차의 현재 방향
double curTireAngle = 0.0f; // 현재 바퀴의 회전 위치
double TireAngle = 0.0f; // 무조정 자동차 바퀴회전 위치
GLdouble g_Viewer[] = {-120.0f, 120.0f, -45.0f}; // 카메라의 초기위치
GLdouble g_Center[] = {0.0, 0.0f, 0.0}; // 카메라의 초기 초점
GLint g_View = 0; // 시점의 선택용 변수
///////////////////////////////////////////////////////////////////////////////
// 3D Model definition
///////////////////////////////////////////////////////////////////////////////////
#define MdlSz 5.0f
#define HMdlSz MdlSz/2.0f
#define GROUND_LIMIT 10000
#define GROUND_LIMITF 10000.0f
.
.
.
.
1. 마우스
왼쪽 마우스 버튼 - 초기 카메라 위치로 이동된다.
오른쪽 마우스 버튼 - 초기 카메라 초점으로 변경된다.
드래그 - 드래그시 마우스 위치(x,y)에 따라 카메라 위치 및 초점 변경하여 전체 공간 확대 및 축소, 스크롤이 가능하다.
2. 키보드
: 자동차 엑셀레이터 - 누르고 있는 동안 속도 증가
: 자동차 브레이크 - 누르고 있는 동안 속도 감소되면서 정지
: 좌회전 - 누르는 정도에 따라 앞바퀴의 각도가 최대 ±65°까지 변경되고, 바퀴 각도에 따라 회전속도가 달라짐 ex) ±65° -> 가장 빠름
: 우회전 - 누르는 정도에 따라 앞바퀴의 각도가 최대 ±65°까지 변경되고, 바퀴 각도에 다 라 회전속도가 달라짐
: 기아 - 토글버튼으로 전진기어, 후진기어 변경
: 소문자 'a' 카메라위치 X 좌표 증가
+ : 대문자 'A' 카메라위치 X 좌표 감소
: 소문자 's' 카메라위치 Y 좌표 증가
+ : 대문자 'S' 카메라위치 Y 좌표 감소
: 소문자 'd' 카메라위치 Z 좌표 증가
+ : 대문자 'D' 카메라위치 Z 좌표 감소
: 소문자 'z' 카메라초점 X 좌표 증가
+ : 대문자 'Z' 카메라초점 X 좌표 감소
: 소문자 'x' 카메라초점 Y 좌표 증가
+ : 대문자 'X' 카메라초점 Y 좌표 감소
: 소문자 'c' 카메라초점 Z 좌표 증가
+ : 대문자 'C' 카메라초점 Z 좌표 감소
[Source]
#include
#include
#include
#include
#include
#include
#include
#include
#define PI 3.14159265359f
void drag(int x,int y, int z);//마우스 drag시의 콜백선언
//자동차의 속도, 방향, 회전 속도 등을 정하는 파라매터
#define WHEELSIZE 5.0f // wheel의 반경
GLfloat curRLRotationSpeed = 0.0; // 자동차의 회전 속도 angle/frame_interval
GLfloat curRLRotationCircle = 0.0; // 자동차바퀴 각도
GLfloat curGear = 0.0; // 기어설정
GLfloat curRotSpeed =0.0; // 바퀴의 회전속도 각도/frame_interval. 자동차의 속도를 나타냄.
// curMovingSpeed = 2*3.14*WHEELSIZE * curRotSpeed / 360
GLint CUBLIST = 0; // OpenGL의 List pointer
GLfloat curXPos = -100.0f; // 자동차의 현재 위치 X
GLfloat curZPos = 45.0f; // 자동차의 현재 위치 Z
GLfloat curMovingSpeed; // 자동차 속도 pixels/frame interval
double curOrientation = 0.0; // 자동차의 현재 방향
double curTireAngle = 0.0f; // 현재 바퀴의 회전 위치
double TireAngle = 0.0f; // 무조정 자동차 바퀴회전 위치
GLdouble g_Viewer[] = {-120.0f, 120.0f, -45.0f}; // 카메라의 초기위치
GLdouble g_Center[] = {0.0, 0.0f, 0.0}; // 카메라의 초기 초점
GLint g_View = 0; // 시점의 선택용 변수
///////////////////////////////////////////////////////////////////////////////
// 3D Model definition
///////////////////////////////////////////////////////////////////////////////////
#define MdlSz 5.0f
#define HMdlSz MdlSz/2.0f
#define GROUND_LIMIT 10000
#define GROUND_LIMITF 10000.0f
.
.
.
.
키워드
추천자료
- [외환론]환율하락이 주요산업에 미치는 영향 (A+리포트)
- [교육학 서브노트]교육공학
- 일본게임산업의 어제와 오늘
- 체험적 교육방법-평생교육방법
- [컴퓨터] 그래픽스에 대해서
- 우리나라 주조 기술의 현황과 앞으로의 전망에 대해 조사하기
- 청소년 인터넷(게임) 중독 실태 및 예방책
- [생산시스템][생산][생산시스템 유형][생산시스템 관리][생산시스템 설비][생산시스템 배치][...
- [정보기술관리][IT관리][정보기술][IT][정보기술관리 요소]정보기술관리(IT관리)의 요소, 정...
- 마이다스아이티 경영분석과 마이다스아이티 해외진출 현지화전략 분석및 향후전략제안
- 안드로이드 음성인식을 이용한 ATmega RC카 제어(블루투스 통신)
- 실험5 PSIM 사용법(기본 회로)
- 2017년 1학기 인터넷과정보사회 중간시험과제물 공통(웹 브라우저 점유율, AR 및 VR)
소개글