File Information

ASCII Block Model File (Regular): BLOCK.ASC

ASCII File Format
Example
Corresponding Block Model Definition File

ASCII File Format

   Block Centroid         Block Variables
   cx_1 cy_1 cz_1         var_1 var_2 Var_3... Var_N
   cx_2 cy_2 cz_2         var_1 var_2 Var_3... Var_N
   cx_3 cy_3 cz_3         var_1 var_2 Var_3... Var_N
       ..                     ..
       ..                     ..
       ..                     ..
   cx_N cy_N cz_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.

The centroid of blocks to be imported by Vulcan must be converted from absolute "real_world" coordinates to relative "parent scheme" coordinates.

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 in 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 Variables
    71.25  555.00  5.00     0.0  0.0  30.0
    71.25  565.00  5.00     0.0  0.0  30.0
    78.75  555.00  5.00     0.0  0.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 by using a "gawk" script (refer to the GAWK manual in the System Administration > Effective AWK Programming section).

Example

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

  15.0000      5.0000      5.0000      2.930000      -99.000000
  45.0000      5.0000      5.0000      2.930000      -99.000000
  75.0000      5.0000      5.0000      2.930000      -99.000000
     -           -            -          -               -     
     -           -            -          -               -     
     -           -            -          -               -     
1395.0000    745.0000    685.0000      2.930000      -99.000000

Note:   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. 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 Model Definition File

* MAPTEK: Specifications 5-Jan-1999 13:35:02
BEGIN$DEF HEADER
        n_variables=2.000
        n_schemes=1.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='average sg'
END$DEF VARIABLE_1
BEGIN$DEF VARIABLE_2
        type='float'
        name='au'
        default='-99.0'
        description='average au'
END$DEF VARIABLE_2
BEGIN$DEF SCHEMA_1
        desription='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=0.000
        block_max_y=0.000
        block_max_z=0.000
END$DEF SCHEMA_1
BEGIN$DEF BOUNDARIES
        n_boundaries=0.000
        n_exceptions=0.000
        n_limits=0.000
END$DEF BOUNDARIES
END$FILE

Note:  The offsets in the .bdf file must line up with the sides of the blocks not the centres.