⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 whale.cpp

📁 Fishes, is fish some prorgan
💻 CPP
📖 第 1 页 / 共 4 页
字号:
    glNormal3fv(N059);
    glVertex3fv(P059);
    glNormal3fv(N052);
    glVertex3fv(P052);
    glNormal3fv(N060);
    glVertex3fv(P060);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N059);
    glVertex3fv(P059);
    glNormal3fv(N060);
    glVertex3fv(P060);
    glNormal3fv(N067);
    glVertex3fv(P067);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N058);
    glVertex3fv(P058);
    glNormal3fv(N066);
    glVertex3fv(P066);
    glNormal3fv(N065);
    glVertex3fv(P065);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N058);
    glVertex3fv(P058);
    glNormal3fv(N065);
    glVertex3fv(P065);
    glNormal3fv(N057);
    glVertex3fv(P057);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N056);
    glVertex3fv(P056);
    glNormal3fv(N057);
    glVertex3fv(P057);
    glNormal3fv(N065);
    glVertex3fv(P065);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N056);
    glVertex3fv(P056);
    glNormal3fv(N065);
    glVertex3fv(P065);
    glNormal3fv(N006);
    glVertex3fv(P006);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N056);
    glVertex3fv(P056);
    glNormal3fv(N006);
    glVertex3fv(P006);
    glNormal3fv(N063);
    glVertex3fv(P063);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N056);
    glVertex3fv(P056);
    glNormal3fv(N063);
    glVertex3fv(P063);
    glNormal3fv(N055);
    glVertex3fv(P055);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N054);
    glVertex3fv(P054);
    glNormal3fv(N062);
    glVertex3fv(P062);
    glNormal3fv(N005);
    glVertex3fv(P005);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N054);
    glVertex3fv(P054);
    glNormal3fv(N005);
    glVertex3fv(P005);
    glNormal3fv(N053);
    glVertex3fv(P053);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N053);
    glVertex3fv(P053);
    glNormal3fv(N005);
    glVertex3fv(P005);
    glNormal3fv(N060);
    glVertex3fv(P060);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N053);
    glVertex3fv(P053);
    glNormal3fv(N060);
    glVertex3fv(P060);
    glNormal3fv(N052);
    glVertex3fv(P052);
    glEnd();
}

void
Whale013(void)
{
    glBegin(GL_POLYGON);
    glNormal3fv(N066);
    glVertex3fv(P066);
    glNormal3fv(N067);
    glVertex3fv(P067);
    glNormal3fv(N096);
    glVertex3fv(P096);
    glNormal3fv(N097);
    glVertex3fv(P097);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N097);
    glVertex3fv(P097);
    glNormal3fv(N096);
    glVertex3fv(P096);
    glNormal3fv(N098);
    glVertex3fv(P098);
    glNormal3fv(N099);
    glVertex3fv(P099);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N065);
    glVertex3fv(P065);
    glNormal3fv(N066);
    glVertex3fv(P066);
    glNormal3fv(N097);
    glVertex3fv(P097);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N067);
    glVertex3fv(P067);
    glNormal3fv(N060);
    glVertex3fv(P060);
    glNormal3fv(N096);
    glVertex3fv(P096);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N060);
    glVertex3fv(P060);
    glNormal3fv(N005);
    glVertex3fv(P005);
    glNormal3fv(N096);
    glVertex3fv(P096);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N096);
    glVertex3fv(P096);
    glNormal3fv(N005);
    glVertex3fv(P005);
    glNormal3fv(N098);
    glVertex3fv(P098);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N006);
    glVertex3fv(P006);
    glNormal3fv(N065);
    glVertex3fv(P065);
    glNormal3fv(N097);
    glVertex3fv(P097);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N006);
    glVertex3fv(P006);
    glNormal3fv(N097);
    glVertex3fv(P097);
    glNormal3fv(N099);
    glVertex3fv(P099);
    glEnd();
    glBegin(GL_POLYGON);
    glVertex3fv(P005);
    glVertex3fv(P006);
    glVertex3fv(P099);
    glVertex3fv(P098);
    glEnd();
}

void
Whale014(void)
{
    glBegin(GL_POLYGON);
    glNormal3fv(N062);
    glVertex3fv(P062);
    glNormal3fv(N004);
    glVertex3fv(P004);
    glNormal3fv(N005);
    glVertex3fv(P005);
    glEnd();
    glBegin(GL_POLYGON);
    glVertex3fv(P006);
    glVertex3fv(P005);
    glVertex3fv(P004);
    glVertex3fv(P008);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N063);
    glVertex3fv(P063);
    glNormal3fv(N006);
    glVertex3fv(P006);
    glNormal3fv(N002);
    glVertex3fv(P002);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N002);
    glVertex3fv(P002);
    glNormal3fv(N006);
    glVertex3fv(P006);
    glNormal3fv(N008);
    glVertex3fv(P008);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N002);
    glVertex3fv(P002);
    glNormal3fv(N008);
    glVertex3fv(P008);
    glNormal3fv(N004);
    glVertex3fv(P004);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N062);
    glVertex3fv(P062);
    glNormal3fv(N002);
    glVertex3fv(P002);
    glNormal3fv(N004);
    glVertex3fv(P004);
    glEnd();
}

void
Whale015(void)
{
    glBegin(GL_POLYGON);
    glNormal3fv(N055);
    glVertex3fv(P055);
    glNormal3fv(N003);
    glVertex3fv(P003);
    glNormal3fv(N054);
    glVertex3fv(P054);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N003);
    glVertex3fv(P003);
    glNormal3fv(N055);
    glVertex3fv(P055);
    glNormal3fv(N063);
    glVertex3fv(P063);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N003);
    glVertex3fv(P003);
    glNormal3fv(N063);
    glVertex3fv(P063);
    glNormal3fv(N100);
    glVertex3fv(P100);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N003);
    glVertex3fv(P003);
    glNormal3fv(N100);
    glVertex3fv(P100);
    glNormal3fv(N054);
    glVertex3fv(P054);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N054);
    glVertex3fv(P054);
    glNormal3fv(N100);
    glVertex3fv(P100);
    glNormal3fv(N062);
    glVertex3fv(P062);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N100);
    glVertex3fv(P100);
    glNormal3fv(N063);
    glVertex3fv(P063);
    glNormal3fv(N002);
    glVertex3fv(P002);
    glEnd();
    glBegin(GL_POLYGON);
    glNormal3fv(N100);
    glVertex3fv(P100);
    glNormal3fv(N002);
    glVertex3fv(P002);
    glNormal3fv(N062);
    glVertex3fv(P062);
    glEnd();
}

void
Whale016(void)
{
    glBegin(GL_POLYGON);
    glVertex3fv(P104);
    glVertex3fv(P105);
    glVertex3fv(P106);
    glEnd();
    glBegin(GL_POLYGON);
    glVertex3fv(P107);
    glVertex3fv(P108);
    glVertex3fv(P109);
    glEnd();
    glBegin(GL_POLYGON);
    glVertex3fv(P110);
    glVertex3fv(P111);
    glVertex3fv(P112);
    glVertex3fv(P113);
    glVertex3fv(P114);
    glVertex3fv(P115);
    glEnd();
    glBegin(GL_POLYGON);
    glVertex3fv(P116);
    glVertex3fv(P117);
    glVertex3fv(P118);
    glVertex3fv(P119);
    glVertex3fv(P120);
    glVertex3fv(P121);
    glEnd();
}

void
DrawWhale(fishRec * fish)
{
    float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7;
    float pitch, thrash, chomp;

    fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360;

    thrash = 70.0 * fish->v;

    seg0 = 1.5 * thrash * sin((fish->htail) * RRAD);
    seg1 = 2.5 * thrash * sin((fish->htail + 10.0) * RRAD);
    seg2 = 3.7 * thrash * sin((fish->htail + 15.0) * RRAD);
    seg3 = 4.8 * thrash * sin((fish->htail + 23.0) * RRAD);
    seg4 = 6.0 * thrash * sin((fish->htail + 28.0) * RRAD);
    seg5 = 6.5 * thrash * sin((fish->htail + 35.0) * RRAD);
    seg6 = 6.5 * thrash * sin((fish->htail + 40.0) * RRAD);
    seg7 = 6.5 * thrash * sin((fish->htail + 55.0) * RRAD);

    pitch = fish->v * sin((fish->htail - 160.0) * RRAD);

    chomp = 0.0;
    if (fish->v > 2.0) {
        chomp = -(fish->v - 2.0) * 200.0;
    }
    P012[1] = iP012[1] + seg5;
    P013[1] = iP013[1] + seg5;
    P014[1] = iP014[1] + seg5;
    P015[1] = iP015[1] + seg5;
    P016[1] = iP016[1] + seg5;
    P017[1] = iP017[1] + seg5;
    P018[1] = iP018[1] + seg5;
    P019[1] = iP019[1] + seg5;

    P020[1] = iP020[1] + seg4;
    P021[1] = iP021[1] + seg4;
    P022[1] = iP022[1] + seg4;
    P023[1] = iP023[1] + seg4;
    P024[1] = iP024[1] + seg4;
    P025[1] = iP025[1] + seg4;
    P026[1] = iP026[1] + seg4;
    P027[1] = iP027[1] + seg4;

    P028[1] = iP028[1] + seg2;
    P029[1] = iP029[1] + seg2;
    P030[1] = iP030[1] + seg2;
    P031[1] = iP031[1] + seg2;
    P032[1] = iP032[1] + seg2;
    P033[1] = iP033[1] + seg2;
    P034[1] = iP034[1] + seg2;
    P035[1] = iP035[1] + seg2;

    P036[1] = iP036[1] + seg1;
    P037[1] = iP037[1] + seg1;
    P038[1] = iP038[1] + seg1;
    P039[1] = iP039[1] + seg1;
    P040[1] = iP040[1] + seg1;
    P041[1] = iP041[1] + seg1;
    P042[1] = iP042[1] + seg1;
    P043[1] = iP043[1] + seg1;

    P044[1] = iP044[1] + seg0;
    P045[1] = iP045[1] + seg0;
    P046[1] = iP046[1] + seg0;
    P047[1] = iP047[1] + seg0;
    P048[1] = iP048[1] + seg0;
    P049[1] = iP049[1] + seg0;
    P050[1] = iP050[1] + seg0;
    P051[1] = iP051[1] + seg0;

    P009[1] = iP009[1] + seg6;
    P010[1] = iP010[1] + seg6;
    P075[1] = iP075[1] + seg6;
    P076[1] = iP076[1] + seg6;

    P001[1] = iP001[1] + seg7;
    P011[1] = iP011[1] + seg7;
    P068[1] = iP068[1] + seg7;
    P069[1] = iP069[1] + seg7;
    P070[1] = iP070[1] + seg7;
    P071[1] = iP071[1] + seg7;
    P072[1] = iP072[1] + seg7;
    P073[1] = iP073[1] + seg7;
    P074[1] = iP074[1] + seg7;

    P091[1] = iP091[1] + seg3 * 1.1;
    P092[1] = iP092[1] + seg3;
    P093[1] = iP093[1] + seg3;
    P094[1] = iP094[1] + seg3;
    P095[1] = iP095[1] + seg3 * 0.9;

    P099[1] = iP099[1] + chomp;
    P098[1] = iP098[1] + chomp;
    P097[1] = iP097[1] + chomp;
    P096[1] = iP096[1] + chomp;

    glPushMatrix();

    glRotatef(pitch, 1.0, 0.0, 0.0);

    glTranslatef(0.0, 0.0, 8000.0);

    glRotatef(180.0, 0.0, 1.0, 0.0);

    glScalef(3.0, 3.0, 3.0);

    glEnable(GL_CULL_FACE);

    Whale001();
    Whale002();
    Whale003();
    Whale004();
    Whale005();
    Whale006();
    Whale007();
    Whale008();
    Whale009();
    Whale010();
    Whale011();
    Whale012();
    Whale013();
    Whale014();
    Whale015();
    Whale016();

    glDisable(GL_CULL_FACE);

    glPopMatrix();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -