Change --gs-mo default to 67%.
[Ale.git] / d2 / align.cc
blob45a6a70615481296027b69b728bb615c7639b095
1 // Copyright 2002 David Hilvert <dhilvert@auricle.dyndns.org>,
2 // <dhilvert@ugcs.caltech.edu>
4 /* This file is part of the Anti-Lamenessing Engine.
6 The Anti-Lamenessing Engine is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 The Anti-Lamenessing Engine is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with the Anti-Lamenessing Engine; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 #include "align.h"
24 * See align.h for details on these variables.
27 int align::_exp_register = 1;
29 ale_pos align::scale_factor;
31 transformation align::orig_t;
32 int align::_keep = 0;
33 transformation *align::kept_t = NULL;
34 int *align::kept_ok = NULL;
36 tload_t *align::tload = NULL;
37 tsave_t *align::tsave = NULL;
38 render *align::reference = NULL;
39 filter::scaled_filter *align::interpolant = NULL;
40 const image *align::reference_image = NULL;
41 const image *align::reference_defined = NULL;
42 const image *align::weight_map = NULL;
43 image *align::alignment_weights = NULL;
44 const image *align::alignment_weights_const = NULL;
45 const char *align::wmx_file = NULL;
46 const char *align::wmx_exec = NULL;
47 const char *align::wmx_defs = NULL;
48 const char *align::fw_output = NULL;
49 double align::horiz_freq_cut = 0;
50 double align::vert_freq_cut = 0;
51 double align::avg_freq_cut = 0;
52 transformation align::latest_t;
53 int align::latest_ok;
54 int align::latest = -1;
56 int align::alignment_class = 1;
57 int align::default_initial_alignment_type = 1;
58 int align::perturb_type = 0;
59 int align::is_fail_default = 0;
60 int align::channel_alignment_type = 2;
61 float align::metric_exponent = 2;
62 float align::match_threshold = 0;
65 * Upper/lower bounds
68 ale_pos align::perturb_lower = 0.125;
69 int align::perturb_lower_percent = 0;
70 ale_pos align::perturb_upper = 14;
71 int align::perturb_upper_percent = 1;
74 * XXX: These empirical observations may have been based on buggy code.
76 * Empirically, it's okay to use a level-of-detail equal to twice the
77 * resolution of the perturbation, so we set the default lod_max to 1, as
78 * 2^1==2. lod_max of zero seems okay also, but lower values seem to cause
79 * problems.
82 int align::lod_max = 1;
84 ale_pos align::rot_max = 32.0;
85 ale_pos align::bda_mult = 2;
86 ale_pos align::bda_rate = 8;
87 ale_accum align::match_sum = 0;
88 int align::match_count = 0;
90 ale_pos align::_mc = 0;
91 int align::_mcd_limit = 100;
92 int align::certainty_weights = 0;
93 int align::_gs = 3;
94 unsigned int align::_ma_card = 1;
95 double align::_ma_cont = 100;
97 ale_pos align::_gs_mo = 67;
98 int align::gs_mo_percent = 1;
100 exclusion *align::ax_parameters = NULL;
101 int align::ax_count = 0;
103 const point **align::cp_array = NULL;
104 unsigned int align::cp_count = 0;