2020年6月23日 星期二

wk18

先安裝好 OpenCV 並設定好
OpenCV 安裝方法

並開啟老師做的檔案
File --> Open --> 開啟 .cbp檔


void special(int key, int x, int y)
{
    if(key==GLUT_KEY_UP) nowID--;
    if(key==GLUT_KEY_DOWN) nowID++;
    if(nowID<0) nowID=0;
    if(nowID>29) nowID=29;
}


理解BPM為Beat per min


讓他可以不會轉過頭

float angleX0[30]={0,-24};
float angleX1[30]={0,24};
float angleY0[30]={0,-9};
float angleY1[30]={0,18};
.
.
.
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();
}

all the Scripts: Here


沒有留言:

張貼留言