7.0 MicroMODEL FILE MANAGER

7.1 Introduction

The File Manager Sub-Menu appears below:

  1. Return To Main Menu
  2. Command Shell
  3. Change the Current Label
  4. Edit Grid Values
  5. Export MicroMODEL Grid or Block Model to a File (See also 7.13)
  6. Import from file to MicroMODEL Grid or Block Model (See also 7.14)
  7. Create a Combined Plot
  8. Enter Drillhole Class Names
  9. Assign Drillhole Class to Each Drillhole
  10. Set Drillhole Class Limits
  11. Dump Drillhole Data in XYZ Format
  12. Create Grade Range Annotation File
  13. Export Multiple MicroMODEL Block Models to a File
  14. Import Multiple MicroMODEL Block Models from a File

The purpose of this module is to allow the user to change the current sample, composite, or grade label, edit grid values, read and write ASCII grids to and from other systems, and create combined plot output. A sequence of program choices allows the user to take subsets of drillhole data grouped by drilling campaign, drilling method, ownership, etc.

7.2 Command Shell

This menu choice enables the user to invoke commands and run external programs without exiting MicroMODEL. This program is simply a command shell. The user enters as many commands as desired. Type "EXIT" at the command prompt to return to MicroMODEL.

7.3 Change the Current Label

This program changes the current label pointer for either the sample, composite, or grade labels in the MicroMODEL database. The statistical and modeling programs always process the current label, depending on the menu in which these programs were invoked, so running this program is necessary each time statistics or grade modeling is to be run on a different sample, composite, or grade label.

Please note that with version 5.0 of MicroMODEL, the current label is generally changed with the "Label" Menu Choice. This submenu choice number 3 is now redundant, but was retained for continuity from previous versions.

The user is presented with drop down menus for all three label types. Any or all labels can be changed by selecting a new choice from each drop down menu. The user presses the OK button to continue, or CANCEL to cancel these choices.

The new choice(s) will appear in the lower right corner of the MAINMENU window.

7.4 Edit Grid Values

This option allows the user to view and edit the block value(s) of any existing MicroMODEL surface, rock, or grade model. The program displays the contents of up to five specified grids, in spreadsheet fashion, and optionally enables the user to change the block values.

This program can also be used to quickly view block values. The Grid Editor should be used with caution as block edits are written to the disk immediately and a back-up of the original grid is not created.

The user must choose to edit either 2-D grids, or 3-D grids. 2-D grids are either surface or thickness models. 3-D grids are grade models or rock models.

For 2-D grids, the user must select the type of grid (surface or thickness) and the model number is selected from a pulldown menu.

For 3-D grids, the user selects the grade label to edit (ROCK, or label). If a grade model is being edited, the model type (kriged, IDP, or polygon) must also be specified.

The user must enter the LEVEL NUMBER of the bench to be edited, followed by the STARTING ROW NUMBER and COLUMN NUMBER of the block(s) to be edited. The user also specifies whether blocks are to be edited by row or by level, and whether or not edits are allowed. At this point, the program proceeds through the blocks column by column on the specified row or level. To alter a block value change the value shown in the edit field. Note that edits cannot be made in the browse-only mode.

The user may "jump" from row to row or level to level by pressing the FORWARD or BACK buttons. The JUMP command button can be used to move directly to a new row-column-level location.

At any point in time, the user can choose the QUIT button and the program will exit. If the user presses the EXIT/SAVE button, the program will exit but will also update the current row/column/level of display in the program answerset. This allows the user to return directly back to a location of interest by rerunning the program.

The Cell-Up, Cell-Left, Cell-Right, and Cell-Down keys move the display a single cell in that direction. The Block-Up, Block-Left, Block-Right, and Block-Down keys move the view one full display in that direction.

When the user is viewing a row, the View Levels key can be used to switch to Level View. Conversely, when the user is viewing a level, the View Rows key can be used to switch to Row View.

7.5 Export MicroMODEL Grid or Block Model to a File

This program produces an ASCII data file containing the block values for a single existing MicroMODEL 2-D topo grid or 3-D block model. The user can specify one of three general formats. First, the "Standard" MicroMODEL format can be used. The user can also choose between a file with column/row/level values or easting/northing/elevation values.

To export more than one 3-D block model file to the same file, use "Export Multiple MicroMODEL Block Models to a File" (choice 7.13).

The user specifies the type of grid to be output, either 2-D (SURFACE or THICKNESS), ROCK, or GRADE MODEL. If a surface or thickness model is selected, then the user must specify the surface number or thickness number. If a grade model is to be output, then the MODEL TYPE (kriged, IDP, or polygon) and LABEL NUMBER must also be specified.

The user must then enter the NAME OF THE OUTPUT GRID. Care should be taken, so that a previously created file is not accidentally overwritten.

If Row/Column/Level or Easting/Northing/Elevation output is selected, then the user must specify the order in which the fields will be written. The standard order is Row-Column-Level-Value, or Easting-Northing-Elevation-Value. Any order may be selected. The user should take care that no duplicate field choices are selected. For example, do not set Field #1 to Easting and also set Field #3 to Easting.

With the "Standard" MicroMODEL format, all values are written to the file in order of column, then row, then level. The format of the output is one block value per record, organized in the following manner:

Structure of an ASCII Dump from a MicroMODEL Grid File using "Standard" MicroMODEL format

    -999.99      Level 1, Row 1, Column 1
    -999.99      Level 1, Row 1, Column 2
    -999.99      Level 1, Row 1, Column 3
        .                       .
        .                       .
        .                       .
     0.0358      Level 1, Row 1, Column n
    -999.99      Level 1, Row 2, Column 1
    -999.99      Level 1, Row 2, Column 2
    -999.99      Level 1, Row 2, Column 3
        .                       .
        .                       .
        .                       .
     0.0467      Level 1, Row 2, Column n
    -999.99      Level 1, Row 3, Column 1
        .                       .
        .                       .
        .                       .
     0.0711      Level 1, Row n, Column n
    -999.99      Level 2, Row 1, Column 1
     0.0833      Level 2, Row 1, Column 2
    -999.99      Level 2, Row 1, Column 3
        .                       .
        .                       .
        .                       .
    -999.99      Level n, Row n, Column n

By choosing Column, Row, Level, Value format, the user can create a file containing these four items in any order desired. The standard order is Column, Row, Level, and Value. Four drop-down menu fields are used to change the order of these fields. The format of the output is value per line, organized in the following manner:

Structure of an ASCII Dump from a MicroMODEL Grid File using Column/Row/Level/Value format

    1.  1.  1.   0.0358      Column 1, Row 1, Level 1
    2.  1.  1.   0.0561      Column 2, Row 1, Level 1
    3.  1.  1.   0.0608      Column 3, Row 1, Level 1
        .                       .
        .                       .
        .                       .

By choosing Easting, Northing, Elevation, Value format, the user can create a file containing these four items in any order desired. The standard order is Easting, Northing, Elevation, and Value. Four drop-down menu fields are used to change the order of these fields. The format of the output is value per line, organized in the following manner:

Structure of an ASCII Dump from a MicroMODEL Grid File using Easting/Northing/Elevation/Value format

    12.5  110. 105.  0.0358        Column 1, Row 1, Level 1
    37.5  110. 105.  0.0561        Column 2, Row 1, Level 1
    62.5  110. 105.  0.0608        Column 3, Row 1, Level 1
        .                       .
        .                       .
        .                       .

For the output choices of C/R/L/V or X/Y/Z/V values, the user can elect to skip the output of blocks which contain a single value specified by the user. A check box must be checked, and the single value is entered in the field to the right of the check box. For example, the user may wish to skip the output of all missing values. In this case, "-999.99" is entered. Another possibility is to skip all rock codes that have a value of zero.

The user may select a different flag value to use for missing data in the file output. The standard MicroMODEL value for missing is "-999.99", but other systems may require a different value. For example, some systems use "-1" or "-2" as a flag for missing data. If the value of "missing data" on output is set to "-1", then all blocks with an internal missing value of "-999.99" will be written out as "-1".

If non-formatted output is selected (field delimiter = Space, Comma, or Tab), then the user can specify the number of after-decimal digits to use on the coordinate values, and on the output value. The number of after-decimal digits can be set from minus 1 (integer output) to plus 7 (seven digits after the decimal).

For non-formatted output, the user specifies which type of field delimiter to use. This can be a SPACE, COMMA, or TAB. Otherwise, Fixed Format output is chosen, and the user must enter a valid FORTRAN output format.

If necessary, the user can specify offset values to add to the Easting, Northing, Elevation, or Column, Row, Level values. This offset is added to the block centroid before the value is written. Use this feature in cases where the new modeling system requires that the coordinates of the lower left corner of a block must be entered, or something similar.

If C/R/L/V output is chosen, the user can force the program to reverse the order of the rows or levels. For example, the MEDSystem (tm) program uses a convention of the top bench in a model being number 1, and the bottom bench being number "N". This is the opposite of the MicroMODEL level convention. It is possible that the other software system may also have the convention that row 1 is the furthest north, and row "N" is the furthest south. This is the opposite of the MicroMODEL row convention. It should be noted that, if a reverse is in effect plus an offset, then the reversal is performed first, then the offset is added to the reversed index.

The output from this program can be read back into MicroMODEL directly with the program discussed in Section 7.6.

7.6 Import from file to MicroMODEL Grid or Block Model

This option allows the user to read an ASCII data file containing surface, thickness, or block values from an externally created file into MicroMODEL. The format of the input must be one of the three used by the Grid Output Program (Section 7.5).

To import more than one 3-D block model at the same time from a single input file, use "Import Multiple MicroMODEL Block Models from a File" (choice 7.14).

The structure of a suitable External Grid for "Standard" MicroMODEL input into a MicroMODEL Grid File is the same as that given previously in section 7.5. Files containing row/column/level or easting/northing/elevation values can also be used, by specifying the appropriate choice.

First, the user specifies the type grid to be read, either SURFACE, ROCK, or GRADE MODEL. If a grade model is to be read in, then the MODEL TYPE (kriged, IDP, or polygon) and LABEL NUMBER must also be specified. If a surface model or thickness model is to be read in, then the model number must be specified.

Next, the NAME OF THE INPUT FILE is specified. The input grid must be present in the database directory.

By choosing Column, Row, Level, Value format, the user can read a file containing these four items in any order desired. The standard order is Column, Row, Level, and Value. Four drop-down menu fields are used to change the order of these fields.

By choosing Easting, Northing, Elevation, Value format, the user can read a file containing these four items in any order desired. The standard order is Easting, Northing, Elevation, Value. Four drop-down menu fields are used to change the order of these fields.

The user can opt to initialize the model to a given value. A check box must be checked, and the initial value is specified. For example, a rock model can be initialized to all "9999".

The user may select a different flag value that indicates missing data in the input file. The standard MicroMODEL value for missing is "-999.99", but other systems may use a different value. For example, some systems use "-1" or "-2" as a flag for missing data. If the value of "missing data" on input is set to "-1", then all input records with a value of "-1" will be stored as missing ("-999.99").

For non-formatted input, the user specifies which type of field delimiter to use. This can be a SPACE, COMMA, or TAB. The program actually uses a "FREE FORMAT" read for any of these three delimiters. Otherwise, Fixed Format input is chosen, and the user must enter a valid FORTRAN output format.

If necessary, the user can specify offset values to add to the Easting, Northing, Elevation, or Column, Row, Level values as they are read. Use this feature in cases where the modeling system that created the input file uses a different convention for writing block location or block index values.

If C/R/L/V input is chosen, the user can force the program to reverse the order of the rows or levels. For example, the MEDSystem (tm) program uses a convention of the top bench in a model being number 1, and the bottom bench being number "N". This is the opposite of the MicroMODEL level convention. It is possible that the other software system may also have the convention that row 1 is the furthest north, and row "N" is the furthest south. This is the opposite of the MicroMODEL row convention. It should be noted that, if a reverse is in effect plus an offset, then the reversal is performed first, then the offset is added to the reversed index.

7.7 Create a Combined Plot

This program produces a combined plot output from other MicroMODEL plots, and allows for adding custom annotation. The user must specify the number of plots to combine (from 0 to 12), plot extents, and annotation file names and offsets. In addition, the user must either specify a plot extent file from which plot extents will be read, or specify the plot extents as part of the program input.

The user enters the ANSWER SET NAME. Then, the OUTPUT PLOT SCALE must be specified. The plot scale only affects the appearance of the title block. The user should enter the scale at which the final plot output will be displayed.

The NUMBER OF ANNOTATION FILES can be anything between zero and twelve. For each file specified, the user must select the ANNOTATION FILE NAME, and the X and Y OFFSETS.

The user can omit certain items from the standard MicroMODEL program output and, presumably, replace them with custom annotation. By leaving the SHOW LEGEND, SHOW PLOT FRAME, SHOW TITLE BLOCK, or SHOW SCALE BAR check boxes unchecked, the user can omit these items.

If the user desires to override the plot limits stored in the PLOT EXTENTS file, then the check box "Check here to Override the Plot Extents File and Use the Limits Entered Below" should be checked. The minimum and maximum plot extents in the X and Y directions are then entered in the appropriate fields. If the user is not overriding the limits, then the appropriate NAME OF PLOT EXTENTS FILE must be selected.

The NUMBER OF PLOT FILES must be selected. This can be any number between 0 and 12. For each plot file selected, the user must pick the actual name of the file by pressing the appropriate command button. If the user desires to include the local grid, world grid, etc. (parts of the plot other than the main portion of the plot), then the check box labelled "Check Box to Plot Grid, etc." should be checked. The X OFFSET and YOFFSET to add to the plot file as it is being displayed must be entered in the two fields to the right of the plot file name.

The combine plot program will take multi-level plots, such as plan view cell plots and bench pierce point plots, and create a new combined plot that is also multi-level. Any annotation information that is specified will be inserted into each of the levels. When displaying several combined multi-level plots, be sure that each individual plot is created with the same level ranges.

7.7.1 Automatic Offset Option

Earlier versions of the combine plot program required the user to input plot offsets in the X and Y directions for each plot file to control how the different plots would overlay. The current version of this program includes an automatic offset option. As long as each individual plot file is of the same type (plan, N-S section, etc.), the automatic offset feature should work.

To enable the automatic offset, first choose which plot will act as the "main" plot using the radio buttons to the left of the plot names. The main plot must be chosen so that a "target" plot orientation is available. All other plots that are automatically offset will be adjusted relative to this target plot. After the "main" plot has been chosen, simply check the box labeled "Yes" under the "Automatic Offset?" column for each plot file to automatically offset.

Under almost every circumstance, the automatic offset feature will be used. However, there may be instances where the user may still wish to manually enter offsets. The following sections describe how MicroMODEL plots are oriented, and how to choose these manual offsets.

7.7.2 Plot Offsets for Plan View Plots

MicroMODEL plan view plots are all created with the lower left corner of the plot being at coordinate (0,0). "X" coordinates are measured as local grid East from the lower left corner. "Y" coordinates are measured as local grid North from the lower left corner. One or more plan view plots are easily overlaid by specifying the same row and column limits for each individual plot and using no offsets in the X or Y direction for each plot.

In cases where the user wants to combine plots that were created with different row and column limits, X and Y offsets must be specified. For example, to overlay a plot of digitized topography that covers the area from column 1 to column 50 and row 10 to row 80 with a plot of cell values that goes from column 20 to 30 and from row 40 to 50, use these offsets:

 Topography plot Offsets:  Xoffset = 0 YoffSet = 0
 Cell plot Offset in X direction = (20-1)*DIMCOL
 Cell plot Offset in Y direction = (40-10)*DIMROW

 Where:
    DIMCOL = column width
    DIMROW = row width

7.7.3 Plot Offsets for Section View Plots

Overlaying section plots can be a bit more tricky than plan view plots. The origin (coordinates 0,0) of section view plots varies depending on the type of plot, the section tolerance, and the character size entered for numbers.

For cell plots in section ( program XSECT ), the origin is located at the lower left corner of the sectional area specified. That is, at the bottom of the starting (lowest) level and at the left hand edge of either the starting row or starting column (depends on which type of section was chosen).

For drillhole cross section plots ( program SECT ), and for cone profiles in section ( program CONSCT ), the origin ( 0,0 )is located at the lower left corner of the plan view plot. The lower left corner of the main sectional information ( drillhole traces or cone profiles ) is offset up by a distance of two times the section tolerance plus eight times the character size for numbers. A drillhole section plot plus cone profile plot are easily overlaid if the same east/north/elevation limits, same tolerance, and same character size are used.

To overlay a mix of different section types, use either the drillhole section plot or the cone profile plot as the "base" plot. That is, specify no offset for this plot. Then, plot the cell plot using the same minimum and maximum eastings, northings, and elevations. Specify an offset for the cell plot that is equal to twice the tolerance used for the drillhole plot plus eight times the character size. For example, if a tolerance of 25 feet was used, and the character size was specified as 0.25 for a block size of 25 feet (row dimension), the Y offset should be:

    (2 x 25) + (8 x 25 x 0.25) = 100 feet

The user should note that for Version 5.0, the section programs now echo the appropriate offset that is needed on the same input screen as where the character size for plotting is entered. The offset is displayed in either FEET or METERS.

7.7.4 Annotation Files

Annotation files may be used to add lines, text, polygons, and boxes to the graphical output from the plot merging program. Annotation files are plain text (ASCII) files, and must be created using an editor or word processor. You may use any word processor to create these files. Be sure to save them as ASCII text. Shareware program TextPad or MicroSoft WordPad are two suitable programs for creating these files.

There are thirteen commands that can be used in an annotation file. These commands are:

Each command line consists of a command followed by a delimiter and then any required or optional parameters separated by delimiters. The following rules must be strictly adhered to:

  1. Commands shall be all capital letters, with no abbreviations allowed.
  2. Commands shall start in column 1. The only valid delimiter is a backslash (\).
  3. A delimiter should immediately follow the command with no space in between.
  4. Each parameter should be separated from the following parameter with a delimiter.
  5. The last parameter in a command line must be followed by a delimiter.
  6. If a parameter is skipped (this is accomplished by using two delimiter characters in a row with no space in between), then the parameter will be set to its previous value. Parameters which are left off of the end of a command line are assumed to be skipped.
  7. An exclamation point appearing anywhere in a command line will cause the rest of that line to be ignored. Use this feature for comments.
  8. If an actual exclamation point is desired in a text string, use a double bar (|) character in the input file. It will be converted to an exclamation point on output.
  9. Coordinates are referenced to the lower left corner of the plot (minimum easting and northing for plans, minimum distance from left side and elevation for sections). The remainder of this section refers to coordinates in eastings and northings.
  10. Default SCALE type is U (units), but coordinates can be referenced in units or inches.

7.7.4.1 BOX Command

The BOX command will draw a single box, or family of concentric boxes. Pen number used for drawing the box is controlled by the PEN command. Syntax for the BOX command is as follows:

     BOX\ x1 \ x2 \ y1 \ y2 \ factor \ nbox \

     Where:
     x1 = Coordinate of left hand side of box
     x2 = Coordinate of right hand side of box
     y1 = Coordinate of bottom of box
     y2 = Coordinate of top of box
 factor = Offset (+ = inward) from starting
          box where next concentric box starts. 
          Normally, this is a small value and is used to
          draw boxes with a "thick" border using "thin"
          pen tips.
   nbox = number of concentric boxes to draw
          including first box.

Example

    BOX\ 1.0 \ 4.0 \ 0.0 \ 6.0 \ 0 \ 1 \

    This command will draw a single box from 1
    to 4 east, and from 0 to 6 north.

7.7.4.2 BOXFIL Command

The BOXFIL command will draw a four point polygon, and then shade the polygon. For this command, the polyline coordinates are entered on separate lines immediately following the command line. There should be one line for each point, and no comments (!) are allowed on any of the X/Y point lines. Number of points must always be 4.

This command should only be used to shade rectangles or triangles, due to the simple method by which shading is done. Shading is accomplished by connecting "dots" that are evenly spaced running from point 1 to 2, with "dots" that are evenly spaced running from point 4 to 3. In order for this method to work, a line from point 1 to 4 must be parallel with a line from point 2 to 3. Note that if point 2 is the same as point 3, then a shaded triangle is drawn. Color is controlled by the PEN command. Syntax is as follows:

    \BOXFIL\ Size \ 4 \
    X(1), Y(1)
    X(2), Y(2)
    X(3), Y(3)
    X(4), Y(4)

    Where:

    Size = Shading spacing in units.
       4 = number of points (always 4!)
    X(1) = 1st easting coordinate of polyline.
    Y(1) = 1st northing coordinate of polyline.
    X(2) = 2nd easting coordinate of polyline.
    Y(2) = 2nd northing coordinate of polyline.
    .
    .
    X(4) = Last easting coordinate of polyline.
    Y(4) = Last northing coordinate of polyline.

Example

    BOXFIL\ 0.2 \ 4 \
    0.0 5.0
    10.0 5.0
    10.0 15.0
    0.0. 15.0

    This command will draw a box through
    (0,5), (10,5), (10,15), and (0,15).
    It will then shade the box with lines
    spaced 0.2 units apart.

7.7.4.3 FILE Command

The FILE command allows the user to switch input from the main annotation file to a second auxiliary file. Only 1 level of nesting is available. The user cannot place another FILE command in an annotation file that is already referenced from the main annotation file. Syntax is as follows:

    FILE\ filename \

    Where:
    filename = Name of another annotation file.

Example:

    FILE\ARROW.DAT\

    This command switches input from the
    current annotation file to file "ARROW.DAT." 
    After the last line in "ARROW.DAT" is read,
    input will revert back to the next line in the
    current annotation file.

7.7.4.4 LINE Command

The LINE command will draw a line from one point to another. Note that a line could also be drawn with the POLY command, using a polygon containing 2 points. Line color is set with the PEN command. Syntax is as follows:

    LINE\ x1 \ y1 \ x2 \ y2 \

    Where:

    x1 = Starting horizontal coordinate of line.
    y1 = Starting vertical coordinate of line.
    x2 = Ending horizontal coordinate of line.
    y2 = Ending vertical coordinate of line.

Example

    LINE\ 2.0 \ 4.0 \ 5.0 \ 6.0 \ 1 \

    This command will draw a line from 2 east,
    4 north, to 5 east, 6 north.

7.7.4.5 OFFSET Command

The OFFSET command adds an offset in one or both directions. The OFFSET command is cumulative, and mixing offsets for different SCALE units is allowed. Before any offset has been applied, the "base" origin is set at (0,0). Each OFFSET command accumulates additional easting and northing, with the exception of the OFFSET command to reset to (0,0). Remember that, for annotation to appear within the map borders, the easting and northing of the command plus the current offset should fall within the map minimum and maximum northings and eastings. Syntax of the OFFSET command is as follows:

    OFFSET\ xoff \ yoff \

    Where:
    xoff = Added offset in the east direction.
    yoff = Added offset in the north direction.

    Note:  If both xoff and yoff are 0.0, then
    the current OFFSET resets to (0,0).

Assume: Map plotted from 2000.0 to 3000.0 East and from 4000.0 to 5000.0 North. Map scale is 1"=100ft. Examples are assumed to be the first commands in the annotation file.

Example 1:

    OFFSET\ 2000.0 \ 4000.0 \
    LINE\ 0.0 \ 0.0 \ 1000.0 \ 1000.0 \

    This command will draw a line from the
    lower left corner of the map to the upper right
    corner of the map.

Example 2:

    OFFSET\ 2000.0 \ 4000.0 \
    SCALE\I\
    OFFSET\ 5.0 \ 2.0 \
    BOX\ -1.0 \ 1.0 \ -1.0 \ 1.0 \

    This command will draw a box that is 2
    inches on a side with its center at a spot
    that is 5 inches over, and 2 inches up from,
    the lower left corner of the map.

Example 3:

    OFFSET\ 2000.0 \ 4000.0 \
    SCALE\I\
    OFFSET\ 5.0 \ 2.0 \
    BOX\ -1.0 \ 1.0 \ -1.0 \ 1.0 \
    OFFSET\ 0.0 \ 0.0 \
    SCALE\U\
    OFFSET\ 2000.0 \ 4000.0 \
    LINE\ 0.0 \ 0.0 \ 0.0 \ 1000.0 \

    This command will draw a box that is 2
    inches on a side with its center at a spot
    that is 5 inches over, and 2 inches up from,
    the lower left corner of the map.  It then
    draws a line along the lefthand side of the
    map from bottom to top.

7.7.4.6 PEN Command

The pen command is used to select a new pen color. This pen color affects lines, polylines, boxes, and text. Syntax of the PEN command is as follows:

    PEN\ number \

    Where:
    number = pen number from 1 to 99

Example:

    PEN\ 2 \

    This command changes the current pen to
    number 2.

7.7.4.7 PFILL Command

The PFILL command will draw a filled polygonal shape consisting of three or more points using a specified pen color. For this command, the polyline coordinates are entered on separate lines immediately following the command line. There should be one line for each point, and no comments (!) are allowed on any of the X/Y point lines. Maximum number of points is 500. Syntax is as follows:

    PFILL\ NPT \ IPEN \
    X(1), Y(1)
    X(2), Y(2)
    . . .
    . . .
    X(NPT), Y(NPT)

    Where:
    NPT = Number of polygon points.
    IPEN = Pen number for fill color.
    X(1) = 1st easting coordinate of polygon.
    Y(1) = 1st northing coordinate of polygon.
    X(2) = 2nd easting coordinate of polygon.
    Y(2) = 2nd northing coordinate of polygon.
    X(NPT) = Last easting coordinate of polygon.
    Y(NPT) = Last northing coordinate of polygon.

Example:

    PFILL\ 3 \ 5 \
    0.0 5.0
    1.0 4.0
    3.0 0.0

    This command will draw a filled polygon
    through (0,5), (1,4), and (3,0) with pen 5.

7.7.4.8 POLY Command

The POLY command will draw a polyline connecting two or more points. For this command, the polyline coordinates are entered on separate lines immediately following the command line. There should be one line for each point, and no comments (!) are allowed on any of the X/Y point lines. Maximum number of points is 500. Syntax is as follows:

    POLY\ NPT \
    X(1), Y(1)
    X(2), Y(2)
    . . .
    X(NPT), Y(NPT)

    Where:

    NPT = Number of polygon points.
    X(1) = 1st easting coordinate of polyline.
    Y(1) = 1st northing coordinate of polyline.
    X(2) = 2nd easting coordinate of polyline.
    Y(2) = 2nd northing coordinate of polyline.
    X(NPT) = Last easting coordinate of polyline.
    Y(NPT)= Last northing coordinate of polyline.

Example:

    POLY\ 3 \
    0.0 5.0
    1.0 4.0
    3.0 0.0

    This command will draw a polyline through
    (0,5), (1,4), and (3,0).

7.7.4.9 RECTA Command

The RECTA command will draw a filled rectangle. An optional pen number can be specified which overrides the current pen number. Syntax for the RECTA command is as follows:

    RECTA\ x1 \ x2 \ y1 \ y2 \ ipen \

    Where:
    x1 = Coordinate of left side of rectangle
    x2 = Coordinate of right side of rectangle
    y1 = Coordinate of bottom of rectangle
    y2 = Coordinate of top of rectangle
  ipen = pen color for fill

Example:

    RECTA\ 1.0 \ 4.0 \ 0.0 \ 6.0 \ 0 \ 11 \

    This command will draw a filled rectangle
    single box from 1 to 4 east, and from 0 to 6
    north  Fill color will be 11..

7.7.4.10 RESET Command

The RESET command will reset all line and text attributes to their default values. Syntax is:

    RESET\

Default values for line and text attributes are as follows:

     Pen = 1
     Horizontal alignment = L (Left)
     Vertical alignment = B (Bottom)
     Text Height = 1.0

7.7.4.11 SCALE Command

The scale command changes the scale factor from the current value. This command is used to switch from coordinates in user units (feet or meters) to coordinates in inches, or vice-versa. It can also be used to apply a scale factor to coordinates. Syntax of this command is:

    SCALE\ stype \ fact \

    Where:

    stype = scale type
    "I or i" = Inches
    "U or u" = Units (meters or feet) [DEFAULT]
    "X or x" = Factor (think of X as multiplication)
    fact = factor (applies only when stype = X)

If the scale type is Inches, then all coordinates and text character heights are assumed to be in inches. If the scale type is Units, then all coordinates and text character heights are assumed to be in units (feet or meters). If the scale type is Factor, then the factor entered is applied to all inputs, with coordinates and character heights assumed to be in whatever the previous setting for scale was (Inches or Units).

The following examples should help in understanding the different ways in which the SCALE command can be used:

Example 1:

    SCALE\ I \
    TEXT\ 2.5 \ 3.5 \ 0.1 \THIS IS A TEST\

    This sequence will plot the text string "THIS
    IS A TEST" at a location that is 2.5 inches to
    the right of, and 3.5 inches above, the
    current offset.  Height of the text string will
    be 0.1 inches.

Example 2:

    SCALE\ U \
    TEXT\100.0\-50.0\10.0\TEST TWO\

    This sequence will plot the text string "TEST
    TWO" at a location that is 100.0 units (feet
    or meters) to the right of, and 50.0 units
    below, the current offset.  Height of the text
    string will be 10.0 units.

Example 3:

    SCALE\ U \
    SCALE\ X \ 0.5 \
    TEXT\ 80.0 \ 20.0 \ 30.0 \SHRINKING\

    This sequence will plot the text string
    "SHRINKING" at a location that is 40.0 units
    (80.0 x 0.5) to the right of, and 10.0 units (20.0
    x 0.5) above, the current offset.  Height of the
    text string will be 15.0 units (30.0 x 0.5).

Example 4:

    SCALE\ I \
    SCALE\ X \ 3.0 \
    TEXT\ -1.0 \ 2.5 \ 0.2 \EXPANDING\

    This sequence will plot the text string
    "EXPANDING" at a location that is 3.0 inches
    (1.0 x 3.0) to the left of, and 7.5 inches (2.5 x
    3.0) above, the current offset.  Height of the
    text string will be 0.6 inches (0.2 x 3.0).

7.7.4.12 SETTXT Command

The SETTXT command sets the various text attributes that will be used when displaying text. Syntax is:

    SETTXT\ ang \ H \ V \

    Where:
    ang = Angle at which text should be plotted
      H = Text horizontal alignment
        L (or l) = left side [DEFAULT]
        C (or c) = centered
        R (or r) = right side
      V = Text vertical alignment
        T (or t) = Top
        M (or m) = Middle
        B (or b) = Bottom

Example 1:

    SETTXT\90.0\C\M\

    This command changes the text attributes
    to 90 degrees, centered horizontally and
    vertically.

Example 2:

    SETTXT\90.0\R\T\

    This command changes the text attributes
    90.0 degrees, aligned right horizontally, and
    top vertically.

7.7.4.13 TEXT Command

The TEXT command will display text, located at a given position and drawn at a given height. All other text attributes are set with the SETTXT and PEN commands. Syntax is:

    TEXT\ x \ y \ height \ text \

    Where:
    x = Horizontal coordinate location of text
    y = Vertical coordinate location of text
    height = Height of text in scale units
    text = Text string to display

Example:

    TEXT\400.0\200.0\50.0\Text String\

    This command will draw the text string "Text
    String" located at 400 east and 200 north. 
    Height of the text string will be 50.  The
    location of the text string relative to the
    location coordinates depends on the current
    text attributes (See SETTXT command).

7.7.4 General Comments

The plot merging program does a RESET before displaying each of the annotation files selected in the program input section. Thus, the X,Y offset is changed to (0,0), pen color is changed to number 1, text alignment is changed to Left-Bottom, text angle is set to 0.0, and text height is set to 1.0.

When using annotation files, be sure to always include some comments so that the purpose of that file can quickly be determined several months or years later. A simple comment at the top, such as "This annotation file draws a north arrow centered at (0,0) that is 2 inches high", is sufficient. More complicated annotation files may require more comments.

It is suggested that each map that will be plotted should have its own "top level" annotation file. Within this file should be a series of OFFSET commands and FILE commands that add various pieces of the annotation to the plot.

Avoid stringing together long series of commands without OFFSETs back to (0,0). This makes it easier to fix any problems with alignment of individual pieces of annotation.

7.8 Enter Drillhole Class Names

MicroMODEL allows the user to specify subsets of drillholes to be used by the statistics programs, modeling programs, section plotting programs, and several others. Generally, any program that takes action on drillhole data incorporates the class limit feature.

To use class limits, the first step you must take is to run the program to Enter Drillhole Class Names. All you are doing with this program is telling MicroMODEL how many drillhole classes you want to define, and a description for each class. For example, you may have a property that was drilled by three different owners. Drillholes could be subdivided into "Owner Number 1", "Owner Number 2", and "Owner Number 3." Another possibility is to separate drillholes into classes based on the drilling method. You might have "Core Drilling" and "Reverse Circulation."

You must define the drillhole classes before any other steps related to drillhole class limits can be taken. In addition to the class names, you must also enter pen numbers that will be used when plotting drillhole locations or drillhole traces. If you enter "0" (zero) for either value, then the value that you enter in the actual program will be used. If you enter a non-zero value here, then this value will always override the value set in the actual program. Consequently, you may want to have several answersets defined for drillhole class names. They would have the same number of classes and class names, but one set would have values of zero for the pens, the other would have non-zero values. Use the answer set with zero values when you want to control the pen color from the actual program. Use the answer set with non-zero values when you want to control the color based on drillhole class.

When you run the program to "Enter Drillhole Class Names", a file called "DHCLASS.ANS" is created. This is a data file that contains the class information. It is also a flag to other MicroMODEL programs that tells them the class limits are in effect. To disable class limits, you can rename or delete this file.

7.9 Assign Drilhole Class to Each Drillhole

After class names have been defined, the user must tell MicroMODEL which drillholes belong to which class. This task is accomplished with Assign Drillhole Class to Each Drillhole.

If you have a small number of drillholes, you can do your assignments from within this program. Simply change the drillhole class from the initial value of zero to the appropriate class number. When you have made all the assignments, <Continue> and these assignments will be added to the MicroMODEL drillhole data base.

If there is a large number of drillholes, it may be easier to use a text editor to change the values. In order to do this, immediately select <Continue> without changing any of the class numbers. By exiting without changing any of the class numbers, the MicroMODEL drillhole data base retains initial values of zero for class numbers. A file called "DEFCLASS.DAT" is created. You may now edit this file, and change the class values to their appropriate value for each drillhole listed in the file. For each line in the file, you will find the drillhole class number, followed by the drillhole name. Be sure not to alter the format of this file. If you need to change from zero to ten, for example, change "Space-Zero" to "One-Zero."

Once you have finished editing "DEFCLASS.DAT," run "Assign Drillhole Class to Each Drillhole" again. It will read the values of drillhole class from "DEFCLASS.DAT", and you can then check your choices by paging through each screen of drillholes. Change any values, as necessary, and then exit the program. Your drillhole class choices will then be transferred into the MicroMODEL drillhole data base. Note that when you exit this program, any changes you made are automatically placed into a new copy of "DEFCLASS.DAT."

Any time that you run the program to assign drillhole class to each drillhole, it is a good idea to make a backup copy of the file "DEFCLASS.DAT!"

7.9.1 Appending or Reloading Drillhole Data

When drillhole data is reread or appended, the MicroMODEL program that reads your data (DHREAD) will try to take class definitions that are found in file "DEFCLASS.DAT" and match them with the data that you are reloading. Any drillholes that are in the reloaded data, but not in the file "DEFCLASS.DAT," are flagged by the program. You will see a message "WARNING: No class limits found for drillhole XXXXXX." After reloading your data, you should run the program to assign drillhole class to each drillhole, just to be sure that your original class assignments still stand.

If you are appending new data, then the current version of DEFCLASS.DAT will not contain the new drillholes. You have two options. First, you can just run the program, knowing that there will be no matches found for these new holes in the file "DEFCLASS.DAT." Or, you can edit the file "DEFCLASS.DAT" and add the new drillhole names and the class number you want to use for each drillhole. Then, when you run the program that appends the new drillhole data, these class assignments will automatically be made. Again, after appending your data, you should run the program to assign drillhole class to each drillhole to verify that your new class assignments have been made.

7.10 Set Drillhole Class Limits

After drillhole class names have been entered, and a class has been assigned to each drillhole, class limits can be implemented. This is accomplished through the program to Set Drillhole Class Limits.

Use the multiple answerset feature to preset various combinations of drillhole classes. Within each answerset, you must select or unselect each drillhole class with a check box. There is another choice which allows you to request that each MicroMODEL program that uses these class limits either pause, or continue without pausing, after the class limits that are in effect are printed to the screen. For most applications, it is prudent to request a pause, so that the user will always be reminded that class limits are in effect. However, if the user is running MicroMODEL in a batch mode, it may be desirable to skip the pause.

7.11 Dump Drillhole Data in XYZ Format

This choice allows the user dump drillhole sample or composite data to a text file which contains the X-Y-Z midpoint location for each interval. This format is sometimes useful for importing to other software systems, or to a spreadsheet file.

The type of data (Sample or Composite) is chosen. If the user wishes to limit the data to a range of eastings, northings, and elevations, then the "Check to Enable the Following Limits on Output" checkbox should be checked, and the appropriate range limits are entered.

The output file is selected by pressing the File Name command button.

The user must enter a valid FORTRAN format for writing the data. Normally, the default format that is presented is adequate. A short example of output from this program is presented below. The columns shown are drillhole name, X coordinate (Easting), Y coordinate (Northing), Elevation, Rock, and Assay Value 1.

  DH15            4667.00     5143.00     3397.50     99.       .0220
  DH15            4667.00     5143.00     3392.50     99.       .0620
  DH15            4667.00     5143.00     3387.50      3.       .1370
  DH15            4667.00     5143.00     3382.50      3.       .0790
  DH15            4667.00     5143.00     3377.50      3.       .0260

7.12 Create Grade Range Annotation File

This choice allows the user to create a custom annotation file for either grade ranges, or for rock code descriptions.

For each grade range, the user specifies the lower and upper cutoffs from the standard MicroMODEL cutoff input screen. The number of cutoffs is specified, as well as each cutoff value and the color code to associate with that cutoff range. The user can retrieve the cutoff information from a previously saved cutoff definition file.

The size of the color boxes, box spacing, text height, etc. are all adjustable through the use of several input screens. When the program runs, it creates an ASCII (text) annotation file that can be used with the "Combine a Combined Plot" program (Section 7.7). The program also creates a standard MicroMODEL plot file that can be previewed on screen.

7.13 Export Multiple MicroMODEL Block Models to a File

This program produces an ASCII data file containing the block values for one or more existing MicroMODEL 3-D block models.

The user may opt to output row/column/level, or easting/northing/elevation, for the block coordinates. One or more 3-D block models can be exported. The rock file, R200, or any 3-D grade model files (Gxxx) can be exported. The user can specify what type of output to produce (delimited or fixed format). Optional block index or coordinate offsets can be added. The value for "missing data" in the output file can be specified for each model, and the number of digits after the decimal to output for each model for the delimited output version can be specified. The user may opt to export only a subset of the original model by choosing starting and ending rows, columns, and levels.

On the first input screen, the user enters the ANSWER SET NAME. This name is also the name of the run and is printed on the program output. A check box beneath the answer set name can be used to force the program to scan for minimum and maximum values stored in each model to be exported. If this check box is checked, then the program does not produce the final ASCII text output, but instead, a list of the minimum and maximum values is generated. This check box is provided so that the user may easily decide which fixed format to use when exporting the data.

Next, the user selects the style of output data and the number of models to export. The output style is either row/column/level, or block centroid easting/northing/elevation. Note that if row/column/level ouput is chosen, and if fixed format output is selected, then the first three columns of information written to the ASCII output file must be row, column, and level (in any order). Generally, it is recommended that the user output the block centroid, as this usually eliminates the possibility of any mixups in model transfer due to differences in row, level, or column numbering conventions.

The number of models to export can be anything between one and thirteen. To export the rock model and two grade models, set this number to three.

The output can be space, comma, or tab delimited. Alternatively, a fixed FORTRAN format can be used to generate the output file. An optional offset can be added to the row/column/level, or to the block centroid easting/northing/elevation if desired.

7.13.1 FORTRAN Format Information

A valid FORTRAN format consists of a list of field identifiers enclosed in parenthesis. The user should refer to a FORTRAN programming book for detailed information, but the following examples should be sufficient to figure out a suitable format.


FORTRAN Format syntax:

Real format = Fn.m, where n=total field width, m=number of decimal digits
Integer format = Ix, where x=total field width

Row/Column/Level output with three models.

12345678901234567890123456789012345 (Column Number)
  81 221   4     1.    61.1  0.012
  82 221   4     2.    71.2  0.023
  83 221   4     3.    81.3  0.037
  84 221   4     4.    91.4  0.032
  85 221   4     5.   101.5  0.113
  86 221   4     6.   111.5  0.015
  87 221   4     7.   121.7  0.017
  88 221   4     8.   131.8  0.112
  89 221   4     9.   141.9  0.010
  90 221   4    10.   151.0  0.005

The first three variables are integers, so they must be written with an Integer (I)
format.  Each integer uses four columns or spaces. This is an I4 format.  The next
three variables are real (decimal) numbers, so they must be written with a
Floating Point (F) format.  The first value uses seven columns for output,
with no trailing decimal.  This is an F7.0 format.  The next variable uses
eight columns, with one trailing decimal.  This is an F8.1 format.  The last
variable uses seven columns, with three trailing decimals.  This is an F8.3
format.  The overall format that is used to write these values is:

(I4,I4,I4,F7.0,F8.1,F8.3)which can be shortened to (3I4,F7.0,F8.1,F8.3)


Easting/Northing/Elevation output with two models.

123456789012345678901234567890123456789012 (Column Number)

  117187.5  120987.5    5237.5   87. 12.20
  117212.5  120987.5    5237.5   70. 16.00
  117237.5  120987.5    5237.5   54. 16.00
  117262.5  120987.5    5237.5   38. 16.00
  117287.5  120987.5    5237.5   20. 16.00

All variables are real (decimal) numbers, so they must be written with a
Floating Point (F) format.  The first three coordinate values all use ten
columns, with one trailing decimal.  This is an F10.1 format.  The next
variable uses six columns, with no trailing decimals.  This is an F6.0 format.
The last variable uses six columns, with two trailing decimals.  This is
an F6.2 format.  The overall format that is used to write these values is:

(F10.1,F10.1,F10.1,F6.0,F6.2)which can be shortened to (3F10.1,F6.0,F6.2)

If the user is exporting model information to another software system that uses a convention that is the reverse of MicroMODEL for row or level numbering, then check the appropriate check box. "Reverse Level Order" will cause the level numbers to be written in the reverse order (MEDSystem (tm) uses a backwards level numbering convention). "Reverse Row Order" can be used to write the row numbers in reverse (row #1 at top (north) of the model. It should be noted that, if a reverse is in effect plus an offset, then the reversal is performed first, then the offset is added to the reversed index.

On the second input screen, the user must select which items to export, and in which order. Generally, the coordinate information is written out in the first three columns. If row/column/level output using fixed FORTRAN format has been selected, then the first three items must be row, column, and level in any order.

For each model selected, the user must choose which label to export, and which model type. For example, "Gold" and "Inverse Distance". The number of digits after the decimal should be chosen if delimited output is being used.

The value of "missing" on output should be chosen for each model. Other software systems use a different internal value for "missing" than MicroMODEL. MicroMODEL uses the value "-999.99" to denote missing data. Other systems use flag values such as "-1.0" or "-999." to denote missing data.

The third screen allows the user to export a subset of the model by choosing row, column, and level limits. To write out the entire model, leave the values as they have been set initially. Otherwise, choose whichever subset is desired.

It should be noted that the output file generated by this program can be very large in size. Typically, the file will be from five to ten times the size of a single MicroMODEL 3-D grade file.

7.14 Import Multiple MicroMODEL Block Models from a File

This program produces one or more MicroMODEL 3-D block model files from an existing ASCII (text) file.

The user may opt to input row/column/level, or easting/northing/elevation, for the block coordinates. One or more 3-D block models can be imported. The rock file, R200, or any 3-D grade model files (Gxxx) can be imported. The user can specify what type of output to produce (delimited or fixed format). Optional block index or coordinate offsets can be added. The value for "missing data" in the output file can be specified for each model, and the number of digits after the decimal to output for each model for the delimited output version can be specified. The user may opt to import only a subset of the original model by choosing starting and ending rows, columns, and levels.

On the first input screen, the user enters the ANSWER SET NAME. This name is also the name of the run and is printed on the program output.

Next, the user selects the style of input data and the number of models to import. The output style is either row/column/level, or block centroid easting/northing/elevation. Note that if row/column/level input is chosen, and if fixed format output is selected, then the first three columns of information read from the ASCII output file must be row, column, and level (in any order).

The number of models to import can be anything between one and thirteen. To import the rock model and two grade models, set this number to three.

The input can be space, comma, or tab delimited. Alternatively, a fixed FORTRAN format can be used to read the input file. Refer to section 7.13 for a short tutorial on specifying a FORTRAN format. An optional offset can be added to the row/column/level, or to the block centroid easting/northing/elevation as it is read in, if desired.

If the user is importing model information to another software system that uses a convention that is the reverse of MicroMODEL for row or level numbering, then check the appropriate check box. "Reverse Level Order" will cause the level numbers to be written in the reverse order (MEDSystem (tm) uses a backwards level numbering convention). "Reverse Row Order" can be used to write the row numbers in reverse (row #1 at top (north) of the model.

On the second input screen, the user must select which items to import, and in which order. Generally, the coordinate information is written out in the first three columns. If row/column/level output using fixed FORTRAN format has been selected, then the first three items must be row, column, and level in any order.

For each model selected, the user must choose which label to import, and which model type. For example, "Gold" and "Inverse Distance".

The value of "missing" on input should be chosen for each model. Other software systems may use a different internal value for "missing" than MicroMODEL. MicroMODEL uses the value "-999.99" to denote missing data. Other systems use flag values such as "-1.0" or "-999." to denote missing data.

The check box "Check to Initialize Model" should be checked if the user wishes to initialize the input model. Normally, the model will not exist before information is imported. If the file does not exist, then it is initialized, regardless of the check box setting. The value each block in the model is initialized to is entered in the field to the right of the check box. If the model file aready exists, then it will not be initialized unless the check box is set. Note that the model may already exist, and an ASCII input file can be used to update a portion of the model, if desired.