11-17行宣告
float angleX[30], angleY[30], angleZ[30];
float angleX0[30]={0,-24, };
float angleX1[30]={0,+24, };
float angleY0[30]={0,-9, };
float angleY1[30]={0,18};
float posX[30],posY[30],posZ[30];
int nowID=13
297行
void motion(int x, int y)
{
if(mode==1){///translate
posX[nowID]+=(x-oldX)/300.0;
posY[nowID]-=(y-oldY)/300.0;
printf("glTranslatef(%.2f, %.2f, %.2f);\n", posX[nowID], posY[nowID], 0);
}else if(mode==2){
angleX[nowID]+= x-oldX;
angleY[nowID]+= y-oldY;
printf("angleX:%.0f, angleY:%.0f\n", angleX[nowID], angleY[nowID]);
if(angleX[nowID]<angleX0[nowID])angleX[nowID]=angleX0[nowID];
if(angleX[nowID]>angleX1[nowID])angleX[nowID]=angleX1[nowID];
if(angleY[nowID]<angleY0[nowID])angleY[nowID]=angleY0[nowID];
if(angleY[nowID]>angleY1[nowID])angleY[nowID]=angleY1[nowID];
}
oldX=x; oldY=y;
glutPostRedisplay();
}

沒有留言:
張貼留言