You are on page 1of 23

U S E R S

C O N F E R E N C E

1 4 - 1 5

O C T O B E R

2 0 0 3

Block Model Coding Methods


Presented by: Warren Cook, Mining Systems Analyst, Metech Pty Ltd
INTRODUCTION
Block model coding has become more flexible with the introduction of coding from polygons in a recent version of MineSight
3D. It gives the users an alternative to coding from solids. The logic used in polygon coding replicates the logic used in
M667V1, which codes the models from VBM data. This paper will discuss the advantages and options available with the
polygon coding option together with some general coding techniques.

MODEL VIEW EDITOR


Block model coding in MineSight is performed from within the Model View Editor and long-time MineSight users will notice
some changes to the format of the Model View Editor. Coding is managed by a combination of the Geometry and Code
Model tabs.

Geometry Tab
The Geometry tab has been re-designed for easier selection and management of polygons and solids. The Geometry section
of the Geometry tab allows the selection of a Geometry Data object to be used for Model Coding or Exposed Ore display. Any
geometry object present in the Data Manager may be used for coding a model (including linked objects), whether the object is
open or closed in the MineSight viewer.

www.metech.com.au

-1-

Block Model Coding Methods

Geometry Objects are selected using the Object Contents Browser (OCB)
icon
or the Folder Selection icon
, both located to the right of
the Selected Geometry display. A new option that makes loading
geometry more convenient is the ability to select entire folders from
within a MineSight project. The Folder Selection icon allows the selection
of all geometry (polygons, solids, etc.) within a folder, instead of selecting
geometry from one geometry object at a time. This option will select all
geometry (polygons and surfaces/solids), open or not, from within the
selected folder
Below these two icons are the filter options.
.
If only polygons are desired, then turning off the solids filter icon will only
allow polygons to be selected when using either the OCB or Folder
Selection. If both filters are left on then all geometry will be available for
selection. This behaviour is the same for single type geometry objects
(polygons or solids) and mixed contents geometry. That is it will still filter an object containing both polygons and solids.

-2-

www.metech.com.au

Production Drilling in MineSight

Objects present in the Selected Geometry Display may be removed from a geometry set by highlighting the unwanted object
in the dialog display and clicking the delete button

to the right of the OCB icon.

For those users who often code models, you now have the advantage of saving your geometry selection by using the Save
Geometry Set option. This allows the user to quickly and easily reload the same set of geometry for more efficient model
coding.
Objects present in the Selected Geometry Display may be saved as a geometry set for quick access during future coding. Sets
can be saved by clicking on the Save Geometry Set button. The Save Geometry Set dialog will appear. A new set name
may be entered into the text window to the right of Geometry Set Name. The new set may overwrite an existing set by
choosing a name from the Existing Geometry Set: window. Click OK to save the geometry set.

www.metech.com.au

-3-

Block Model Coding Methods


Saved geometry sets may be deleted using the Delete Geometry Set button. Choose the geometry set to be removed either
by typing the name into the Current Geometry Set: window, or by selecting from the drop down list using the arrow to the
right of the Current Geometry Set: window. When the unwanted geometry set appears in the Current Geometry Set:
window press the Delete Geometry Set button to delete it.
When the Confirm Change not saved/Deleted/Overwrite a set option is toggled ON, a Yes/No warning window is
displayed which is useful in preventing you from accidentally deleting or overwriting an existing geometry set. If this option is
toggled OFF the warning windows are disabled.
Clicking on the Code model button
switches to the Code Model tab, where the various Model coding
options can be selected. The Code Model tab is also accessed by clicking on the tab at the top of the Model View Editor
window.

Code Model Tab


The Code Model tab allows you to code items in the model file (file 15) directly from a geometry object: single or multiple
geometry objects consisting of solids or polygons. The geometry objects used for coding are selected on the Geometry tab
dialog.
The first option on the Model View Editor Code Model tab is a drop-down list at the top, left-hand corner containing options
to Code From Solids or From Polygons. If the geometry objects selected on the Geometry tab are solids, then Code
From Solids should be used. Likewise, if the selected geometry objects are polygons, then the option to code From Polygons
should be used. A third option, which is under current development and is ability to code between surfaces.

-4-

www.metech.com.au

Production Drilling in MineSight


The Code Model tab now contains several sub-tab dialogs. The sub-tabs change depending on the coding option selected.

From Polygons
When coding From Polygons is selected, the orientation for coding must be chosen from the drop down box (Benches/Model
XY, EW Sect/Model XZ and NS Sect/Model XZ). The Orientation: drop-down list, located at the top right-hand corner of the
dialog, allows you to control which direction the model gets coded. If the polygons are mostly horizontal, then the
Benches/Model XY option should be used. If the selected polygons are vertical, then either the EW or NS section orientation
options should be used, depending on which way the plane the polygons are oriented.

Below these drop-down boxes are the coding options tabs. It is possible to have a total of five tabs. The first two tab dialogs
are available to all coding options (Solids or Polygons). The third is the Items tab, which allows the use of up to 12 total coding
items, and is available when the More Items checkbox on the Coding options tab is selected. The last two tabs (Planes and
2D Options) are only available when coding From Polygons.

www.metech.com.au

-5-

Block Model Coding Methods


Coding Options
The entries on this page are divided in two groups Storing options and Items

Storing options

There are seven coding option choices when coding with polygons.

1. CODE by majority code


This option codes individual blocks with the material codes of the geometry objects in order of the largest
percentage of a geometry object inside the block. The result is stored into a single item.
For example, geometry objects C and D have material codes 3 and 4 respectively. Inside a model block,
geometry object C fills 30% of the volume, while geometry object D fills 40% of the volume. The first
block item selected will be coded 4, because object D is the majority code inside model block. If a second
model code item is selected, it will be coded 3, because object C is the second majority code inside the
model block.

Zone 3
30%

-6-

Zone 4
40%

www.metech.com.au

Production Drilling in MineSight


2. CODEs and PERCENTs in majority order
This option is like the CODE by majority code option above, with the addition of a percentage item. With
this option, the model will code the model code item selected, and the percentage of the block that the
geometry object occupies.
For example, geometry object C has a model code of 3. Inside a model block, geometry object C
occupies 30% of the block. Therefore, the selected Code Item will be assigned a code of 3, and the Ore
Percent Item will be assigned 30%.
For example, geometry objects C and D have material codes 3 and 4 respectively. Inside a model block,
geometry object C fills 30% of the volume, while geometry object D fills 40% of the volume. The first
block Code Item selected will be coded 4 the Ore Percent Item will be assigned 40%., because object D
is the majority code inside model block. If a second model code item is selected, it will be coded 3 the Ore
Percent Item will be assigned 30%., because object C is the second majority code inside the model block.

Zone 3
30%

Zone 4
40%

3. CODEs and non-zero PERCENTs in codes' order


This option is the same as the 'Codes and Percents in majority order' option above, except that the codes
are arranged by code priority order instead of by majority order. Use the button labelled Prioritize Model
codes to change the code priority order. This button is found at the lower left-hand corner of the dialog.

www.metech.com.au

-7-

Block Model Coding Methods

Zone 3
30%

Zone 4
40%

4. all PERCENTs in codes order


This option only codes the percentage of each object contained inside a model block. They are arranged in
code priority order.

Zone 3
30%

-8-

Zone 4
40%

www.metech.com.au

Production Drilling in MineSight


5. Total PERCENT within solid(s)/polygon(s)
Only one model item may be updated with this option. The result is the percentage of all selected
geometry objects within a model block.
For example, inside a model block, geometry object C fills 30% of the volume, while geometry object D
fills 40% of the volume. The block Ore Percent Item will be assigned 70%., which is the total percentage
that all geometry fills the block.

Zone 3
30%

Zone 4
40%

6. Hangingwall/footwall/interburden (polygons only)


This option is used for evaluating seams, such as multi-layered coal formations, and is only available when
coding From Polygons and when coding a model in vertical section. This option allows one to store
partials of the areas of a block NOT enclosed by a polygon.

Hangingwall
Interburden

Footwall

www.metech.com.au

-9-

Block Model Coding Methods


When using this option, 3 items are available for coding. The items are coded with a percentage of a block
that matches the item definition. Hanging wall is the area of the block that extends from the topside of
the block (higher elevation) down to the first geometry object encountered (presumed to be the ore body
or seam). Footwall is the area of a block that extends from the bottom side of the block (lower elevation)
up to the nearest geometry object. Interburden is the area inside a block that does not touch either upper
or lower boundaries, but is sandwiched between two or more geometry objects within one block. If only
one geometry object is used, then the interburden value will be 0% since there is no area that is not
bordered by the upper or lower boundaries of the block.
7. CODE at block centers (from polygons only)
This option is only available for use when coding From Polygons. The coding option is the same as CODE
by majority order, except the only code applied to model blocks is the code of the object that is positioned
at the block center. The result is stored into a single item.

Min value of majority percent to code block: input window

When coding by majority code, one can specify the minimum value of majority percent to code the block
(this value is ignored for other coding options). This option is useful for controlling which blocks get coded.
The default value is 1%, but can be as high as 100%. For example, setting the minimum value to 100%
means only blocks totally encompassed by the selected geometry objects would be coded or if set to 50%
then at least 50% of the geometry must fill the model block.

- 10 -

www.metech.com.au

Production Drilling in MineSight

If set 'Min value of


majority percent to code
block is set to 50 then
the block on the right
would get coded but the
block on the left would
not.

Code entire model checkbox

By default only the current model view range, as set on the Range tab of the Model View Editor, is coded.
Toggle on this option to code the entire block model.

In this example
only a single
block would be
coded

Partial item is WASTE checkbox

This option behaves differently when Coding From Solids and when coding From Polygons. When
Coding from Solids, it applies when you are storing a single partial. In this case 100% - partial% (or 1
partial fraction) is stored.

When coding From Polygons, the waste option is available to all storing options (although ignored when
using Hangingwall/footwall/interburden). The partial area of a block outside polygons is coded based on
the code of the influencing polygon. When coding, slices pierce the model in the selected direction, either
down through the block when using vertical slices, or from a higher easting/northing to a lower
easting/northing for horizontal slices. The default direction is horizontal slices, which run in the east/west
direction in plan. Vertical slices may be selected on the 2D Options page by toggling ON the Use
vertical slices checkbox. The area directly below an object (the shadow of the selected polygon) is
considered Waste.

www.metech.com.au

- 11 -

Block Model Coding Methods


Using this option, the Waste, or area below the selected polygon, is coded with the value of the
influencing polygon. The influence of the polygon code onto the waste applies throughout the entire area
of the model in the shadow, and is only limited by another polygon or the limits selected on the Range
tab.

By toggling ON the Partial item is WASTE checkbox and setting the resetting Pct/Partial to 100% you
can code the porportion of the block that is outside of the geometry.

Coding as waste

- 12 -

www.metech.com.au

Production Drilling in MineSight

Coding as ore

Code Waste from below checkbox

This option is only available when coding From Polygons and is used with the Partial item is WASTE
option described above. Using this option allows the user to force coding the waste (that part of the
model in the shadow of the selected polygon) in the opposite direction. (e.g., instead of a polyline code
being applied to the waste section below, the code will be applied to the waste section above.)

www.metech.com.au

- 13 -

Block Model Coding Methods

Combine leftover partials: drop-down box

If calculating more partials then you are storing (using more objects than Ore Percent Items), there is the
option to combine leftover partials. The leftover (sum of remaining partials) can be added to a majority
partial, distributed proportionally between partials being reported, or stored to a specified item. The
specified combine item can be one of items requested for partials, in which case the leftover partial is
added to the corresponding partial. If the combine item is a separate item, then the sum of leftover
partials is just stored in that item. If storing to a specific item, then the item may be selected with the item
selection icon located on the far right side in the Items section of the Coding options page.

Items

This section is where you define which items in the block model will be updated by the coding process.

Zone checkbox, Code Item and Ore Percent Item selection windows

This area of the dialog is used to select which items of the block model will be updated by the coding
procedure. Some options only allow the use of a single Code Item or a single Ore Percent Item. Other
options allow the use of multiple Code Item and Ore Percent Item selections.
To select an item in either section, use the item selection icon to the right of the display window to select
from the list of items within the block model. An item is selected for coding when the Zone checkbox to
the left of the display window is toggled ON.
When choosing items to code, the item must be checked for suitability. Code Items must have the proper
Min and Max values to properly record data from the coding geometry object. Whether a partial is
stored as percent or as a fraction of 1 depends on the range of the selected item. If the items Max value
is greater than 99, the percent is stored, otherwise partials is stored as a fraction of 1. This information
about each block model item is available on the Info tab of the Model View Properties dialog (also
known as the Model View Editor).

- 14 -

www.metech.com.au

Production Drilling in MineSight

Reset chosen items before coding to: checkbox and input windows

It may be desired to clear the item information contained in the block model before coding. If the checkbox
is toggled on then when the model codes all the items selected for coding will be reset to the desired
values. These values are adjusted by typing in the input windows below the checkbox. The inputs can be
any number that is within the Min and Max constraints of the selected items, as seen on the Info tab of
the Model View Properties dialog. The default is an undefined value, or dash (-). Reset values apply to all
Code/Ore items. If the Reset value is different from 0 or undefined, it is recommended to have Ore
Percent Items either all percent items or all fraction items.
o

Combine Item item selection icon and window

If calculating more partials then you are storing (using more objects than Ore Percent Items), there is the
option to combine leftover partials. The leftover (sum of remaining partials) can be added to a majority
partial, distributed proportionally between partials being reported, or stored to a specified item. The
specified combine item can be one of items requested for partials, in which case the leftover partial is
added to the corresponding partial. If the combine item is a separate item, then the sum of leftover
partials is just stored in that item. If storing to a specific item, then the item may be selected with the item
selection icon located on the far right side in the Items section of the Coding options page.
o

More Items checkbox

If more Code Item and Ore Percent Item selections are required the More Items checkbox option can be
used. Toggling ON the checkbox, located on the lower right-hand side of the Items section of the Coding
options page, will activate a new More Items page. This allows the use of nine more block model items,
or a total of twelve block model items available for coding.

www.metech.com.au

- 15 -

Block Model Coding Methods


Normalize page
On this page one can specify a normalisation calculation for the items to be coded (if desired). Normalisation will
guarantee that the sum of all percentage items in a block is not greater than 100%. Percentages totaling more than
100 can occur if the solids being used in the model update overlap or intersect. (This could be due to errors in
digitising, or to purposeful overlapping due to complex solids.). It can also happen when coding by polygons one
polygon group at a time.

Normalize: drop-down box

The items can be normalised proportionately or by user-specified priority. If no normalisation is desired, then none
should be selected from the Normalize drop down box. If normalised proportionally, then all partials are adjusted
based on the individual items proportion in the block. If normalised by priority/majority, then only the
priority/majority item will be adjusted to make a sum of 100%.

Normalize against item: item selection icon

Normalise can also be used against an item (items value, e.g. TOPO%) to assure that the sum of partials in a block
is not greater then the selected items value. (e.g. if only 50% of a block is below the surface elevation, then the sum
of the normalised values will not exceed 50%.)

Normalization tolerance: percentage

When using proportional normalisation there is the option to specify normalisation tolerance. If you do so, and the
sum of partials is within tolerance of 100% (normalisation items value) it will be brought to 100% (normalisation
value).

Normalisation Examples
1. Simple overlap of two polygons
Two overlapping zones
Polygon C and D overlap by 10%
Polygon C = 70% of Block
Polygon D = 40% of Block
The total block percent is 110% before
normalisation.

- 16 -

www.metech.com.au

Production Drilling in MineSight

None
If coding just zones into the model, or when coding percentages and when the zones being
coded are not near each other, you do not need to select any normalisation.

Proportionally
If the sum of the zone percentages is greater than 100% in a block, then Proportional
normalisation will downgrade all the percentages equally.
Percentage Results
Polygon C = (70/110)*(100) = 63.6 %
Polygon D = (40/110)*(100) = 36.4 %

By Priority
In this case, the normalisation will remove the excess percentage from the lowest priority
material. The priorities are defined in the Object Properties Materials tab.
Percentage Results - if Priority of Polygon C > Polygon C
Polygon C = 70 %
Polygon D = (40 - 10) = 30 %

2. Two adjacent zones with a gap between


The gap is 10% of the block
Polygon C = 50% of Block
Polygon D = 40% of Block
The block percent is 90% before tolerance
adjustment.

Proportional Tolerance
The percentage to add is divided proportionally between the solids in the block, based on their
original percentage.
Percentage Results
Polygon C = (50/90)*(100) = 55.5 %
Polygon D = (40/90)*(100) = 44.4 %

Priority defined Tolerance:


The percentage to add is added only to the highest priority solid, based on the priority defined
in the Object Properties Materials tab.
Percentage Results - if Priority of Polygon C > Polygon D
Polygon C = (50 + 10) = 60 %
Polygon D = 40 %

www.metech.com.au

- 17 -

Block Model Coding Methods


Planes
The Planes page is only available when coding From Polygons. In order to code the model from 2D polygons,
either a series of planes or a grid set must be specified.

On the Planes tab, because polygons dont have volume, the user must define which direction and for what distance
the polygon has influence. Since polygons can be created in any orientation, it allows the user control over which
polygons are to be used for the coding by setting a tolerance for placing a polygon on a plane. If a polygon is within
the tolerance limits of the plane, then the projection of the polygon is superimposed onto the plane for proper
coding of the model. Any polygon that extends beyond the tolerance will be excluded from the coding opertion.
Planes' selection:
The user must select either a grid set or define plane limits.

Use Grid checkbox

Toggling ON this option allows the polygons to be coded using an existing grid set.

Grid selection icon


Select an existing grid set by clicking on the grid set selection icon at the right of the page. Any grid sets
available within the Data Manager may be used. An advantage to using existing grid sets is that the
distance between benches or sections can vary throughout the project. When manually entering planes
the distance between benches or sections must be equal.

- 18 -

www.metech.com.au

Production Drilling in MineSight


o

Plane Selection Limits sub-section

If not using an existing grid set for coding purposes, then the user enter the desired planes manually.
Simply enter in the desired Start Plane and End Plane into the appropriate interactive windows. Then
enter the desired increment between planes in the Increment interactive window.

Set planes from model: Set button


Instead of manually entering the plane data into the Start Plane, End Plane, and Increment windows,
the Set button can be used to set the planes using the limits defined in the block model file. This option
also serves as a convenient starting point for setting a personalized plane set within the model boundaries.

Tolerance for placing polygon on a plane

The 3D polygon selected for coding is projected onto some plane from the above plane set, so that the
model can be coded correctly. The Tolerance option is used to specify the distance from the plane a
polygon may exist before becoming unacceptable for coding. Only polygons that are completely within
Tolerance for placing polygon on a plane will be used. Polygons that are not completely within tolerance
from some plane in the selected plane set will be ignored. Any distance may be used, but it is practical and
useful within a relatively small distance from a plane. (e.g., for planes with an increment of 15 meters, 1-5
meters normally would be used for the Tolerance distance.)

Ignore planes without selected geometry checkbox

If this option is selected, the planes without projected polygons are removed from the planes set. That
affects the range of plane influence. If the option remains off then the polygon only codes blocks between
the plane it is projected onto and the next nearest plane. If the option is toggled ON then the polygon
codes all blocks that are between the plane it is projected onto and the next plane that contains a
projected polygon. This is a convenient option when coding a large portion of a block model with a single
polygon.

Bench/ Sections selection: drop-down box

All Benches/Section in the range of influence

www.metech.com.au

- 19 -

Block Model Coding Methods


First the range of plane influence is defined. There is an option and a text field that define the
range of influence. By default the range extends in both directions from a plane. The maximum
extent is halfway between planes. You can change that by toggling an option Expand from
plane to the next. In this case the range is from the plane to the next (planes are ordered by
increasing coordinate value). If the distance of influence the above range is used. If a distance of
influence is entered into the Distance of influence text field, the range is limited by the entered
value.
Code only if plane is within a Bench/Section
This option limits the extent of coding only from those planes that fall within a bench or section.
Bench heights are set in the block model. When coding from this option, the toe/min section
coordinate is included, and the crest/max section coordinate is excluded. If several planes are
within a bench (section), the plane closest to the bench/section coordinate is used. You can use
either bench toe (minimum section coordinate) or the midblock coordinate for a bench (see
below the description of a toggle Bench/ Section at midblock coordinate).
o

Bench/ Section at midblock coordinate check box

The default coordinate of a bench or section is the toe value of a bench, or the minimum value of a section.
This option allows one to use the midpoint coordinate as the starting point for coding operations. The
bench (or section) coordinate value is used to determine whether the bench (or section) is within the range
of influence from the coding plane.

Expand from plane to the next checkbox

Toggling on this option allows one to force the coding to span the entire distance from one plane to the
next.

Distance of influence

Enter the distance of influence the plane has on coding the block model. Whether you are coding from a
plane to the next or halfway between planes, you can limit the range of plane influence by entering a
positive distance value.

2D Options page
This page is available only when coding From Polygons.

- 20 -

www.metech.com.au

Production Drilling in MineSight


The user also has control over how the program computes partials such dealing with overlaps. Slight
overlaps between polygons can be ignored based on a set limit or if there a large overlaps then it would be
better to code one polygon after the other.
o

Tolerance to ignore overlaps

Tolerance to ignore overlaps should be used if polygons are slightly overlapping. Polygons within
tolerance will be considered coincident. When coding from polygons (unless coding one polygon
group at a time), partials within overlapping codes are considered unresolved and are not
reported. Increasing tolerance may reduce the number of unresolved partials. You should exercise
caution, as increasing tolerance too much may alter partials in an undesirable, or unrealistic,
manner.

Number of passes to compute partials

To compute 2D partials, intermediate lines (slices) are passed through blocks and report when
intersections with polygons are found. This option allows one to specify the number of intermediate
lines to use for coding calculations.

Use vertical slices checkbox

By default, the intermediate lines discussed above make each pass in a horizontal direction. If most
of the polygons are extended in the horizontal direction or if using the
Hangingwall/footwall/interburden coding option, the user can force the intermediate lines to
cross in the other direction by toggling ON the Use vertical slices checkbox.

Group by drop-down box

Polygons on a plane are separated into groups to form the boundaries of regions. If two polygons
are situated so that one is inside the other, without lines overlapping, then the area between the
two grouped polygons will be coded while the area within the inner polygon is not coded. If
polygons are not in the same group and one is inside the other, the inner code has priority. This
means that there is no need to digitise double boundaries.

www.metech.com.au

- 21 -

Block Model Coding Methods

Polygons with the same element attribute

Polygons with the different element attribute

There are 3 different options to group polygons.


Object + Element Name
This option groups polygons by those within the same geometry object and with the same
attributed element name. (Element names can be given using ElementAttribute on
the tool bar menu.) (e.g., geometry object pit1 contains polygons with element names
blues and reds. All the blues on the same plane will be grouped together, and all the
reds on the same plane will be grouped together.)

Element Name
This option groups together any polygons with the same attributed element name, no
matter which object it is in. This option assumes that polygons with the same element
name also have the same model code. (e.g., geometry objects pit1 and pit2 are selected
for coding. Grouping by Element Name is selected; therefore all elements named blues,
within either object, are grouped together for coding, and all elements named reds,
within either object, are grouped together for coding).
Model Code
This option groups together all polygons with the same model code. (e.g., polygons named
blues and reds are selected for coding from geometry objects pit1 and pit2. Polygons
named blues and reds have a model code of 8. Grouping by Model Code and coding
results with all polygons coding the model together).
o

Compute partials one polygon group at a time

When this option is toggled ON, coding is performed for each group of polygons separately. If the
groups overlap then partials in an individual block may sum to a value greater than 100%.

- 22 -

www.metech.com.au

Production Drilling in MineSight


The Code button, located on the lower right-hand corner of the Code Model tab, is used to actually code the
model. After all the desired settings have been selected on the Code Model tab, pressing the Code button will
apply those coding options to the model. The Code button is activated when the corresponding geometry has been
selected. (e.g. when coding From Polygons, the geometry set selected on the Geometry tab must contain at least
one polygon, and when Coding From Solids, the geometry set must contain at least one solid.)
Note: Model coding writes information to the msAudit.txt file, such as what item is being coded, the name of the
geometry object used, if the reset option is used and the rows, columns, and levels included.

www.metech.com.au

- 23 -

You might also like