Find Jobs
Hire Freelancers

3D Viewing {Interactive}

$10-30 USD

Lezárt
Kiadva ekkor: körülbelül 7 évvel ezelőtt

$10-30 USD

Teljesítéskor fizetve
Implement an interactive system for viewing a 3D object. The implementation will let you get more familar with the theories of 3D transformation and camera manipulation and the use of the two OpenGL stacks, GL MODELVIEW and GL PROJECTION, with relevant gl or glu functions. Camera manipulation includes two steps. The first step is to setup the location and orientation of a camera, which aims to build a rigid 3D transformation between the world coordinate system and the camera coordinate system. This is also called external parameter setup. The GLU function gluLookAt() can be used to form the rigid transformation matrix.s. Note that the stack that gluLookAt() manipulates is GL MODELVIEW because it is about a 3D transformation rather than a projection. You will need to implement a function called myCameraLookAt() as an alternative of gluLookAt(). As described in the lecture slides, you can first compute the u, v, n axes and translation vector t, and then construct the rigid transformation matrix ( ux uy uz tx vx vy vz ty nx ny nz tz 0 0 0 1 ) The second step of the camera manipulation is to decide a viewing volume, equivalently, a projection matrix. This is also called internal parameter setup. There are two popular projection modes— orthographic and perspective. In this project, we assume that the camera is a perspective (pinhole) camera. You can use gluPerspective() to setup internal parameters. The system allows a user to use the keyboard to change the camera coordinate system and the projection matrix. Specifically, four keys are used to change the input of gluLookAt() or myCameraLookAt() as follows: • i – move the camera toward the object • m – move the camera against the object • j – move the camera to its left • l – move the camera to its right The amount of a movement can be set as the 20% of the length of an object. For example, is the length of an object is 10, you can set each movement in the unit of 2. Two keys are used to change the input of gluPerspective() as follows: • d – increase the fovy 10 degrees • s – decrease the fovy 10 degrees The glut library provides the implementation of drawing of a few of 3D objects. For example, you can draw a solid or wire cube using the following glut functions: void glutSolidCube(GLdouble size); void glutWireCube(GLdouble size); To have the focus on the 3D viewing, you can start this project using the glut 3D object cube. But the number of glut 3D objects is limited, and the access methods of these objects are also limited. In general, a programmer defines a 3D object as a collection of faces (i.e., polygons), where each face consists of a number of vertices. With such a definition of an object, a programmer can manipulate every face of the object. So, after you pass the test of your code based on the glut 3D object cube, you will need to define an 3D object and test the code on the programmer-defined object.
Projektazonosító: 13476814

A projektről

6 ajánlat
Távolról teljesíthető projekt
Aktiválva: 7 évvel ezelőtt

Szeretne pénzt keresni?

A Freelancer oldalán történő árajánlatadás előnyei

Határozzon meg költségvetést és időkeretet
Kapja meg fizetését a munkáért
Vázolja ajánlatát
Ingyen regisztrálhat és adhat árajánlatot munkákra
6 szabadúszó adott átlagosan $55 USD összegű árajánlatot erre a munkára
Felhasználó avatár
Hello, I am a guru with opengl and C...there are several posts lñike this...but no problem, I can do many genuine implementations. Zero plagiarism. So, let me do it in just 24 hours. BEst regards!
$40 USD 1 napon belül
5,0 (70 értékelés)
6,4
6,4
Felhasználó avatár
Hi, I am experienced in C and OpenGL. I can finish this in one day. Please contact me.....................................
$50 USD 1 napon belül
5,0 (50 értékelés)
5,3
5,3
Felhasználó avatár
Hi, how are you? I already made this assignment for a previous customer, then that is done! Obviously I made a new version just for you. I am totally clear about avoiding plagiarism between you. If you are interested, just let me know. Thank you very much for your attention. Best regardds
$25 USD 1 napon belül
4,7 (24 értékelés)
4,8
4,8
Felhasználó avatár
Expert in OpenGL ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... ......... .........
$55 USD 2 napon belül
5,0 (17 értékelés)
4,3
4,3

Az ügyfélről

UNITED STATES zászlója
Naperville, United States
5,0
4
Fizetési mód hitelesítve
Tagság kezdete: febr. 11, 2017

Ügyfél-hitelesítés

Köszönjük! E-mailben elküldtük a linket, melyen átveheti ajándék egyenlegét.
E-mailje elküldése során valami hiba történt. Kérjük, próbálja újra.
Regisztrált Felhasználók Összes Közzétett Munka
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Előnézet betöltése
Hozzáférést adott a helymeghatározáshoz.
Belépési munkamenete lejárt, és kijelentkeztettük. Kérjük, lépjen be újra.