게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
c언어 질문입니다.
게시물ID : programmer_14282짧은주소 복사하기
작성자 : Mirna
추천 : 0
조회수 : 686회
댓글수 : 5개
등록시간 : 2015/11/05 22:57:33
/* --------------------------------------------------------------------
* RotatePixel(): pixel(before)을 특정 각도로 회전한 위치(after)를 계산
* Input : Theta – 회전 각도 (radian)
* org – 회전 중심 픽셀 좌표 (이미지 정 중앙 픽셀)
* before – 회전 대상 픽셀 좌표
* Output : after – 회전한 픽셀 좌표
* --------------------------------------------------------------------- */

typedef struct {
 int col; // x 좌표
 int row; // y 좌표
} COORDI;
void RotatePixel(float Theta, COORDI org, COORDI before, COORDI * after)
{
 int x, y;
 double c_x, c_y;
 x = before.col - org.col;
 y = before.row - org.row;
 // 회전된 좌표 소숫점반올림
 c_x = floor((x * cos(Theta) - y * sin(Theta)) + 0.5);
 c_y = floor((x * sin(Theta) + y * cos(Theta)) + 0.5);
 after->col = c_x + org.col; // x’
 after->row = c_y + org.row; // y’
}


-------------------------------------------------------------------------------

내용은 비트맵파일을 불러와서 c언어 안의 어레이를 통해 이미지로 만들고
그걸 회전시키고 다시 비트맵파일로 저장시켜서 뽑는 과정입니다.
그안에 회전시키는 함수인데
 
다른 cpp 파일에 어레이에 관한 함수라던지 여러가지 함수들이 정의되어있습니다.
 
내용은 회전시킬 각도를 받아서 회전하는건데..
 
위 함수를 메인함수안에서 적용한다고 할시에 함수 설명 보시면 input은 각도 밖에없지않습니까?
그래서 각도를 scanf 를 받는다 치고 쓰면되는데
나머지 RotatePixe(각도,?,?,?)
?부분은 어떻게 채워넣는지 모르겠습니다..
 
한점의 이동인데 배열로 치자면 배열 전체의 점들이 모두 이동해야하는건데..
 
제가 적은 내용만으로는 혹시 정보가 부족한건지 댓글 부탁드립니다.
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호