diff options
| author | Johannes Hofmann <Johannes.Hofmann@gmx.de> | 2007-03-13 18:29:45 +0100 | 
|---|---|---|
| committer | Johannes Hofmann <Johannes.Hofmann@gmx.de> | 2007-03-13 18:29:45 +0100 | 
| commit | 3d907fd76ca23d69bcd7d25367c9c94063490d38 (patch) | |
| tree | 1ecfd01a624536445be6b436bf791b53086bc556 /src/gipfel.cxx | |
| parent | 508490f69a9f5e0023deda70b04b785aa041b8e3 (diff) | |
add devignetting infrastructure
Diffstat (limited to 'src/gipfel.cxx')
| -rw-r--r-- | src/gipfel.cxx | 20 | 
1 files changed, 15 insertions, 5 deletions
diff --git a/src/gipfel.cxx b/src/gipfel.cxx index 5807ae5..3862761 100644 --- a/src/gipfel.cxx +++ b/src/gipfel.cxx @@ -50,9 +50,10 @@ Fl_Value_Input *i_distortion_k0, *i_distortion_k1, *i_distortion_x0;  Fl_Box *b_viewpoint;  Fl_Menu_Bar *mb; -#define STITCH_PREVIEW 1 -#define STITCH_JPEG    2 -#define STITCH_TIFF    4 +#define STITCH_PREVIEW           1 +#define STITCH_JPEG              2 +#define STITCH_TIFF              4 +#define STITCH_VIGNETTE_CALIB    8  static int stitch(GipfelWidget::sample_mode_t m ,int stitch_w, int stitch_h,  	double from, double to, int type, const char *path, int argc, char **argv); @@ -397,7 +398,7 @@ int main(int argc, char** argv) {  	int err, my_argc;  	int stitch_flag = 0, stitch_w = 2000, stitch_h = 500;  	int jpeg_flag = 0, tiff_flag = 0, distortion_flag = 0; -	int bilinear_flag = 0; +	int bilinear_flag = 0, vignette_flag = 0;  	double stitch_from = 0.0, stitch_to = 380.0;  	double dist_k0 = 0.0, dist_k1 = 0.0, dist_x0 = 0.0;  	char *outpath = "/tmp"; @@ -405,7 +406,7 @@ int main(int argc, char** argv) {  	err = 0; -	while ((c = getopt(argc, argv, ":?d:v:sw:h:j:t:u:br:")) != EOF) { +	while ((c = getopt(argc, argv, ":?d:v:sw:h:j:t:u:br:V")) != EOF) {  		switch (c) {    			case '?':  				usage(); @@ -420,6 +421,9 @@ int main(int argc, char** argv) {  			case 's':  				stitch_flag++;  				break; +			case 'V': +				vignette_flag++; +				break;  			case 'r':  				stitch_flag++;  				if (optarg && strcmp(optarg, ":")) { @@ -485,6 +489,8 @@ int main(int argc, char** argv) {  			type = STITCH_JPEG;  		} else if (tiff_flag) {  			type = STITCH_TIFF; +		} else if (vignette_flag) { +			type = STITCH_VIGNETTE_CALIB;  		}  		stitch(bilinear_flag?GipfelWidget::BILINEAR:GipfelWidget::NEAREST, @@ -579,6 +585,10 @@ stitch(GipfelWidget::sample_mode_t m,  		st->resample(m, stitch_w, stitch_h, from, to); +	} else if (type = STITCH_VIGNETTE_CALIB) { +		 +		st->vignette_calib(m, stitch_w, stitch_h, from, to); +  	} else {  		win = new Fl_Window(0,0, stitch_w, stitch_h);  		scroll = new Fl_Scroll(0, 0, win->w(), win->h());  | 
