*** empty log message ***

This commit is contained in:
David Rose 2001-05-10 19:10:33 +00:00
parent 7082cc10e3
commit fc07879f44
4 changed files with 22 additions and 16 deletions

View File

@ -4,7 +4,8 @@
stitchbase stitchbase
#define OTHER_LIBS \ #define OTHER_LIBS \
progbase \ progbase \
linmath:c putil:c express:c panda:m pandaexpress:m pystub dtoolconfig dtool pnmimage:c mathutil:c linmath:c putil:c panda:m \
express:c pandaexpress:m pystub dtoolconfig dtool
#define SOURCES \ #define SOURCES \
stitchCommandProgram.cxx stitchCommandProgram.h stitchCommandProgram.cxx stitchCommandProgram.h
@ -19,8 +20,8 @@
stitchbase stitchbase
#define OTHER_LIBS \ #define OTHER_LIBS \
progbase \ progbase \
pnmimagetypes:c pnmimage:c linmath:c putil:c express:c panda:m \ pnmimagetypes:c pnmimage:c linmath:c putil:c panda:m \
pandaexpress:m pystub dtoolconfig dtool express:c pandaexpress:m pystub dtoolconfig dtool
#define SOURCES \ #define SOURCES \
stitchImageProgram.cxx stitchImageProgram.h stitchImageProgram.cxx stitchImageProgram.h

View File

@ -599,8 +599,8 @@ create_image() {
} }
StitchImage *image = StitchImage *image =
new StitchImage(get_name(), filename, lens, size_pixels, film_offset_mm, new StitchImage(get_name(), filename, lens, size_pixels, resolution,
resolution); film_offset_mm);
image->setup_grid(50, 50); image->setup_grid(50, 50);
// Also look for points and other stuff. // Also look for points and other stuff.

View File

@ -38,9 +38,9 @@ StitchImage(const string &name, const string &filename,
// _size_pixels[1] - 1) at the lower-right. // _size_pixels[1] - 1) at the lower-right.
// Millimeters are used when interfacing with the lens. They start // Millimeters are used when interfacing with the lens. They start
// at -film_offset_mm at the center, and range from // at film_offset_mm at the center, and range from
// -film_offset_mm-size_mm at the lower-left, to // film_offset_mm-size_mm at the lower-left, to
// -film_offset_mm+size_mm at the upper-right. // film_offset_mm+size_mm at the upper-right.
LVector2d pixels_per_uv(_size_pixels[0] - 1.0, _size_pixels[1] - 1.0); LVector2d pixels_per_uv(_size_pixels[0] - 1.0, _size_pixels[1] - 1.0);
@ -68,10 +68,10 @@ StitchImage(const string &name, const string &filename,
_uv_to_mm = _uv_to_mm =
LMatrix3d::translate_mat(LVector2d(-0.5, -0.5)) * LMatrix3d::translate_mat(LVector2d(-0.5, -0.5)) *
LMatrix3d::scale_mat(mm_per_uv) * LMatrix3d::scale_mat(mm_per_uv) *
LMatrix3d::translate_mat(-_film_offset_mm); LMatrix3d::translate_mat(_film_offset_mm);
_mm_to_uv = _mm_to_uv =
LMatrix3d::translate_mat(_film_offset_mm) * LMatrix3d::translate_mat(-_film_offset_mm) *
LMatrix3d::scale_mat(1.0 / mm_per_uv[0], 1.0 / mm_per_uv[1]) * LMatrix3d::scale_mat(1.0 / mm_per_uv[0], 1.0 / mm_per_uv[1]) *
LMatrix3d::translate_mat(LVector2d(0.5, 0.5) + _film_offset_mm); LMatrix3d::translate_mat(LVector2d(0.5, 0.5) + _film_offset_mm);

View File

@ -6,6 +6,7 @@
#include "stitchImageVisualizer.h" #include "stitchImageVisualizer.h"
#include "config_stitch.h" #include "config_stitch.h"
#include "triangleMesh.h" #include "triangleMesh.h"
#include "stitchLens.h"
#include <luse.h> #include <luse.h>
#include <chancfg.h> #include <chancfg.h>
@ -25,6 +26,8 @@
#include <clockObject.h> #include <clockObject.h>
#include <config_gobj.h> #include <config_gobj.h>
#include <allAttributesWrapper.h> #include <allAttributesWrapper.h>
#include <renderRelation.h>
#include <dataRelation.h>
#include <algorithm> #include <algorithm>
@ -177,7 +180,7 @@ setup() {
_main_win = ChanConfig(_main_pipe, chan_cfg, _cameras, _render, override); _main_win = ChanConfig(_main_pipe, chan_cfg, _cameras, _render, override);
assert(_main_win != (GraphicsWindow*)0L); assert(_main_win != (GraphicsWindow*)0L);
// Turn on culling. // Turn on backface culling.
CullFaceAttribute *cfa = new CullFaceAttribute; CullFaceAttribute *cfa = new CullFaceAttribute;
cfa->set_mode(CullFaceProperty::M_cull_clockwise); cfa->set_mode(CullFaceProperty::M_cull_clockwise);
_initial_state.set_attribute(CullFaceTransition::get_class_type(), cfa); _initial_state.set_attribute(CullFaceTransition::get_class_type(), cfa);
@ -187,21 +190,21 @@ setup() {
// Create a mouse and put it in the data graph. // Create a mouse and put it in the data graph.
_mak = new MouseAndKeyboard(_main_win, 0); _mak = new MouseAndKeyboard(_main_win, 0);
new RenderRelation(_data_root, _mak); new DataRelation(_data_root, _mak);
// Create a trackball to handle the mouse input. // Create a trackball to handle the mouse input.
_trackball = new Trackball("trackball"); _trackball = new Trackball("trackball");
new RenderRelation(_mak, _trackball); new DataRelation(_mak, _trackball);
// Connect the trackball output to the camera's transform. // Connect the trackball output to the camera's transform.
PT(Transform2SG) tball2cam = new Transform2SG("tball2cam"); PT(Transform2SG) tball2cam = new Transform2SG("tball2cam");
tball2cam->set_arc(cam_trans); tball2cam->set_arc(cam_trans);
new RenderRelation(_trackball, tball2cam); new DataRelation(_trackball, tball2cam);
// Create an ButtonThrower to throw events from the keyboard. // Create an ButtonThrower to throw events from the keyboard.
PT(ButtonThrower) et = new ButtonThrower("kb-events"); PT(ButtonThrower) et = new ButtonThrower("kb-events");
new RenderRelation(_mak, et); new DataRelation(_mak, et);
// Create all the images. // Create all the images.
Images::iterator ii; Images::iterator ii;
@ -253,7 +256,9 @@ create_image_geometry(StitchImageVisualizer::Image &im) {
int y_verts = 2; int y_verts = 2;
TriangleMesh mesh(x_verts, y_verts); TriangleMesh mesh(x_verts, y_verts);
LVector3f center = LCAST(float, im._image->extrude(LPoint2d(0.5, 0.5))); StitchLens *lens = im._image->_lens;
LVector3d center =
lens->extrude(LPoint2d(0.0, 0.0), im._image->_size_mm[0]);
double scale = 10.0 / length(center); double scale = 10.0 / length(center);
for (int xi = 0; xi < x_verts; xi++) { for (int xi = 0; xi < x_verts; xi++) {