File Information

ASCII Block Model File (Sub blocked)

File Format

   Block Centroid     Block Dimensions     Block Variables
   cx_1 cy_1 cz_1     dx_1 dy_1 dz_1       var_1 var_2 Var_3... Var_N
   cx_2 cy_2 cz_2     dx_2 dy_2 dz-2       var_1 var_2 Var_3... Var_N
   cx_3 cy_3 cz_3     dx_3 dy_3 dz_3       var_1 var_2 Var_3... Var_N
       ..                     ..
       ..                     ..
       ..                     ..
   cx_N cy_N cz_N     dx_N dy_N dz_N       var_1 var_2 Var_3... Var_N

where

cx_N, cy_N, cz_N Centroid of block N with respect to parent scheme.
var_N Block variable.
dx_n, dy_N, dz_N Dimensions of block N (that is, length of sides).
var_N Block variable. The centroid of blocks to be imported by Vulcan must be converted from absolute "real_world" coordinates to relative "parent scheme" coordinates.

No conversion is required when the Vulcan block model has an origin of 0,0,0 and a start-offset corresponding to the bottom left hand corner of an imported, un-rotated block model. The reason for this is that since all coordinates are relative to the origin, relative and absolute coordinates, in this case, are the same.

To convert a centroid between coordinate systems, the following calculation may be used:

  abs_x_centroid = (real_x_centroid-min_x_centroid)
                   +(x_size/2.0)
  abs_y_centroid = (real_y_centroid-min_y_centroid)
                   +(y_size/2.0)
  abs_z_centroid = (real_z_centroid-min_z_centroid)
                   +(z_size/2.0)
where
x_size, y_size, z_size Size of regular blocks in x, y, z.
min_x_centroid, min_y_centroid, min_z_centroid Minimum centroid from block model file.
real_x_centroid, real_y_centroid, real_z_centroid Block centroid from block model file in real-world coordinates.
abs_x_centroid, abs_y_centroid, abs_z_centroid New block centroid in relative parent scheme coordinates.

Thus, if the first few lines of an ASCII block model file initially looked like this:

    Block Centroid              Block Dimensions     Block Variable
    21806.25  11205.0  2105.0   7.5  10.0  10.0      0.0  00.0  30.0
    21806.25  11215.0  2105.0   7.5  10.0  10.0      0.0  00.0  30.0
    21813.75  11205.0  2105.0   7.5  10.0  10.0      0.0  00.0  30.0
and
min_x_centroid = 21738.75
min_y_centroid = 10655.0
min_z_centroid = 2105.00 
and
xsize = 7.50
ysize = 10.0
zsize = 10.0
it would appear like this after the conversion:
    Block Centroid         Block Dimensions     Block Variable
    71.25  555.0  5.0       7.5  10.0  10.0     0.0  00.0  30.0
    71.25  565.0  5.0       7.5  10.0  10.0     0.0  00.0  30.0
    78.75  555.0  5.0       7.5  10.0  10.0     0.0  00.0  30.0

The headers and field spacing are only included for clarity.

Currently, you must pre-process your ASCII block model file to suit the relative "parent scheme" format. This can be achieved using a simple "gawk" script (refer to the GAWK manual in the System Administration > Effective AWK Programming section).

Example

(Subblocked ASCII Block Model in Parent Schema Relative Offset Format)

  75.0000  298.0000  25.0000  30.0000  4.0000  10.0000  2.930000  -99.000000
  50.0000  295.0000  27.5000  20.0000  2.0000   5.0000  2.930000  -99.000000
  50.0000  298.0000  25.0000  20.0000  4.0000  10.0000  2.930000  -99.000000
     -        -         -        -       -         -       -            -
     -        -         -        -       -         -       -            -
     -        -         -        -       -         -       -            -
  45.0000  451.0000  635.0000 10.0000  2.0000  10.0000  2.930000  -99.000000

To import Surpac block models, make sure that the Surpac ASCII file (.str) has no spaces in its name, for example, change pit model.str to pitmod.str. Also remove any header information from the .str file, any commas and the 1,1 (string name) from the first column. Sub block size may be removed if they are all the same size. Also, Surpac exports coordinates in Y/X/Z format and this needs to be changed to X/Y/Z before the import. The number of decimal places in Surpac is often 12 and may be reduced prior to import. Columns in Surpac do not need to be a certain width, number or decimal places other than those restrictions placed by float or double integer restrictions.

Corresponding Block Definition File

* MAPTEK: Specifications 4-Nov-1998 15:53:45
BEGIN$DEF HEADER
        n_variables=2.000
        n_schemes=2.000
        x_origin=77500.000
        y_origin=3800.000
        z_origin=400.000
        plunge=0.000
        dip=0.000
        bearing=62.000
        reblock
END$DEF HEADER
BEGIN$DEF VARIABLE_1
        type='float'
        name='sg'
        default='2.93'
        description='density'
END$DEF VARIABLE_1
BEGIN$DEF VARIABLE_2
        type='float'
        name='au'
        default='-99.0'
        description='gold grade'
END$DEF VARIABLE_2
BEGIN$DEF SCHEMA_1
        description='parent'
        scheme_min_x=0.000
        scheme_min_y=0.000
        scheme_min_z=0.000
        scheme_max_x=1410.000
        scheme_max_y=750.000
        scheme_max_z=900.000
        block_min_x=30.000
        block_min_y=10.000
        block_min_z=10.000
        block_max_x=30.000
        block_max_y=10.000
        block_max_z=10.000
END$DEF SCHEMA_1
BEGIN$DEF SCHEMA_2
        description=''
        scheme_min_x=0.000
        scheme_min_y=0.000
        scheme_min_z=0.000
        scheme_max_x=1410.000
        scheme_max_y=750.000
        scheme_max_z=900.000
        block_min_x=10.000
        block_min_y=2.000
        block_min_z=5.000
        block_max_x=30.000
        block_max_y=10.000
        block_max_z=10.000
END$DEF SCHEMA_2
BEGIN$DEF BOUNDARIES
        n_boundaries=0.000
        n_exceptions=0.000
        n_limits=0.000
END$DEF BOUNDARIES
END$FILE
  

The offsets in the .bdf file must line up with the sides of the blocks not the centres. For example, if your first xcentre is 505 and the blocks are 10 metres in X then the offset in the .bdf file should be 500. The same applies for Y and Z.