当前位置: 首页>>代码示例>>C++>>正文


C++ camera::setFocus方法代码示例

本文整理汇总了C++中camera::setFocus方法的典型用法代码示例。如果您正苦于以下问题:C++ camera::setFocus方法的具体用法?C++ camera::setFocus怎么用?C++ camera::setFocus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在camera的用法示例。


在下文中一共展示了camera::setFocus方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: drawScene

/**
 * Draws the scene (used in display).
 */
void drawScene() {
   glMatrixMode(GL_MODELVIEW);
   glEnable(GL_DEPTH_TEST);

   glPushMatrix(); {
      cam.updateLookat();
      for (unsigned int i = 0; i < objs.size(); i++) {
         objs[i]->draw();
         if (draw_arrows) {
            glDisable(GL_DEPTH_TEST);
            objs[i]->drawArrows();
            glEnable(GL_DEPTH_TEST);
         }
         if (draw_bounding_box) {
            objs[i]->drawBoundingBox();
         }
         if (follow && objs[i]->classId == PART_ID) {
            particleSystem *temp = (particleSystem*)objs[i];
            cam.setFocus(temp->pos);
         }
      }
   } glPopMatrix();
}
开发者ID:Guinto,项目名称:Particle-System,代码行数:26,代码来源:main.cpp

示例2: keyboard

/**
 * The keyboard function that defines keys to be used.
 */
void keyboard(unsigned char key, int x, int y) {
   switch(key) {
      /* GENERAL */
      case 27:
         exit(EXIT_SUCCESS);
         break;
      case 'f': case 'F':
         full_screen_flag = !full_screen_flag;
         if (full_screen_flag) {
            glutFullScreen();
         }
         else {
            GW = 1080; GH = 720;
            glutReshapeWindow(GW, GH);
         }
         break;
      case '2': case '@':
         draw_arrows = !draw_arrows;
         break;
      case '3': case '#':
         draw_bounding_box = !draw_bounding_box;
         break;
      case '4': case '$':
         follow = !follow;
         if (!follow) { cam.setFocus(pnt3d(0, 0, 0)); }
         break;
      case '9':
         load();
         break;
      case '(': 
         save();
         break;


      /* CAMERA */
      case ' ':
         cam.cam_spin_flag = !cam.cam_spin_flag;
         break;

      /* PARTICLES */
      case '/': case '?':
         general((char*)"cif");
         break;
      case '\'': case '\"':
         general((char*)"retract_flag");
         break;
      case '1': 
         objs.push_back(new particleSystem(pnt3d(rand() % 10 - 5,
                                                 rand() % 10 - 5,
                                                 rand() % 10 - 5)));
         break;
      case '!':
         objs.pop_back();
         break;
      case '5': case '%':
         general((char*)"points_flag");
         break;
      case '6': case '^':
         general((char*)"switch_mesh");
         break;
      case '7': case '&':
         general((char*)"type");
         break;
      case '0': case ')':
         general((char*)"screen_saver");
         break;

      default:
         key_states[key] = true;
         break;
   }
}
开发者ID:Guinto,项目名称:Particle-System,代码行数:75,代码来源:main.cpp


注:本文中的camera::setFocus方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。