亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? oglarm.c

?? CVI例程
?? C
字號:
//----------------------------------------------------------------------------// This demo shows how the powerful OpenGL can be used to render realistic 3D images.////  main.c:  Contains main program structure, initialization and drawing//  routines.  Positioning callbacks are defined in "positionme.c"//----------------------------------------------------------------------------//----------------------------------------------------------------------------// Includes//----------------------------------------------------------------------------#include <windows.h>#include <GL\gl.h>#include <GL\glu.h>#include <ansi_c.h>#include <cvirte.h>     #include <userint.h>#include "oglarm.h"#include "cviogl.h"//----------------------------------------------------------------------------// Define default values//----------------------------------------------------------------------------#define DFLT_VIEW_LATITUDE      75.0#define DFLT_VIEW_LONGITUDE     45.0#define DFLT_VIEWPOINT_X        0.0#define DFLT_VIEWPOINT_Y        0.0#define DFLT_VIEWPOINT_Z        1.0#define DFLT_VIEW_DISTANCE      8.5#define DFLT_LIGHT_LATITUDE     30.0#define DFLT_BASE_ANGLE         -33.0#define DFLT_SHOULDER_ANGLE     -42.0#define DFLT_ELBOW_ANGLE        77.0#define DFLT_WRIST_ANGLE        30.0#define DFLT_CLAW_ANGLE         50.0// Define other useful constants#define ANGLE_INCREMENT         4.0#define CLAW_OPEN               0#define CLAW_CLOSED             1#define TRUE                    1#define FALSE                   0       //----------------------------------------------------------------------------// Variables//----------------------------------------------------------------------------// Define panel reference varsint mainPanel, OGLControlPanel;// Define bitmap handles for joystick button displaysint fourWayButtonUp, fourWayButtonDown, verticalButtonUp, verticalButtonDown,    horizontalButtonUp, horizontalButtonDown, clawButtonOpen, clawButtonClose;// Define vars used for rotating arm object and viewdouble shoulderRotation =       DFLT_SHOULDER_ANGLE;double elbowRotation =          DFLT_ELBOW_ANGLE;double baseRotation =           DFLT_BASE_ANGLE;double clawAngle =              DFLT_CLAW_ANGLE;double wristRotation =          DFLT_WRIST_ANGLE;double viewLongitude =          DFLT_VIEW_LONGITUDE;double viewLatitude =           DFLT_VIEW_LATITUDE;double viewDistance =           DFLT_VIEW_DISTANCE;double viewPointX =             DFLT_VIEWPOINT_X;double viewPointY =             DFLT_VIEWPOINT_Y;double viewPointZ =             DFLT_VIEWPOINT_Z;double clawState =              CLAW_OPEN;// Define other useful varsint holdButtonDown, miscCounter;int xJoyCoord, yJoyCoord;GLUquadricObj   *object;//----------------------------------------------------------------------------// Prototypes//----------------------------------------------------------------------------void DrawArmImage(int fastFlag);void InitOGLControl(void);void RenderArmImage(int fastFlag);//----------------------------------------------------------------------------//  Main//----------------------------------------------------------------------------int main (int argc, char *argv[]){    if (InitCVIRTE (0, argv, 0) == 0)   /* Needed if linking in external compiler; harmless otherwise */        return -1;  /* out of memory */        // Load the main program panel     if ((mainPanel = LoadPanel (0, "oglarm.uir", MAINPNL)) < 0)        return -1;        // Convert the CVI picture control to an OGL control    OGLControlPanel = OGLConvertCtrl (mainPanel, MAINPNL_ARM_IMAGE);        // Initialize the OGL control    InitOGLControl();        // Display plot    OGLRefreshGraph(mainPanel, OGLControlPanel);        // Display the main Panel    DisplayPanel(mainPanel);    // Enter the UI loop    RunUserInterface();        // Hide the panel and discard the OGL control along with the panel    HidePanel (mainPanel);    OGLDiscardCtrl(mainPanel,OGLControlPanel);    DiscardPanel (mainPanel);    return 0;}//----------------------------------------------------------------------------//  InitOGLControl():  Initializes the OGL control and sets the rendering//  properties appropriate to the arm image     void InitOGLControl(void){    // Setup lighting for system    OGLSetCtrlAttribute(mainPanel,OGLControlPanel,OGLATTR_LIGHTING_ENABLE, 1);    OGLSetCtrlAttribute(mainPanel,OGLControlPanel,OGLATTR_LIGHT_SELECT,    1);    OGLSetCtrlAttribute(mainPanel,OGLControlPanel,OGLATTR_LIGHT_ENABLE,    1);    OGLSetCtrlAttribute(mainPanel,OGLControlPanel,OGLATTR_LIGHT_DISTANCE,  2.0);    OGLSetCtrlAttribute (mainPanel, OGLControlPanel,OGLATTR_LIGHT_LATITUDE, DFLT_LIGHT_LATITUDE);    // Setup viewing position for system    OGLSetCtrlAttribute(mainPanel,OGLControlPanel,OGLATTR_PROJECTION_TYPE, OGLVAL_PERSPECTIVE);    OGLSetCtrlAttribute (mainPanel, OGLControlPanel,OGLATTR_VIEW_DIRECTION, OGLVAL_USER_DEFINED);    OGLSetCtrlAttribute (mainPanel, OGLControlPanel,OGLATTR_VIEW_LATITUDE, DFLT_VIEW_LATITUDE);    OGLSetCtrlAttribute (mainPanel, OGLControlPanel,OGLATTR_VIEW_LONGITUDE, DFLT_VIEW_LONGITUDE);    OGLSetCtrlAttribute (mainPanel, OGLControlPanel, OGLATTR_VIEW_CENTERX,DFLT_VIEWPOINT_X);    OGLSetCtrlAttribute (mainPanel, OGLControlPanel, OGLATTR_VIEW_CENTERY,DFLT_VIEWPOINT_Y);    OGLSetCtrlAttribute (mainPanel, OGLControlPanel, OGLATTR_VIEW_CENTERZ,DFLT_VIEWPOINT_Z);                             OGLSetCtrlAttribute(mainPanel,OGLControlPanel,OGLATTR_VIEW_DISTANCE,DFLT_VIEW_DISTANCE);        // Disable 3D plotting feature of the OGL instrument driver; use only lighting properties    // and coordinate system    OGLSetCtrlAttribute (mainPanel,OGLControlPanel, OGLATTR_PLOTTING_ENABLE, 0);}//----------------------------------------------------------------------------//  RenderArmImage():  Renders the arm image to the OGL control.//----------------------------------------------------------------------------void RenderArmImage(int fastFlag){    GLfloat specularLight0[]    ={1.0f, 1.0f, 1.0f, 1.0f};    int fastMode;    glPushAttrib(GL_ALL_ATTRIB_BITS);    glMatrixMode(GL_PROJECTION);    glPushMatrix();        glMatrixMode(GL_MODELVIEW);        glPushMatrix();            glEnable(GL_DEPTH_TEST);            glShadeModel(GL_SMOOTH);                glEnable(GL_COLOR_MATERIAL);            glColorMaterial(GL_FRONT_AND_BACK,GL_AMBIENT_AND_DIFFUSE);            glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, specularLight0);            glMateriali(GL_FRONT_AND_BACK, GL_SHININESS, 128);               DrawArmImage(fastFlag);            glPopMatrix();        glMatrixMode(GL_PROJECTION);    glPopMatrix();    glPopAttrib();    glFlush();}//----------------------------------------------------------------------------//  DrawArmImage():  Draws the OGL robotic arm image in its entirety//----------------------------------------------------------------------------void DrawArmImage(int fastFlag){        // Create a new quadric object; we'll refer to this structure when using    // the GLU routines to draw higher-level primitives    object = gluNewQuadric();        // Vector routine to draw grid on scene "floor"    glColor3f(0.0f, 0.0f, 1.0f);        glLineWidth(3.0);    glBegin(GL_LINES);        for (miscCounter=0; miscCounter < 21; miscCounter++)        {                        // Each vertex pair will be connected by a line            glVertex2f(-5.0,-5.0+0.5*miscCounter);            glVertex2f(5.0,-5.0+0.5*miscCounter);            glVertex2f(-5.0+0.5*miscCounter,5.0);            glVertex2f(-5.0+0.5*miscCounter,-5.0);        }    glEnd();        // Draw in "Line" mode for speed    if (fastFlag)        gluQuadricDrawStyle(object,GLU_LINE);        // Draw the arm assembly piece by piece    glPushMatrix();            // Draw the base shoulder joint        glColor3f(0.1f, 0.1f, 1.0f);        gluCylinder(object, 0.5, 0.4, 0.3, 10, 10);           glTranslatef(0.0, 0.0, 0.3);                  gluDisk(object,0.0,0.4,40,40);        glColor3f(0.2f, 0.2f, 0.2f);            glRotatef(baseRotation, 0.0, 0.0, 1.0);              gluSphere(object, 0.3, 30, 30);                  // Draw the shoulder member        glRotatef(shoulderRotation,0.0,1.0,0.0);         glColor3f(0.1f, 0.1f, 1.0f);            gluCylinder(object, 0.15, 0.1, 1.0, 10, 10);                              // Draw the elbow joint        glTranslatef(0.0, 0.0, 1.0);              glColor3f(0.2f, 0.2f, 0.2f);            gluSphere(object, 0.2, 30, 30);                       // Draw the forearm member         glRotatef(elbowRotation,0.0,1.0,0.0);           glColor3f(0.1f, 0.1f, 1.0f);            gluCylinder(object, 0.1, 0.06, 0.7, 10, 10);                  /* Draw the wrist joint */        glTranslatef(0.0, 0.0, 0.7);         glColor3f(0.2f, 0.2f, 0.2f);            glRotatef(wristRotation, 0.0, 0.0, 1.0);        gluSphere(object, 0.15, 30, 30);                  /* Draw bottom half of claw */        glColor3f(0.9f, 0.9f, 0.0f);                  glPushMatrix();               glRotatef(DFLT_CLAW_ANGLE - (int)17*clawState,0.0,1.0,0.0);                 gluCylinder(object, 0.05, 0.04, 0.3, 10, 10);            glTranslatef(0.0, 0.0, 0.3);              gluSphere(object, 0.04, 30, 30);                glTranslatef(0.0, 0.0, -0.05);             glRotatef(-70,0.0,1.0,0.0);                 gluCylinder(object, 0.04, 0.02, 0.2, 10, 10);              glTranslatef(0.0, 0.0, 0.2);            gluSphere(object, 0.02, 15, 15);             glPopMatrix();                   /* Draw top half of claw */        glRotatef(-DFLT_CLAW_ANGLE + (int)17*clawState,0.0,1.0,0.0);             gluCylinder(object, 0.05, 0.04, 0.3, 10, 10);        glTranslatef(0.0, 0.0, 0.3);          gluSphere(object, 0.04, 30, 30);            glTranslatef(0.0, 0.0, -0.05);            glRotatef(70,0.0,1.0,0.0);             gluCylinder(object, 0.04, 0.02, 0.2, 10, 10);          glTranslatef(0.0, 0.0, 0.2);        gluSphere(object, 0.02, 15, 15);         glPopMatrix();      gluDeleteQuadric(object);    return;}   //----------------------------------------------------------------------------//  OGLCallback():  Required by CVI for image refreshes and paints//----------------------------------------------------------------------------int CVICALLBACK OGLCallback (int panel, int control, int event,        void *callbackData, int eD1, int eventData2){    switch (event) {        case OGLEVENT_REFRESH:                        // Render the arm image when REFRESH event is received            RenderArmImage(eD1);            break;    }    return 0;}//----------------------------------------------------------------------------//  QuitApplication():  Exits the UI loop and allows the program to terminate//----------------------------------------------------------------------------int CVICALLBACK QuitApplication (int panel, int control, int event,        void *callbackData, int eventData1, int eventData2){    switch (event) {        case EVENT_COMMIT:            QuitUserInterface (0);            break;    }    return 0;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美电影免费观看高清完整版在线 | 国产在线日韩欧美| 日韩一级片网站| 毛片基地黄久久久久久天堂| 欧美一级生活片| 国产一区日韩二区欧美三区| 国产精品视频看| 91在线观看成人| 久久99国产精品免费网站| 欧美日本一区二区三区四区| 国产jizzjizz一区二区| 精品日韩欧美在线| 国产成人精品免费| 亚洲九九爱视频| 91精品免费在线观看| 韩国欧美国产一区| 国产精品亲子乱子伦xxxx裸| 色综合激情五月| 另类小说图片综合网| 国产亚洲精品福利| 日本丰满少妇一区二区三区| 视频一区二区三区中文字幕| 精品国精品自拍自在线| 成人午夜在线免费| 亚洲一区av在线| 欧美α欧美αv大片| 成人国产精品视频| 日日夜夜精品视频免费| 欧美国产精品一区二区三区| 色妹子一区二区| 国产曰批免费观看久久久| 国产午夜精品福利| 91精品国产综合久久小美女| 国产午夜亚洲精品不卡| 日韩欧美高清一区| 欧美无砖专区一中文字| 久久这里只有精品6| 色综合激情五月| 免费成人在线影院| 亚洲人成影院在线观看| 91麻豆精品国产无毒不卡在线观看| 国产不卡视频一区二区三区| 午夜精品久久久久久久99樱桃| 国产亚洲一二三区| 欧美精品三级日韩久久| 成人高清在线视频| 麻豆国产欧美一区二区三区| 亚洲人成影院在线观看| 欧美亚洲一区三区| 高清不卡在线观看| 琪琪一区二区三区| 亚洲一区在线看| 国产精品国产三级国产三级人妇 | 国产高清亚洲一区| 丝袜诱惑亚洲看片| 亚洲日本中文字幕区| 久久亚洲综合色一区二区三区| 欧美这里有精品| 成人美女视频在线观看| 国产乱人伦偷精品视频不卡 | 爽好久久久欧美精品| 国产精品女主播av| 国产调教视频一区| 久久婷婷色综合| 精品少妇一区二区三区 | 欧美日韩日日摸| 91高清视频在线| jizz一区二区| www.欧美日韩| 不卡电影一区二区三区| 国产福利一区二区三区视频在线| 美腿丝袜在线亚洲一区| 日韩1区2区日韩1区2区| 亚洲大片免费看| 亚洲成人av资源| 亚洲第一久久影院| 免费在线观看精品| 美女视频一区在线观看| 美国一区二区三区在线播放| 日韩国产在线观看一区| 免费一区二区视频| 捆绑紧缚一区二区三区视频| 国产一区三区三区| 成人午夜视频网站| 色综合久久综合网欧美综合网 | 国产视频在线观看一区二区三区| 精品国产免费一区二区三区四区| 精品国产一二三区| 欧美精品一区二区在线播放| 欧美体内she精高潮| 日韩精品一级中文字幕精品视频免费观看 | 午夜精品久久久| 视频在线观看国产精品| 免费观看91视频大全| 另类欧美日韩国产在线| 国产剧情一区二区| 成人爱爱电影网址| 欧日韩精品视频| 91精品婷婷国产综合久久| 欧美成人a在线| 国产精品网站导航| 亚洲午夜精品在线| 美脚の诱脚舐め脚责91| 成人精品一区二区三区中文字幕| 91网站视频在线观看| 欧美日本在线播放| 久久亚洲精品小早川怜子| 中文字幕一区二区三区蜜月| 亚洲高清视频的网址| 国产真实精品久久二三区| 99久久伊人久久99| 4438x成人网最大色成网站| 久久久久久久久久电影| 亚洲综合色噜噜狠狠| 加勒比av一区二区| 国产a区久久久| 国产亚洲欧美在线| 中国色在线观看另类| 亚洲免费毛片网站| 精品在线一区二区三区| 99视频在线精品| 欧美一级片在线看| 国产精品福利影院| 日韩福利电影在线观看| 国产成+人+日韩+欧美+亚洲| 欧美日本一区二区在线观看| 国产精品久久毛片| 日韩不卡在线观看日韩不卡视频| 99免费精品在线| 精品国产污网站| 丝袜国产日韩另类美女| 成人福利视频在线| 久久综合久久综合九色| 午夜久久久久久久久| 丁香一区二区三区| 精品免费国产一区二区三区四区| 亚洲精品中文字幕乱码三区| 国产精品91一区二区| 91精品啪在线观看国产60岁| 一区二区三区久久| 成人久久视频在线观看| 亚洲精品一区二区三区四区高清 | 色视频一区二区| 国产日韩精品一区二区三区 | 亚洲五月六月丁香激情| 成人午夜av电影| 久久青草欧美一区二区三区| 日韩成人av影视| 在线观看91av| 午夜亚洲福利老司机| 色婷婷av一区二区三区软件| 中文字幕在线观看不卡视频| 国产成人99久久亚洲综合精品| 亚洲精品一区二区三区99| 美国三级日本三级久久99| 91麻豆精品国产无毒不卡在线观看| 亚洲午夜久久久久久久久电影网| 91麻豆蜜桃一区二区三区| 国产精品久久久久久久久快鸭 | 韩国精品久久久| 欧美videofree性高清杂交| 日日夜夜一区二区| 欧美精品日韩一区| 日本免费在线视频不卡一不卡二 | 色噜噜狠狠色综合欧洲selulu| 国产精品久久夜| 91在线看国产| 亚洲女人****多毛耸耸8| 色婷婷亚洲婷婷| 亚洲午夜精品17c| 欧美日韩在线免费视频| 亚洲成a人片在线观看中文| 色久综合一二码| 亚洲一级电影视频| 欧美精品在线观看播放| 麻豆成人免费电影| 久久综合九色综合欧美就去吻| 国产麻豆精品在线观看| 国产欧美日韩在线| 91亚洲精品一区二区乱码| 亚洲最大色网站| 69久久99精品久久久久婷婷| 麻豆一区二区三区| 久久色视频免费观看| 波多野结衣中文字幕一区二区三区 | 老汉av免费一区二区三区| www亚洲一区| 97久久超碰国产精品| 一区二区三区四区视频精品免费| 欧美三级电影在线看| 日韩在线观看一区二区| 欧美精品黑人性xxxx| 亚洲精品日韩一| 欧美日韩精品福利| 精品一区二区三区影院在线午夜 | 欧美日韩精品一区二区在线播放| 日韩高清不卡在线| 国产午夜精品久久久久久久 | eeuss鲁片一区二区三区在线看| 亚洲精品视频在线观看网站|