Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[MANTA] r368 - in branches/itanium2: Interface Model/Cameras UserInterface


Chronological Thread 
  • From: abe@sci.utah.edu
  • To: manta@sci.utah.edu
  • Subject: [MANTA] r368 - in branches/itanium2: Interface Model/Cameras UserInterface
  • Date: Tue, 7 Jun 2005 13:55:47 -0600 (MDT)

Author: abe
Date: Tue Jun  7 13:55:43 2005
New Revision: 368

Modified:
   branches/itanium2/Interface/Camera.h
   branches/itanium2/Model/Cameras/PinholeCamera.cc
   branches/itanium2/Model/Cameras/PinholeCamera.h
   branches/itanium2/UserInterface/CMakeLists.txt
   branches/itanium2/UserInterface/XWindowUI.cc
   branches/itanium2/UserInterface/XWindowUI.h
Log:
Now you can press c to output the camera parameters.

Modified: branches/itanium2/Interface/Camera.h
==============================================================================
--- branches/itanium2/Interface/Camera.h        (original)
+++ branches/itanium2/Interface/Camera.h        Tue Jun  7 13:55:43 2005
@@ -29,6 +29,7 @@
     };
     virtual void transform(AffineTransform t, TransformCenter) = 0;
     virtual void autoview(double fov) = 0;
+               virtual void output() { /* Default does nothing. */ }; // 
Output a text description of the camera's state.
   private:
     Camera(const Camera&);
     Camera& operator=(const Camera&);

Modified: branches/itanium2/Model/Cameras/PinholeCamera.cc
==============================================================================
--- branches/itanium2/Model/Cameras/PinholeCamera.cc    (original)
+++ branches/itanium2/Model/Cameras/PinholeCamera.cc    Tue Jun  7 13:55:43 
2005
@@ -56,6 +56,15 @@
 {
 }
 
+void PinholeCamera::output() {
+
+       std::cout << "pinhole( -eye " << eye 
+                 << " -lookat " << lookat 
+                                               << " -up " << up 
+                                               << " -fov " << hfov << " )" 
+                                               << std::endl;
+}
+
 Camera* PinholeCamera::create(const vector<string>& args)
 {
   return new PinholeCamera(args);

Modified: branches/itanium2/Model/Cameras/PinholeCamera.h
==============================================================================
--- branches/itanium2/Model/Cameras/PinholeCamera.h     (original)
+++ branches/itanium2/Model/Cameras/PinholeCamera.h     Tue Jun  7 13:55:43 
2005
@@ -26,6 +26,7 @@
     virtual void dolly(double);
     virtual void transform(AffineTransform t, TransformCenter);
     virtual void autoview(double fov);
+               virtual void output();
          virtual Point project(const Point &point);  // project a 3D point 
to the camera image plane
     static Camera* create(const vector<string>& args);
                

Modified: branches/itanium2/UserInterface/CMakeLists.txt
==============================================================================
--- branches/itanium2/UserInterface/CMakeLists.txt      (original)
+++ branches/itanium2/UserInterface/CMakeLists.txt      Tue Jun  7 13:55:43 
2005
@@ -1,4 +1,8 @@
 
-ADD_LIBRARY (Manta_UserInterface PromptUI.cc XWindowUI.cc)
+ADD_LIBRARY (Manta_UserInterface
+            PromptUI.h 
+            PromptUI.cc
+            XWindowUI.h 
+            XWindowUI.cc)
 TARGET_LINK_LIBRARIES(Manta_UserInterface Manta_Core Manta_Interface)
 TARGET_LINK_LIBRARIES(Manta_UserInterface ${X11_LIBRARIES})

Modified: branches/itanium2/UserInterface/XWindowUI.cc
==============================================================================
--- branches/itanium2/UserInterface/XWindowUI.cc        (original)
+++ branches/itanium2/UserInterface/XWindowUI.cc        Tue Jun  7 13:55:43 
2005
@@ -383,6 +383,9 @@
   register_key(0, XStringToKeysym("v"),
                "autoview",
                Callback::create(this, &XWindowUI::autoview));
+       register_key(0, XStringToKeysym("c"),
+               "output camera",
+               Callback::create(this, &XWindowUI::output_camera));           
                                   
   register_key(0, XStringToKeysym("Escape"),
               "quit after this frame, press again to immediately quit",
               Callback::create(this, &XWindowUI::quitkey));
@@ -452,6 +455,13 @@
   rtrt_interface->addTransaction("autoview",
                                  Callback::create(camera, &Camera::autoview,
                                                   autoview_fov));
+}
+
+void XWindowUI::output_camera(unsigned int, unsigned long, int channel)
+{
+  Camera* camera = rtrt_interface->getCamera(channel);
+  rtrt_interface->addTransaction("output camera",
+                                 Callback::create(camera, &Camera::output));
 }
 
 void XWindowUI::mouse_fov(unsigned int, unsigned int,

Modified: branches/itanium2/UserInterface/XWindowUI.h
==============================================================================
--- branches/itanium2/UserInterface/XWindowUI.h (original)
+++ branches/itanium2/UserInterface/XWindowUI.h Tue Jun  7 13:55:43 2005
@@ -69,6 +69,8 @@
     void prockey(unsigned int, unsigned long, int);
     void quitkey(unsigned int, unsigned long, int);
     void autoview(unsigned int, unsigned long, int);
+               
+               void output_camera(unsigned int, unsigned long, int);
 
     void mouse_fov(unsigned int, unsigned int, int, int, int, int);
     void mouse_translate(unsigned int, unsigned int, int, int, int, int);




  • [MANTA] r368 - in branches/itanium2: Interface Model/Cameras UserInterface, abe, 06/07/2005

Archive powered by MHonArc 2.6.16.

Top of page