1 Output Graphics
MINESCAPE EXPLORER – ENVIRONMENT – DISPLAY DEFINITION – CREATE
1 Mincom Expression Language (MXL) Apakah MXL itu?
Mincom Expression Language (MXL) adalah bahasa yang memungkinkan anda menulis expressi sederhana dengan menggunakan data dan variabel-variabel yang telah ditentukan pada program Minescape.
Fungsi dari expressi tersebut adalah untuk menghasilkan nilai tunggal. Nilai tersebut dapat berupa logika, numerik atau string tergantung pada aplikasinya.
MXL sama dengan Mincom Programming Language (MPL) / Bahasa Program Mincom, tetapi tidak memiliki fasiltas serumit MPL. Sebagai contoh, MXL tidak memiliki fasilitas: • Assignment statements • GOTO • PERFORM • Loop structures Contoh
Suatu expressi (mengatur nilai table dalam SURFTABLE) ditulis dalam MXL seperti berikut:
/*
/* SURFTABLE expression. Table column value is MISSING /* unless seam thickness is greater than 1.25, in which /* case the table value is set to seam thickness
IF (THICK (‘AC1’) > 1.25) THEN; THICK (‘AC1’); ELSE; MISSING; ENDIF
1.1 Notasi
Expressi-expressi MXL terdiri dari:
• Variabel • Constant • Operator • Function • Karakter Lanjutan • Keterangan • Statement separator
1.1.1 Fungsi Notasi Argument
Notasi singkat berikut digunakan pada waktu menjelaskan function argument: <exp> -- expressi dari jenis apa saja – logical, string, atau numeric. <log_exp> -- expressi logical.
<str_exp> -- expressi string. <num_exp> -- expressi numeric.
<value> -- nilai single numeric, logical atau string.
<default> -- nilai single numeric, logical atau string default. [<arg>] -- argument pilihan
1.1.2 Variable
1.1.2.1 Variabel Modul Block & Surface
Variabel-variabel dibawah dapat digunakan untuk penulisan expressi modul block & surface:
CURRENTINTERVAL Current reserve interval CURRENTSURFACE Current surface EASTING Current easting value HEIGHT Height of bench
LABEL A module-specified value
LEVEL Current level
NEXTHEIGHT Height of next bench NORTHING Current northing value
SAMPLEBOTTOM Elevation of the bottom of the sample SAMPLEBURDEN Sample burden category
SAMPLEINTERVAL Current reserve interval SAMPLEPOLYGON Sample polygon name SAMPLESOLID Sample solid name SAMPLESUBSET Sample subset name
SAMPLETOP Elevation of the top of the sample WIDTH Width of bench
1.1.2.2 Variabel Modul Table
Variabel-variabel yang terdapat pada modul table adalah nama kolom, nama Constant table yang sedang digunakan dan dapat dilihat seperti berikut:
ORIG_ROW_NUM The TABFREQUENCY, TABLINE,TABBAR,TABACCUM and TABREPORT modules use this variable because of their need to sort and subset data into a temporary table.
1.1.2.3 Variabel Modul GRIDMXL
Variabel-variabel yang terdapat pada modul GRIDMXL adalah nama-nama nilai grid dari grid yang sedang digunakan dan dapat dilihat seperti berikut:
COLUMN
EASTING or X NORTHING or Y ROW
Current grid column.
Easting of the current grid node. Northing of the current grid node. Current grid row.
1.1.2.4 Variabel Modul PLOTSLOT
Variabel-variabel berikut dapat digunakan pada expressi untuk slot-slot expressi PLOTSLOT: COMPANY PROJECT SCALE TITLE USER
The company name. The project name. The numeric scale. The drawing title. The user name.
1.1.2.5 Variabel Modul Drill Hole Interrogation
Variabel-variabel berikut dapat digunakan dalam penulisan expressi untuk modul drill hole interrogation:
COLLAR HOLENAME LITHDEPTH
TOTALDEPTH
Elevation of drill hole collar. Drill hole name.
Depth of the last intersection of a drill hole,Calculated as the difference in elevations Between the first point (collar) and the last Intersection.
Total depth of the drill hole, calculated as the difference in elevations between the first point (collar)and the last point.
1.1.2.6 Variabel Wash Table
Variabel-variabel yang terdapat pada expressi wash table adalah nama wash table (nama hole, nama sampel, nama interval dan lain-lain), variabel-variabel tersebut adalah sebagai berikut:
EASTING NORTHING WASHSAMPLEBOT WASHSAMPLETOP
Easting of the current wash table sample. Northing of the current wash table sample.
Bottom elevation of the current wash table sample. Top elevation of the current wash table sample.
1.1.3 Constant
1.1.3.1 Constant yang telah ditetapkan sebelumnya
Beberapa constant yang sering digunakan biasanya telah ditetapkan sebelumnya. Constant-constant ini digunakan dengan cara yang sama sebagaimana variabel-variabel normal, bagaimanapun juga nilai-nilai constant tersebut tidak dapat diganti. Constant yang telah ditetapkan tersebut adalah:
• TRUE – Nilai logical TRUE.
• FALSE – Nilai logical FALSE. Dimana TRUE lebih besar dari FALSE. • PI – 3.141592653589793238.
e.g. PI * SEARCHRAD **2
• MISSING – nilai numeric yang belum diketahui.
Constant MISSING memiliki beberapa sifat-sifat khusus:
• Jika digunakan dalam expressi aritmatika, expressi tersebut akan menilai MISSING.
• Jika secara aritmatika expressi tidak benar (misalnya, dibagi oleh 0), maka hasilnya akan MISSING.
1.1.3.2 Constant yang telah ditetapkan oleh User • Constant String
Constant String diikuti oleh tanda kutip tunggal (‘). Misalnya: ‘Thickest point’
Gunakan sepasang tanda kutip (“) untuk meletakkan satu tanda kutip tunggal dalam suatu string. Misalnya:
‘Bob’‘s ASH’
• Constant Numeric
Constant numeric harus dimulai dengan suatu nilai angka, misalnya ‘0-9’,’-‘,’+’. atau ‘.’, dan dapat memiliki pola tertentu sebagai suatu presisi dua bilangan asli. Contoh:
0.99957601
1.1.4 Operator
• Operator dengan Hasil Numeric
• Operator dengan Hasil String
• Prioritas Operator
Berikut ini adalah daftar beberapa operator yang dapat digunakan dalam expressi:
1.1.4.1 Operator dengan Hasil Numeric
Operator Use Example
+ Addition FLOOR (‘AC1’) + .5 - Substraction ROOF (‘AC1’) - .5
* Multiplication THICK (‘AC1’) * SURFACE (‘AC0RD’) / Division THICK (‘AC1’)/4
** Raise VALUEREAD (A”ASH’, ROW, COLUMN) **2 |< Minimum value THICK (‘AC1’) |, THICK (‘AC0’) |> Maximum value SLOPE (‘TOPO’) |> 0.5
1.1.4.2 Operator dengan Hasil String
Operator Use Example
// String concatenation TIME ( ) // ‘GMT’
1.1.4.3 Operator dengan Hasil Logical
Operator Use Example
< Less than SLOPE (‘TOPO’) < 0 > Greater than THICK (‘AC1’) > 1.5 == Equal to SLOPE (‘AC1’) == 0 <> Not equal to SLOTCOUNT (‘LEFT’)<>1 <= Less than or equal to ROW <= 50
>= Greater than or equal to ROOF (‘AC1’) >= ROOF (‘AC0’) & Logical AND IF (THICK (‘AC1’) > 5) & ~
(SURFACE (‘AC1RD’) <> MISSING) ~ THEN
| Logical OR IF (EASTING > 450000) | ~ (EASTING < 550000) THEN ^ or \ Logical NOT ^LOADED
1.1.4.4 Prioritas Operator
Jika suatu expressi sedang dihitung, maka operatornya menilai dengan cara berikut:
1. Eksponensiasi (**)