diff options
| author | Johannes Hofmann <Johannes.Hofmann@gmx.de> | 2006-10-30 22:19:08 +0100 | 
|---|---|---|
| committer | Johannes Hofmann <Johannes.Hofmann@gmx.de> | 2006-10-30 22:19:08 +0100 | 
| commit | 3065ecc1e1c44770ecad9e4bf29c4b71f0a2bc52 (patch) | |
| tree | d47d75fb4c345cfe61ccd0bf6fe45d6a89bd57a2 | |
| parent | 09419b6f28bb7058c43501d1e1e10b71ef2499ab (diff) | |
reindent
| -rw-r--r-- | src/gipfel.cxx | 687 | 
1 files changed, 344 insertions, 343 deletions
| diff --git a/src/gipfel.cxx b/src/gipfel.cxx index 3c204b7..6eb4ee9 100644 --- a/src/gipfel.cxx +++ b/src/gipfel.cxx @@ -52,426 +52,427 @@ Fl_Menu_Bar *mb;  #define STITCH_JPEG    2  #define STITCH_TIFF    4  static int stitch(int stitch_w, int stitch_h, int type, const char *path, -  int argc, char **argv); +	int argc, char **argv);  void set_values() { -  s_center->value(gipf->get_center_angle()); -  s_nick->value(gipf->get_nick_angle()); -  s_focal_length->value(gipf->get_focal_length_35mm()); -  s_tilt->value(gipf->get_tilt_angle()); -  s_height_dist->value(gipf->get_height_dist_ratio()); -  i_view_lat->value(gipf->get_view_lat()); -  i_view_long->value(gipf->get_view_long()); -  i_view_height->value(gipf->get_view_height()); -  b_viewpoint->label(gipf->get_viewpoint()); -  if (gipf->get_projection() == Projection::TANGENTIAL) { -    mb->mode(8, FL_MENU_RADIO|FL_MENU_VALUE); -    mb->mode(9, FL_MENU_RADIO); -  } else { -    mb->mode(9, FL_MENU_RADIO|FL_MENU_VALUE); -    mb->mode(8, FL_MENU_RADIO); -  } +	s_center->value(gipf->get_center_angle()); +	s_nick->value(gipf->get_nick_angle()); +	s_focal_length->value(gipf->get_focal_length_35mm()); +	s_tilt->value(gipf->get_tilt_angle()); +	s_height_dist->value(gipf->get_height_dist_ratio()); +	i_view_lat->value(gipf->get_view_lat()); +	i_view_long->value(gipf->get_view_long()); +	i_view_height->value(gipf->get_view_height()); +	b_viewpoint->label(gipf->get_viewpoint()); +	if (gipf->get_projection() == Projection::TANGENTIAL) { +		mb->mode(8, FL_MENU_RADIO|FL_MENU_VALUE); +		mb->mode(9, FL_MENU_RADIO); +	} else { +		mb->mode(9, FL_MENU_RADIO|FL_MENU_VALUE); +		mb->mode(8, FL_MENU_RADIO); +	}  }  void quit_cb() { -  exit(0); +	exit(0);  }  void open_cb() { -  char *file = fl_file_chooser("Open File?", "*.jpg", img_file); -  if(file != NULL) { -    gipf->load_image(file); -    set_values(); -  }   +	char *file = fl_file_chooser("Open File?", "*.jpg", img_file); +	if(file != NULL) { +		gipf->load_image(file); +		set_values(); +	}    }  void track_cb() { -  char *file = fl_file_chooser("Track File?", NULL, NULL); -  if (gipf->load_track(file) == 0) { -    s_track_width->activate(); -  } +	char *file = fl_file_chooser("Track File?", NULL, NULL); +	if (gipf->load_track(file) == 0) { +		s_track_width->activate(); +	}  }  void save_cb() { -  char *file = fl_file_chooser("Save Image As?", NULL, NULL); -  if (file) { -    gipf->save_image(file); -  } +	char *file = fl_file_chooser("Save Image As?", NULL, NULL); +	if (file) { +		gipf->save_image(file); +	}  }  void focal_length_cb(Fl_Slider* o, void*) { -  gipf->set_focal_length_35mm(o->value()); +	gipf->set_focal_length_35mm(o->value());  }  void angle_cb(Fl_Slider* o, void*) { -  gipf->set_center_angle(o->value()); +	gipf->set_center_angle(o->value());  }  void nick_cb(Fl_Slider* o, void*) { -  gipf->set_nick_angle(o->value()); +	gipf->set_nick_angle(o->value());  }  void tilt_cb(Fl_Slider* o, void*) { -  gipf->set_tilt_angle(o->value()); +	gipf->set_tilt_angle(o->value());  }  void h_d_cb(Fl_Slider* o, void*) { -  gipf->set_height_dist_ratio(o->value()); +	gipf->set_height_dist_ratio(o->value());  }  void view_lat_cb(Fl_Value_Input* o, void*) { -  gipf->set_view_lat(o->value()); +	gipf->set_view_lat(o->value());  }  void view_long_cb(Fl_Value_Input* o, void*) { -  gipf->set_view_long(o->value()); +	gipf->set_view_long(o->value());  }  void view_height_cb(Fl_Value_Input* o, void*) { -  gipf->set_view_height(o->value()); +	gipf->set_view_height(o->value());  }  void track_width_cb(Fl_Value_Input* o, void*) { -  gipf->set_track_width(o->value()); +	gipf->set_track_width(o->value());  }  void viewpoint_cb(Fl_Value_Input* o, void*) { -  Hill *m = choose_hill(gipf->get_mountains(), "Choose Viewpoint"); -  if (m) { -    gipf->set_viewpoint(m); -    set_values(); -  } +	Hill *m = choose_hill(gipf->get_mountains(), "Choose Viewpoint"); +	if (m) { +		gipf->set_viewpoint(m); +		set_values(); +	}  }  void proj_cb(Fl_Value_Input* o, void*d) { -  if(d == NULL) { -    gipf->set_projection(Projection::TANGENTIAL); -  } else { -    gipf->set_projection(Projection::SPHAERIC); -  } +	if(d == NULL) { +		gipf->set_projection(Projection::TANGENTIAL); +	} else { +		gipf->set_projection(Projection::SPHAERIC); +	}  }  void hidden_cb(Fl_Menu_* o, void*d) { -  gipf->set_show_hidden(o->mvalue()->value());  +	gipf->set_show_hidden(o->mvalue()->value());   }  void comp_cb(Fl_Widget *, void *) { -  gipf->comp_params(); -  set_values(); +	gipf->comp_params(); +	set_values();  }  void guess_cb(Fl_Widget *, void *) { -  gipf->guess(); -  set_values(); +	gipf->guess(); +	set_values();  }  void about_cb() { -  fl_message("gipfel -- and you know what you see.\n" -	     "Version %s\n\n" -	     "(c) Johannes Hofmann 2006\n\n" -             "Default datafile by http://www.alpin-koordinaten.de\n", -             VERSION); +	fl_message("gipfel -- and you know what you see.\n" +		"Version %s\n\n" +		"(c) Johannes Hofmann 2006\n\n" +		"Default datafile by http://www.alpin-koordinaten.de\n", +		VERSION);  }  void fill_menubar(Fl_Menu_Bar* mb) { -  mb->add("&File/L&oad Image", FL_CTRL+'o', (Fl_Callback*)open_cb); -  mb->add("&File/&Save Image", FL_CTRL+'s', (Fl_Callback*)save_cb); -  mb->add("&File/Choose &Viewpoint", FL_CTRL+'v', (Fl_Callback*)viewpoint_cb); -  mb->add("&File/Load &Track", FL_CTRL+'t', (Fl_Callback*)track_cb); -  mb->add("&File/&Quit", FL_CTRL+'q', (Fl_Callback*)quit_cb); +	mb->add("&File/L&oad Image", FL_CTRL+'o', (Fl_Callback*)open_cb); +	mb->add("&File/&Save Image", FL_CTRL+'s', (Fl_Callback*)save_cb); +	mb->add("&File/Choose &Viewpoint", FL_CTRL+'v', (Fl_Callback*)viewpoint_cb); +	mb->add("&File/Load &Track", FL_CTRL+'t', (Fl_Callback*)track_cb); +	mb->add("&File/&Quit", FL_CTRL+'q', (Fl_Callback*)quit_cb); +	mb->add("&Projection/Normal Projection", 0, (Fl_Callback *)proj_cb,  +		(void *)0, FL_MENU_RADIO|FL_MENU_VALUE); +	mb->add("&Projection/Panoramic Projection", 0, (Fl_Callback *)proj_cb,  +		(void *)1, FL_MENU_RADIO); -  mb->add("&Projection/Normal Projection", 0, (Fl_Callback *)proj_cb,  -          (void *)0, FL_MENU_RADIO|FL_MENU_VALUE); -  mb->add("&Projection/Panoramic Projection", 0, (Fl_Callback *)proj_cb,  -          (void *)1, FL_MENU_RADIO); +	mb->add("&Option/Show Hidden", 0, (Fl_Callback *) hidden_cb,  +		(void *)0, FL_MENU_TOGGLE); -  mb->add("&Option/Show Hidden", 0, (Fl_Callback *) hidden_cb,  -          (void *)0, FL_MENU_TOGGLE); - -  mb->add("&Help/About", 0, (Fl_Callback*)about_cb); +	mb->add("&Help/About", 0, (Fl_Callback*)about_cb);  }  void usage() { -  fprintf(stderr, -	  "usage: gipfel [-v <viewpoint>] [-d <datafile>]\n" -      "          [-s] [-j <outfile>] [-t <outdir] [-w <width>] [-h <height>]\n" -      "          [<image(s)>]\n" -	  "   -v <viewpoint>  Set point from which the picture was taken.\n" -	  "                   This must be a string that unambiguously \n" -	  "                   matches the name of an entry in the data file.\n" -	  "   -d <datafile>   Use <datafile> for GPS data.\n" -      "   -s              Stitch mode.\n" -      "   -w <width>      Width of result image.\n" -      "   -h <height>     Height of result image.\n" -      "   -j <outfile>    JPEG output file for Stitch mode.\n" -      "   -t <outdir>     Output directory for TIFF images in Stitch mode.\n" -	  "      <image(s)>   JPEG file(s) to use.\n"); +	fprintf(stderr, +		"usage: gipfel [-v <viewpoint>] [-d <datafile>]\n" +		"          [-s] [-j <outfile>] [-t <outdir] [-w <width>] [-h <height>]\n" +		"          [<image(s)>]\n" +		"   -v <viewpoint>  Set point from which the picture was taken.\n" +		"                   This must be a string that unambiguously \n" +		"                   matches the name of an entry in the data file.\n" +		"   -d <datafile>   Use <datafile> for GPS data.\n" +		"   -s              Stitch mode.\n" +		"   -w <width>      Width of result image.\n" +		"   -h <height>     Height of result image.\n" +		"   -j <outfile>    JPEG output file for Stitch mode.\n" +		"   -t <outdir>     Output directory for TIFF images in Stitch mode.\n" +		"      <image(s)>   JPEG file(s) to use.\n");  }  Fl_Window *   create_control_window() { -  Fl_Window *win = new Fl_Window(400,350); -  mb = new Fl_Menu_Bar(0, 0, 400, 30); -  fill_menubar(mb); - -  s_center = new Fl_Value_Dial(40, 60, 150, 150, NULL); -  s_center->type(FL_LINE_DIAL); -  s_center->labelsize(10); -  s_center->step(0.01); -  s_center->bounds(0.0, 360.0); -  s_center->angles(180, 540); -  s_center->callback((Fl_Callback*)angle_cb); - -  Fl_Box *north = new Fl_Box(95, 40, 40, 20, "North"); -  Fl_Box *south = new Fl_Box(95, 210, 40, 20, "South"); -  Fl_Box *east = new Fl_Box(190, 125, 40, 20, "East"); -  Fl_Box *west = new Fl_Box(0, 125, 40, 20, "West"); - - -  s_focal_length = new Fl_Value_Slider(235, 60, 160, 15, "Focal Length in 35mm"); -  s_focal_length->type(1); -  s_focal_length->box(FL_THIN_DOWN_BOX); -  s_focal_length->labelsize(10); -  s_focal_length->step(0.01); -  s_focal_length->bounds(1.0, 300.0); -  s_focal_length->slider(FL_UP_BOX); -  s_focal_length->callback((Fl_Callback*)focal_length_cb); -  s_focal_length->align(FL_ALIGN_TOP); - -  s_nick = new Fl_Value_Slider(235, 90, 160, 15, "Nick (deg.)"); -  s_nick->type(1); -  s_nick->box(FL_THIN_DOWN_BOX); -  s_nick->labelsize(10); -  s_nick->step(0.01); -  s_nick->bounds(-20.0, 20.0); -  s_nick->slider(FL_UP_BOX); -  s_nick->callback((Fl_Callback*)nick_cb); -  s_nick->align(FL_ALIGN_TOP); - -  s_tilt = new Fl_Value_Slider(235, 120, 160, 15, "Tilt (deg.)"); -  s_tilt->type(1); -  s_tilt->box(FL_THIN_DOWN_BOX); -  s_tilt->labelsize(10); -  s_tilt->step(0.01); -  s_tilt->bounds(-10.0, 10.0); -  s_tilt->slider(FL_UP_BOX); -  s_tilt->callback((Fl_Callback*)tilt_cb); -  s_tilt->align(FL_ALIGN_TOP); - -  s_height_dist = new Fl_Value_Slider(235, 150, 160, 15, "Visibility"); -  s_height_dist->type(1); -  s_height_dist->box(FL_THIN_DOWN_BOX); -  s_height_dist->labelsize(10); -  s_height_dist->step(-0.001); -  s_height_dist->bounds(0.1, 0.01); -  s_height_dist->slider(FL_UP_BOX); -  s_height_dist->callback((Fl_Callback*)h_d_cb); -  s_height_dist->align(FL_ALIGN_TOP); - -  s_track_width = new Fl_Value_Slider(235, 180, 160, 15, "Track Width"); -  s_track_width->type(1); -  s_track_width->box(FL_THIN_DOWN_BOX); -  s_track_width->labelsize(10); -  s_track_width->step(1.0); -  s_track_width->bounds(1.0, 500.0); -  s_track_width->value(200.0); -  s_track_width->slider(FL_UP_BOX); -  s_track_width->callback((Fl_Callback*)track_width_cb); -  s_track_width->align(FL_ALIGN_TOP); -  s_track_width->deactivate(); -  // Viewpoint Stuff - -  b_viewpoint = new Fl_Box(FL_DOWN_BOX, 30, 255, 300, 80, ""); -  b_viewpoint->align(FL_ALIGN_TOP); - -  i_view_lat = new Fl_Value_Input(40, 270, 100, 20, "Latitude"); -  i_view_lat->labelsize(10); -  i_view_lat->align(FL_ALIGN_TOP); -  i_view_lat->when(FL_WHEN_ENTER_KEY); -  i_view_lat->callback((Fl_Callback*)view_lat_cb); - -  i_view_long = new Fl_Value_Input(200, 270, 100, 20, "Longitude"); -  i_view_long->labelsize(10); -  i_view_long->align(FL_ALIGN_TOP); -  i_view_long->when(FL_WHEN_ENTER_KEY); -  i_view_long->callback((Fl_Callback*)view_long_cb); - -  i_view_height = new Fl_Value_Input(40, 310, 80, 20, "Height"); -  i_view_height->labelsize(10); -  i_view_height->align(FL_ALIGN_TOP); -  i_view_height->when(FL_WHEN_ENTER_KEY); -  i_view_height->callback((Fl_Callback*)view_height_cb); - -  // Buttons -  Fl_Button *b = new Fl_Button(240, 210, 60, 20, "comp"); -  b->color(FL_RED); -  b->callback(comp_cb); -  Fl_Button *b1 = new Fl_Button(320, 210, 60, 20, "guess"); -  b1->callback(guess_cb); -  b1->color(FL_GREEN); - -  win->end(); -  return win; +	Fl_Window *win = new Fl_Window(400,350); +	mb = new Fl_Menu_Bar(0, 0, 400, 30); +	fill_menubar(mb); + +	s_center = new Fl_Value_Dial(40, 60, 150, 150, NULL); +	s_center->type(FL_LINE_DIAL); +	s_center->labelsize(10); +	s_center->step(0.01); +	s_center->bounds(0.0, 360.0); +	s_center->angles(180, 540); +	s_center->callback((Fl_Callback*)angle_cb); + +	Fl_Box *north = new Fl_Box(95, 40, 40, 20, "North"); +	Fl_Box *south = new Fl_Box(95, 210, 40, 20, "South"); +	Fl_Box *east = new Fl_Box(190, 125, 40, 20, "East"); +	Fl_Box *west = new Fl_Box(0, 125, 40, 20, "West"); + + +	s_focal_length = new Fl_Value_Slider(235, 60, 160, 15, "Focal Length in 35mm"); +	s_focal_length->type(1); +	s_focal_length->box(FL_THIN_DOWN_BOX); +	s_focal_length->labelsize(10); +	s_focal_length->step(0.01); +	s_focal_length->bounds(1.0, 300.0); +	s_focal_length->slider(FL_UP_BOX); +	s_focal_length->callback((Fl_Callback*)focal_length_cb); +	s_focal_length->align(FL_ALIGN_TOP); + +	s_nick = new Fl_Value_Slider(235, 90, 160, 15, "Nick (deg.)"); +	s_nick->type(1); +	s_nick->box(FL_THIN_DOWN_BOX); +	s_nick->labelsize(10); +	s_nick->step(0.01); +	s_nick->bounds(-20.0, 20.0); +	s_nick->slider(FL_UP_BOX); +	s_nick->callback((Fl_Callback*)nick_cb); +	s_nick->align(FL_ALIGN_TOP); + +	s_tilt = new Fl_Value_Slider(235, 120, 160, 15, "Tilt (deg.)"); +	s_tilt->type(1); +	s_tilt->box(FL_THIN_DOWN_BOX); +	s_tilt->labelsize(10); +	s_tilt->step(0.01); +	s_tilt->bounds(-10.0, 10.0); +	s_tilt->slider(FL_UP_BOX); +	s_tilt->callback((Fl_Callback*)tilt_cb); +	s_tilt->align(FL_ALIGN_TOP); + +	s_height_dist = new Fl_Value_Slider(235, 150, 160, 15, "Visibility"); +	s_height_dist->type(1); +	s_height_dist->box(FL_THIN_DOWN_BOX); +	s_height_dist->labelsize(10); +	s_height_dist->step(-0.001); +	s_height_dist->bounds(0.1, 0.01); +	s_height_dist->slider(FL_UP_BOX); +	s_height_dist->callback((Fl_Callback*)h_d_cb); +	s_height_dist->align(FL_ALIGN_TOP); + +	s_track_width = new Fl_Value_Slider(235, 180, 160, 15, "Track Width"); +	s_track_width->type(1); +	s_track_width->box(FL_THIN_DOWN_BOX); +	s_track_width->labelsize(10); +	s_track_width->step(1.0); +	s_track_width->bounds(1.0, 500.0); +	s_track_width->value(200.0); +	s_track_width->slider(FL_UP_BOX); +	s_track_width->callback((Fl_Callback*)track_width_cb); +	s_track_width->align(FL_ALIGN_TOP); +	s_track_width->deactivate(); +	// Viewpoint Stuff + +	b_viewpoint = new Fl_Box(FL_DOWN_BOX, 30, 255, 300, 80, ""); +	b_viewpoint->align(FL_ALIGN_TOP); + +	i_view_lat = new Fl_Value_Input(40, 270, 100, 20, "Latitude"); +	i_view_lat->labelsize(10); +	i_view_lat->align(FL_ALIGN_TOP); +	i_view_lat->when(FL_WHEN_ENTER_KEY); +	i_view_lat->callback((Fl_Callback*)view_lat_cb); + +	i_view_long = new Fl_Value_Input(200, 270, 100, 20, "Longitude"); +	i_view_long->labelsize(10); +	i_view_long->align(FL_ALIGN_TOP); +	i_view_long->when(FL_WHEN_ENTER_KEY); +	i_view_long->callback((Fl_Callback*)view_long_cb); + +	i_view_height = new Fl_Value_Input(40, 310, 80, 20, "Height"); +	i_view_height->labelsize(10); +	i_view_height->align(FL_ALIGN_TOP); +	i_view_height->when(FL_WHEN_ENTER_KEY); +	i_view_height->callback((Fl_Callback*)view_height_cb); + +	// Buttons +	Fl_Button *b = new Fl_Button(240, 210, 60, 20, "comp"); +	b->color(FL_RED); +	b->callback(comp_cb); +	Fl_Button *b1 = new Fl_Button(320, 210, 60, 20, "guess"); +	b1->callback(guess_cb); +	b1->color(FL_GREEN); + +	win->end(); +	return win;  }  int main(int argc, char** argv) { -  char c, *sep, *tmp, **my_argv; -  char *view_point = NULL; -  int err, bflag = 0, dflag = 0, my_argc; -  int stitch_flag = 0, stitch_w = 2000, stitch_h = 500; -  int jpeg_flag = 0, tiff_flag = 0; -  char *outpath; -  Fl_Window *control_win, *view_win; -  Fl_Scroll *scroll; - -   -  err = 0; -  while ((c = getopt(argc, argv, "?d:v:sw:h:j:t:")) != EOF) { -    switch (c) {   -    case '?': -      usage(); -      exit(0); -      break; -    case 'd': -      data_file = optarg; -      break; -    case 'v': -      view_point = optarg; -      break; -    case 's': -      stitch_flag++; -      break; -    case 'j': -      jpeg_flag++; -      outpath = optarg; -      break; -    case 't': -      tiff_flag++; -      outpath = optarg; -      break; -    case 'w': -      stitch_w = atoi(optarg); -      break; -    case 'h': -      stitch_h = atoi(optarg); -      break; -    default: -      err++; -    } -  } -   - -  my_argc = argc - optind; -  my_argv = argv + optind; - -  if (my_argc >= 1) { -    img_file = my_argv[0]; -  } - -  if (data_file == NULL || err) { -    usage(); -    exit(1); -  } - -  if (stitch_flag) { -    int type = STITCH_PREVIEW; -    if (jpeg_flag) { -      type = STITCH_JPEG; -    } else if (tiff_flag) { -      type = STITCH_TIFF; -    } -    stitch(stitch_w, stitch_h, type, outpath, my_argc, my_argv); -    exit(0); -  } - -  Fl::get_system_colors(); -  if (getenv("FLTK_SCHEME")) { -    Fl::scheme(NULL); -  } else { -    Fl::scheme("plastic"); -  } - -  control_win = create_control_window(); - -  view_win = new Fl_Window(800, 600); - -  // The Fl_Group is used to avoid FL_DAMAGE_ALL in Fl_Scroll::position  -  Fl_Group *g = new Fl_Group(0, 0, view_win->w(), view_win->h());  -  view_win->resizable(g); -  scroll = new Fl_Scroll(0, 0, view_win->w(), view_win->h()); -   -  gipf = new GipfelWidget(0,0,800,600); -  if (img_file) { -    gipf->load_image(img_file); -  } - -  view_win->size(gipf->w(), gipf->h()); -  scroll->size(gipf->w(), gipf->h()); - -  gipf->load_data(data_file); -  scroll->end();   - -  set_values(); - -  view_win->resizable(scroll); -   -  view_win->end(); -  view_win->show(1, argv);  -  control_win->show(1, argv);  - -  if (view_point) { -    gipf->set_viewpoint(view_point); -  } else if (img_file &&  -             (isnan(gipf->get_view_lat()) || isnan(gipf->get_view_long()))) { -    viewpoint_cb(NULL, NULL); -  } -   -  return Fl::run(); +	char c, *sep, *tmp, **my_argv; +	char *view_point = NULL; +	int err, bflag = 0, dflag = 0, my_argc; +	int stitch_flag = 0, stitch_w = 2000, stitch_h = 500; +	int jpeg_flag = 0, tiff_flag = 0; +	char *outpath; +	Fl_Window *control_win, *view_win; +	Fl_Scroll *scroll; + + +	err = 0; +	while ((c = getopt(argc, argv, "?d:v:sw:h:j:t:")) != EOF) { +		switch (c) {   +			case '?': +				usage(); +				exit(0); +				break; +			case 'd': +				data_file = optarg; +				break; +			case 'v': +				view_point = optarg; +				break; +			case 's': +				stitch_flag++; +				break; +			case 'j': +				jpeg_flag++; +				outpath = optarg; +				break; +			case 't': +				tiff_flag++; +				outpath = optarg; +				break; +			case 'w': +				stitch_w = atoi(optarg); +				break; +			case 'h': +				stitch_h = atoi(optarg); +				break; +			default: +				err++; +		} +	} + + +	my_argc = argc - optind; +	my_argv = argv + optind; + +	if (my_argc >= 1) { +		img_file = my_argv[0]; +	} + +	if (data_file == NULL || err) { +		usage(); +		exit(1); +	} + +	if (stitch_flag) { +		int type = STITCH_PREVIEW; +		if (jpeg_flag) { +			type = STITCH_JPEG; +		} else if (tiff_flag) { +			type = STITCH_TIFF; +		} +		stitch(stitch_w, stitch_h, type, outpath, my_argc, my_argv); +		exit(0); +	} + +	Fl::get_system_colors(); +	if (getenv("FLTK_SCHEME")) { +		Fl::scheme(NULL); +	} else { +		Fl::scheme("plastic"); +	} + +	control_win = create_control_window(); + +	view_win = new Fl_Window(800, 600); + +	// The Fl_Group is used to avoid FL_DAMAGE_ALL in Fl_Scroll::position  +	Fl_Group *g = new Fl_Group(0, 0, view_win->w(), view_win->h());  +	view_win->resizable(g); +	scroll = new Fl_Scroll(0, 0, view_win->w(), view_win->h()); + +	gipf = new GipfelWidget(0,0,800,600); +	if (img_file) { +		gipf->load_image(img_file); +	} + +	view_win->size(gipf->w(), gipf->h()); +	scroll->size(gipf->w(), gipf->h()); + +	gipf->load_data(data_file); +	scroll->end();   + +	set_values(); + +	view_win->resizable(scroll); + +	view_win->end(); +	view_win->show(1, argv);  +	control_win->show(1, argv);  + +	if (view_point) { +		gipf->set_viewpoint(view_point); +	} else if (img_file &&  +		(isnan(gipf->get_view_lat()) || isnan(gipf->get_view_long()))) { +		viewpoint_cb(NULL, NULL); +	} + +	return Fl::run();  }  static int stitch(int stitch_w, int stitch_h, int type, const char *path, int argc, char **argv) { -  Fl_Window *win; -  Fl_Scroll *scroll; -  Stitch *st = new Stitch(); - -  for (int i=0; i<argc; i++) { -    st->load_image(argv[i]); -  } -   -  if (type == STITCH_JPEG) { - -    st->set_output((OutputImage*) new JPEGOutputImage(path, 90)); -    st->resample(stitch_w, stitch_h, 0.0, 7.0); - -  } else if (type == STITCH_TIFF) { - -    for (int i=0; i<argc; i++) { -      char buf[1024]; -      char *dot; - -      snprintf(buf, sizeof(buf), "%s/%s", path, argv[i]); -      dot = strrchr(buf, '.'); -      *dot = '\0'; -      strncat(buf, ".tiff", sizeof(buf)); - -      st->set_output(argv[i], (OutputImage*) new TIFFOutputImage(buf)); -    } - -    st->resample(stitch_w, stitch_h, 0.0, 7.0); - -  } else { -    win = new Fl_Window(0,0, stitch_w, stitch_h); -    scroll = new Fl_Scroll(0, 0, win->w(), win->h()); -    PreviewOutputImage *img = new PreviewOutputImage(0, 0, stitch_w, stitch_h); -    win->resizable(scroll); -    win->show(0, argv);  -    st->set_output((OutputImage*) img); -    st->resample(stitch_w, stitch_h, 0.0, 7.0); -    img->redraw(); -    Fl::run(); -  } - -  return 0; +	Fl_Window *win; +	Fl_Scroll *scroll; +	Stitch *st = new Stitch(); + +	for (int i=0; i<argc; i++) { +		st->load_image(argv[i]); +	} + +	if (type == STITCH_JPEG) { + +		st->set_output((OutputImage*) new JPEGOutputImage(path, 90)); +		st->resample(stitch_w, stitch_h, 0.0, 7.0); + +	} else if (type == STITCH_TIFF) { + +		for (int i=0; i<argc; i++) { +			char buf[1024]; +			char *dot; + +			snprintf(buf, sizeof(buf), "%s/%s", path, argv[i]); +			dot = strrchr(buf, '.'); +			*dot = '\0'; +			strncat(buf, ".tiff", sizeof(buf)); + +			st->set_output(argv[i], (OutputImage*) new TIFFOutputImage(buf)); +		} + +		st->resample(stitch_w, stitch_h, 0.0, 7.0); + +	} else { +		win = new Fl_Window(0,0, stitch_w, stitch_h); +		scroll = new Fl_Scroll(0, 0, win->w(), win->h()); +		PreviewOutputImage *img = +			new PreviewOutputImage(0, 0, stitch_w, stitch_h); + +		win->resizable(scroll); +		win->show(0, argv);  +		st->set_output((OutputImage*) img); +		st->resample(stitch_w, stitch_h, 0.0, 7.0); +		img->redraw(); +		Fl::run(); +	} + +	return 0;  } | 
