C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[18800] Re:OpenGL-내가만든 함수에서는 그리기가 않되요...
불사새 [phenix96] 1179 읽음    2002-05-23 17:45
TForm1클래스 밖에서 호출했기때문에 아무런 변화도 없는겁니다. 내부에서 호출되도록 바꿔주세요

void Cta_maindraw(void)를

void TForm1::Cta_maindraw(void)으로 하시고

TForm1의 privete나 public에 함수 선언해 주시와요...



진짜초보 님이 쓰신 글 :
: opengl 콤포넌트를 받아서 폼에 올리고 셈플 파일의 일부를 그대로 가지고 와서 조금 수정한뒤
: 컴파일 하면 정상적으로 작동 합니다. (화면에 정육면체가 나오는 거거든요)
: 그런데 내가 만든 함수에서 그리면 화면에 나오지를 않아요.
:
: void __fastcall TForm1::openglpaint(TObject *Sender)
: {
:    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
:    glPushMatrix();
:    glTranslated(0.0, 0.0, -5.0);
:    glRotatef(RotX, 1.0, 0.0, 0.0);
:    glRotatef(RotY, 0.0, 1.0, 0.0);
:    glRotatef(RotZ, 0.0, 0.0, 1.0);
:
:    glBegin(GL_POLYGON);
:       glColor3f(0.0,0.0,1.0);
:       glVertex3f(  1.0,  1.0,  1.0);
:       glVertex3f( -1.0,  1.0,  1.0);
:       glVertex3f( -1.0, -1.0,  1.0);
:       glVertex3f(  1.0, -1.0,  1.0);
:    glEnd();
:         .
:         .
:         .
:    glPopMatrix();
: }
: 이렇게 판넬 이벤트를 만들어서 그속에서 그리면 나오는데요,
:
: void Cta_maindraw(void)
: {
:         .
:         .
:         .
: }
: 이렇게 내가 함수를 만들어서 내용을 똑같이 코딩해도 되지를 않아요.
: 코맨드 버튼을 누르면 내가 만든 함수를 호출해서 화면에 그려지게 하려고 그러그던요..
: 물론 판넬 이벤트 함수속에서 그리면 프로그램 실행과 동시에 그려져서 나옵니다.
:
: 누가 아시는 분 좀 도와 주세요...
:
: 참고로 openGL판넬 콤포넌트는 이곳의 C++builder -> Components 에 195번(박정모님) 을
: 다운 받아서 사용 했고요
: 판넬 초기화 함수는 아래와 같습니다.
:
: void __fastcall TForm1::openglinit(TObject *Sender)
: {
:    glViewport(0,0,(GLsizei)OpenGLPanel1->Width,(GLsizei)OpenGLPanel1->Height);
:    glMatrixMode(GL_PROJECTION);
:    glLoadIdentity();
:    if ( OpenGLPanel1->Height==0)
:       gluPerspective(45, (GLdouble)OpenGLPanel1->Width, 1.0, 2000.0);
:    else
:       gluPerspective(45, (GLdouble)OpenGLPanel1->Width/
:                            (GLdouble)OpenGLPanel1->Height,1.0, 2000.0);
:    glMatrixMode(GL_MODELVIEW);
:    glLoadIdentity();
:    glEnable(GL_DEPTH_TEST);
:    glClearColor(0.0,0.0,0.0,1.0);
: }
: //---------------------------------------------------------------------------
:
: void __fastcall TForm1::openglresize(TObject *Sender)
: {
:    glViewport(0,0,(GLsizei)OpenGLPanel1->Width,(GLsizei)OpenGLPanel1->Height);
:    glMatrixMode(GL_PROJECTION);
:    glLoadIdentity();
:
:    if ( OpenGLPanel1->Height==0)
:       gluPerspective(45, (GLdouble)OpenGLPanel1->Width, 1.0, 2000.0);
:    else
:       gluPerspective(45, (GLdouble)OpenGLPanel1->Width/
:                            (GLdouble)OpenGLPanel1->Height,1.0, 2000.0);
:
:    glMatrixMode(GL_MODELVIEW);
:    glLoadIdentity();
: }
:

+ -

관련 글 리스트
18797 OpenGL-내가만든 함수에서는 그리기가 않되요... 진짜초보 1221 2002/05/23
18800     Re:OpenGL-내가만든 함수에서는 그리기가 않되요... 불사새 1179 2002/05/23
18801         Re:Re:OpenGL -- 감사합니다. 진짜초보 791 2002/05/23
61699             소스좀 주세요 머털이 1212 2010/06/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.