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

📄 http:^^www.cs.utexas.edu^users^fussell^384gassignment2.html

📁 This data set contains WWW-pages collected from computer science departments of various universities
💻 HTML
字号:
MIME-Version: 1.0
Server: CERN/3.0
Date: Monday, 06-Jan-97 20:32:31 GMT
Content-Type: text/html
Content-Length: 3662
Last-Modified: Monday, 21-Oct-96 23:59:06 GMT

<HTML><HEAD><TITLE> Program 2 - Interactive Hierarchical Modeling using Mesa </TITLE></HEAD><BODY><CENTER><H1> Program 2 - Interactive Hierarchical Modeling using Mesa </H1></CENTER><P><CENTER><H2> Due - November 14 </H2></CENTER><P><IMG SRC=robot3.gif ALIGN=RIGHT>You are to create an industrial-style robot arm similar to that in thepicture above and a user interface which can be used to interactivelycontrol the arm.  You should also create a cube that can be picked upby the arm when both fingers of the arm are touching opposite faces ofthe cube.  You will create the robot arm as a hierarchical model basedon only a few simple base primitives (perhaps only a cylinder).  Youwill use Mesa to control the viewing (camera) parameters and thelighting and material properties of the robot.  The robot should berendered as a set of opaque closed objects, so your primitives willconsist of filled surfaces and you will use back face culling andz-buffer based hidden surface removal for display.  Your lightingshould be designed carefully to make the three dimensional shape ofthe robot clear.  You must use at least lambertian flat shading forthe surfaces, you may choose to add smooth shading and specularlighting as well, but do not overdo the lighting at the expense ofinteraction speed.  The number of light sources used is also yourchoice.<P>Your model should be structured along the lines of the picture and shouldhave the degrees of freedom indicated. Cylinder B should rotate aboutthe common axis it shares with the base A.  The rest of the armshould rotate with B.  C should be fixed with respect to B except that ittoo can rotate about its axis.  D should be fixed with respect toC.  E should be able to translate along the common axis it shares withD and also rotate about its axis.  F should be fixed with respect toE and G and H should pivot about the ends of F so they can be used tograsp things.<P>Both the base of the robot and the movable cube will initially siton a common table plane.  The cube should be positioned randomly withinthe reach of the arm.<P>The user interface of your program should have a mode in which themouse can be used to move the viewing position with respect to theworld containing the robot arm and cube.  You should also have a modefor controlling the arm.  In arm control mode, when the left mousebutton is pressed, sideways motion of the mouse should rotate B andforward and back rotation of the mouse should rotate C.  When themiddle button is held, sideways mouse motion should rotate E and backand forth motion should translate E.  The left and right arrow keysshould always open and close the fingers.  The right mouse buttonshould exit the mode or bring up a menu.  In viewing mode, when theleft mouse button is held down, sidways mouse motion should move theobserver longitudinally about an imaginary sphere centered on therobot arm and back and forth motion should move the viewlatitudinally.  With the middle mouse button down, mouse motionsshould lengthen and shorten the radius of the imaginary sphere.  Theright button should behave as in arm control mode.You should also be able to reset the robot arm to its initialconfiguration.<P>Your user interface should be implemented using GLUT, the toolkitincluded for this purpose with our Mesa installation.  You can geta head start on this project by looking at pages 113-116 in theOpenGL Programmer's Guide and at the GLUT Walker demo in/p/src/Mesa-1.2.6/GLUT/progs/demos/walker(this is /p/src/Mesa-1.2.8/progs/demos/walker in the lab).Good luck and have fun!</BODY> </HTML>

⌨️ 快捷键说明

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