proc isNumeric {x} {
set a [expr ![catch {expr $x*1}]]
return $a
}
proc update {maxdist lag_minimum lag_maximum lag_increment num_lines} {
set value [$maxdist getCurrentValue]
if {[isNumeric $value]} {
$lag_minimum setHighBound $value
$lag_maximum setHighBound $value
$lag_increment setHighBound $value
$lag_minimum setCurrentValue [format %.1f [expr $value * [$num_lines getCurrentValue] / 800]]
$lag_maximum setCurrentValue [format %.1f [expr $value / 5.0]]
$lag_increment setCurrentValue [format %.1f [expr [$lag_maximum getCurrentValue] / 10.0]]
}
}
GuidoForm frm20461 {
-default_buttons
-label "Variogram Map Calculation"
-layout BoxLayout Y_AXIS
-tip GST_VARIOGRAM_TYPE_TIP
GuidoTabbedPane frm20465_p1 {
GuidoPanel Basic {
-label Basic
-layout BoxLayout Y_AXIS
GuidoPanel frm20465_65 {
-layout BoxLayout X_AXIS
GuidoPanel frm20465_62 {
-border etched true
-layout CentreLineLayout
GuidoFileBrowserField location {
-display_length 10
-file_mask *.str
-link id
-format none
-label Location
-max_length 252
-next_focus id
-tip "Specify the string file(s) containing the samples to be used in the variogram calculations."
}
GuidoField id {
-default 1
-display_length 10
-format range
-label "Id range"
-max_length 16
-next_focus str
-null false
-tip "Specify the string file(s) containing the samples to be used in the variogram calculations."
}
GuidoField str {
-display_length 10
-format range
-label "String range"
-max_length 26
-next_focus dfield
-tip "20465_TIP_004"
}
GuidoLabel aligner_1 {
-label "Output report file format"
-visible false
-height 0.1
}
GuidoFiller filler1 {
-height 0.1
}
}
GuidoPanel frm20465_63 {
-border etched true
-layout CentreLineLayout
GuidoComboBox dfield {
-default D1
-display_length 7.6
-format string_field
-label "D field"
-max_length 4
-next_focus minval
-tip "Select the description field in which the sample values are to be found."
-value_in D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 D15 D16 D17 D18 D19 D20 D21 D22 D23 D24 D25 D26 D27 D28 D29 D30 D31 D32 D33 D34 D35 D36 D37 D38 D39 D40 D41 D42 D43 D44 D45 D46 D47 D48 D49 D50 D51 D52 D53 D54 D55 D56 D57 D58 D59 D60 D61 D62 D63 D64 D65 D66 D67 D68 D69 D70 D71 D72 D73 D74 D75 D76 D77 D78 D79 D80 D81 D82 D83 D84 D85 D86 D87 D88 D89 D90 D91 D92 D93 D94 D95 D96 D97 D98 D99 D100
}
GuidoField minval {
-display_length 10
-format double
-label "Minimum value"
-max_length 10
-next_focus maxval
-tip "20465_TIP_006"
}
GuidoField maxval {
-display_length 10
-format double
-label "Maximum value"
-max_length 10
-next_focus windows
-tip "VARIO_MAX_VAL"
}
GuidoLabel aligner_2 {
-visible false
-height 0.1
-width 10
}
}
}
GuidoPanel frm20465_72 {
-layout BoxLayout X_AXIS
-label "Data Selection"
GuidoPanel frm20465_23 {
-layout CentreLineLayout
-border etched true
-height 8
GuidoField dip {
-display_length 10
-format double
-high_bound 90
-label "Plane dip"
-low_bound -90
-max_length 10
-null false
-tip GST_VARIOGRAM_MAP_PLANE_TIP
-default 0.0
}
GuidoField dip_dir {
-display_length 10
-format double
-high_bound 360.000000
-label "Dip direction"
-low_bound 0.000000
-max_length 10
-null false
-tip GST_VARIOGRAM_MAP_DIP_TIP
-default 0.0
}
GuidoComboBox num_lines {
-display_length 5
-format integer
-high_bound 360
-label "Number of variograms"
-low_bound 16
-max_length 10
-null false
-tip GST_VARIOGRAM_MAP_NUM_LINES_TIP
-default 36
-value_in 16 20 24 32 36 40 60 72
}
GuidoLabel label {
-label "Angular increment"
-height 1
}
GuidoPanel p0 {
-layout OverlayLayout
GuidoPanel p1 {
-layout BorderLayout
-dependency {[$num_lines getCurrentValue] == "16"}
GuidoLabel angular_increment1 {
-label "22.5"
-height 1
}
}
GuidoPanel p1 {
-layout BorderLayout
-dependency {[$num_lines getCurrentValue] == "20"}
GuidoLabel angular_increment1 {
-label "18"
-height 1
}
}
GuidoPanel p1 {
-layout BorderLayout
-dependency {[$num_lines getCurrentValue] == "24"}
GuidoLabel angular_increment1 {
-label "15"
-height 1
}
}
GuidoPanel p1 {
-layout BorderLayout
-dependency {[$num_lines getCurrentValue] == "32"}
GuidoLabel angular_increment1 {
-label "11.25"
-height 1
}
}
GuidoPanel p1 {
-layout BorderLayout
-dependency {[$num_lines getCurrentValue] == "36"}
GuidoLabel angular_increment1 {
-label "10"
-height 1
}
}
GuidoPanel p1 {
-layout BorderLayout
-dependency {[$num_lines getCurrentValue] == "40"}
GuidoLabel angular_increment1 {
-label "9"
-height 1
}
}
GuidoPanel p1 {
-layout BorderLayout
-dependency {[$num_lines getCurrentValue] == "60"}
GuidoLabel angular_increment1 {
-label "6"
-height 1
}
}
GuidoPanel p1 {
-layout BorderLayout
-dependency {[$num_lines getCurrentValue] == "72"}
GuidoLabel angular_increment1 {
-label "5"
-height 1
}
}
}
GuidoLabel aligner_3 {
-label "Output report file format"
-visible false
-height 0.1
}
GuidoFiller filler2 {
-height 0.1
}
}
GuidoPanel frm20465_23b {
-layout CentreLineLayout
-border etched true
-height 8
-tip "VARIO_SEARCH_TYPE"
GuidoLabel search_type_label {
-label "Search type"
}
GuidoButtonGroupPanel search_type {
-layout BoxLayout Y_AXIS
GuidoRadioButton frm20460_35 {
-caption Cone
-selected_value Cone
-default true
}
GuidoRadioButton frm20460_36 {
-caption Pyramid
-selected_value Pyramid
}
}
GuidoPanel spread_label_panel {
-layout OverlayLayout
GuidoPanel spread_label_panel_1 {
-layout BorderLayout
-dependency {[$search_type getCurrentValue] == "Cone"}
GuidoLabel spread_label_1 {
-label "Spread"
-position East
}
}
GuidoPanel spread_label_panel_2 {
-layout BorderLayout
-dependency {[$search_type getCurrentValue] == "Pyramid"}
GuidoLabel spread_label_2 {
-label "Horizontal spread"
-position East
}
}
}
GuidoPanel spread_value_top {
-layout OverlayLayout
GuidoPanel spread_value_top_1 {
-layout BorderLayout
-dependency {[$search_type getCurrentValue] == "Cone"}
GuidoField spread {
-display_length 10
-format double
-high_bound 90.000000
-low_bound 0.000000
-max_length 10
-null false
-tip "20465_TIP_010"
}
}
GuidoPanel spread_value_top_2 {
-layout BorderLayout
-dependency {[$search_type getCurrentValue] == "Pyramid"}
GuidoField horizontal_spread {
-display_length 10
-format double
-high_bound 90.000000
-low_bound 0.000000
-max_length 10
-tip "VARIO_HSPREAD"
-null false
}
}
}
GuidoPanel spread_limit_label_panel {
-layout OverlayLayout
GuidoPanel spread_limit_label_panel_1 {
-layout BorderLayout
-dependency {[$search_type getCurrentValue] == "Cone"}
GuidoLabel spread_limit_label_1 {
-label "Spread limit"
-position East
}
}
GuidoPanel spread_limit_label_panel_2 {
-layout BorderLayout
-dependency {[$search_type getCurrentValue] == "Pyramid"}
GuidoLabel spread_limit_label_2 {
-label "Horizontal spread limit"
-position East
}
}
}
GuidoPanel spread_limit_value_top {
-layout OverlayLayout
GuidoPanel spread_limit_value_top_1 {
-layout BorderLayout
-dependency {[$search_type getCurrentValue] == "Cone"}
GuidoField spr_limit {
-display_length 10
-format double
-low_bound 0.000000
-max_length 10
-tip "VARIO_SPREAD_LIMIT"
}
}
GuidoPanel spread_limit_value_top_2 {
-layout BorderLayout
-dependency {[$search_type getCurrentValue] == "Pyramid"}
GuidoField horizontal_spr_limit {
-display_length 10
-format double
-low_bound 0.000000
-max_length 10
-tip "VARIO_HSPREAD_LIMIT"
}
}
}
GuidoField vertical_spread {
-display_length 10
-format double
-high_bound 90.000000
-label "Vertical spread"
-low_bound 0.000000
-max_length 10
-null false
-tip "VARIO_VSPREAD"
-dependency {[$search_type getCurrentValue] == "Pyramid"}
}
GuidoField vertical_spr_limit {
-display_length 10
-format double
-label "Vertical spread limit"
-low_bound 0.000000
-max_length 10
-tip "VARIO_VSPREAD_LIMIT"
-dependency {[$search_type getCurrentValue] == "Pyramid"}
}
GuidoLabel aligner_4 {
-visible false
-height 0.1
-width 10
}
}
}
GuidoPanel frm20465_84 {
-layout BoxLayout X_AXIS
GuidoPanel frm20465_82 {
-border etched true
-layout CentreLineLayout
GuidoField lag {
-display_length 10
-format double
-label Lag
-max_length 10
-next_focus maxdist
-null false
-tip "20465_TIP_012"
}
GuidoField maxdist {
-display_length 10
-format double
-label "Maximum distance"
-max_length 10
-next_focus notefile
-null false
-tip "Specify the maximum distance for which to calculate the variograms."
}
GuidoFileBrowserField fname {
-label "Output report file name"
-display_length 23
-extension false
-file_mask "*.not *.csv *.htm *.html *.rtf *.pdf *.ps"
-format none
-max_length 256
-null false
-tip DB_REPORT_TIP
-translate lower
}
GuidoComboBox report_format {
-label "Output report file format"
-display_length 20.5
-format none
-max_length 40
-null false
-tip "The file format nominated here will be the output report format."
-value_in ".not - Surpac Note File" ".csv - Comma Separated (Spreadsheet)" ".htm - Hypertext Markup Language (Web)" ".html - Hypertext Markup Language (Web)" ".rtf - Rich Text Format (Microsoft Word)" ".pdf - Adobe Acrobat" ".ps  - Postscript"
}
GuidoCheckBox display_report {
-label "Display report"
-default false
}
}
}
}
GuidoPanel frm20462_p3 {
-layout BoxLayout Y_AXIS
-label Cutoffs
GuidoScrollPane frm20462_42 {
-height 15
GuidoTable cutoffs {
-instances 10 10 100
-interactive true
GuidoField cutoff {
-display_length 10
-format double
-label Cutoffs
-max_length 10
-tip "20465_TIP_015"
}
}
}
}
GuidoPanel Advanced {
-label Advanced
-layout BoxLayout Y_AXIS
GuidoPanel frm20465_79 {
-layout BoxLayout Y_AXIS
GuidoPanel frm20465_79 {
-layout BoxLayout Y_AXIS
-border etched true
-width 45
-label "Geographical Constraints"
GuidoPanel frm20465_75 {
-label Minimum:
-layout BoxLayout X_AXIS
GuidoField min0 {
-display_length 10
-format double
-label X
-max_length 10
-next_focus min1
-tip "VARIO_MIN_X_VAL"
}
GuidoField min1 {
-display_length 10
-format double
-label Y
-max_length 10
-next_focus min2
-tip "VARIO_MIN_Y_VAL"
}
GuidoField min2 {
-display_length 10
-format double
-label Z
-max_length 10
-next_focus max0
-tip "VARIO_MIN_Z_VAL"
}
}
GuidoFiller frm20465_fh1 {
-height 1
}
GuidoPanel frm20465_77 {
-layout BoxLayout X_AXIS
-label Maximum:
GuidoField max0 {
-display_length 10
-format double
-label X
-max_length 10
-next_focus max1
-tip "VARIO_MAX_X_VAL"
}
GuidoField max1 {
-display_length 10
-format double
-label Y
-max_length 10
-next_focus max2
-tip "VARIO_MAX_Y_VAL"
}
GuidoField max2 {
-display_length 10
-format double
-label Z
-max_length 10
-tip "VARIO_MAX_Z_VAL"
}
}
}
GuidoPanel frm20465_80 {
-layout CentreLineLayout
-border etched true
-width 45
-label "Lag slider"
GuidoField lag_minimum {
-display_length 10
-format double
-label Minimum
-max_length 10
-low_bound 0.1
-default 0.1
-tip "VG_LAG_SLIDER_MINIMUM"
-decimals 1
}
GuidoField lag_maximum {
-display_length 10
-format double
-label Maximum
-max_length 10
-low_bound 0.1
-tip "VG_LAG_SLIDER_MAXIMUM"
-decimals 1
}
GuidoField lag_increment {
-display_length 10
-format double
-label Increment
-max_length 10
-low_bound 0.1
-tip "VG_LAG_SLIDER_INCREMENT"
-decimals 1
}
}
GuidoPanel frm20460_57 {
-border etched true
-layout CentreLineLayout
-width 45
GuidoPanel frm20460_38 {
-layout BoxLayout X_AXIS
-tip "VARIO_NEG_VAL"
-label "Treat negatives as"
GuidoButtonGroupPanel negative {
GuidoRadioButton frm20460_35 {
-caption ZEROES
-selected_value ZEROES
}
GuidoRadioButton frm20460_36 {
-caption UNDEFINED
-selected_value UNDEFINED
}
GuidoRadioButton frm20460_37 {
-caption NEGATIVES
-default true
-next_focus notefile
-selected_value NEGATIVES
}
}
}
}
}
}
}
$maxdist setActionCallback valueChanged {[update $maxdist $lag_minimum $lag_maximum $lag_increment $num_lines]}
$num_lines setActionCallback valueChanged {[update $maxdist $lag_minimum $lag_maximum $lag_increment $num_lines]}
}
