autolisp programs & visual basic programs

104
AUTOLISP PROGRAMS & Visual Basic Programs Documentation and Summaries Date: February 1993 Updated: October 1994 Updated: February 1995 Updated: November 17, 1998 Updated June 4, 2000 Updated June 7, 2003 Updated February 10, 2008 Updated September 22, 2008 Updated December 13, 2009 Prepared by Guy Lauzier Copyright - Guy Lauzier 1

Upload: glauzier

Post on 18-Nov-2014

149 views

Category:

Documents


9 download

DESCRIPTION

This is a collection of lisp routines for Mine planning.All routines are available without cost and fully alterable

TRANSCRIPT

Page 1: Autolisp Programs & Visual Basic Programs

AUTOLISP PROGRAMS&

Visual Basic Programs

Documentation and Summaries

Date: February 1993Updated: October 1994Updated: February 1995Updated: November 17, 1998Updated June 4, 2000Updated June 7, 2003Updated February 10, 2008Updated September 22, 2008Updated December 13, 2009

Prepared by Guy LauzierCopyright - Guy Lauzier

1

Page 2: Autolisp Programs & Visual Basic Programs

Table of Contents

INTRODUCTION................................................................................................................................................ 1

INDEX.................................................................................................................................................................. 2

HOW TO STRUCTURE DRAWINGS............................................................................................................... 9

CONVENTIONS................................................................................................................................................ 13

ACAD................................................................................................................................................................. 13

AH...................................................................................................................................................................... 14

ALAY................................................................................................................................................................. 14

ALPHA............................................................................................................................................................... 15

ARCLEN............................................................................................................................................................ 16

BA....................................................................................................................................................................... 16

BIT...................................................................................................................................................................... 17

BLAST................................................................................................................................................................ 19

BLSTLTR........................................................................................................................................................... 20

C0....................................................................................................................................................................... 25

CDIST................................................................................................................................................................. 25

COLLAR............................................................................................................................................................ 26

CORE................................................................................................................................................................. 31

COPY................................................................................................................................................................. 32

COUPES............................................................................................................................................................. 33

CUBICO............................................................................................................................................................. 33

DELLAYER....................................................................................................................................................... 34

DESSIN............................................................................................................................................................... 35

EDTEXT............................................................................................................................................................. 36

FAULT............................................................................................................................................................... 37

FRZLAY............................................................................................................................................................. 39

GEOLOG........................................................................................................................................................... 392

Page 3: Autolisp Programs & Visual Basic Programs

GRDLINE.......................................................................................................................................................... 40

GRIDLINE......................................................................................................................................................... 41

INPDBF.............................................................................................................................................................. 42

LAY.................................................................................................................................................................... 46

LAYLIST............................................................................................................................................................ 47

LIMON............................................................................................................................................................... 47

PIPE................................................................................................................................................................... 47

OVRBURDEN.................................................................................................................................................... 49

PLMAKE........................................................................................................................................................... 49

TOOLS............................................................................................................................................................... 51

PROBE............................................................................................................................................................... 51

SCAN.................................................................................................................................................................. 53

SECTION SECCION......................................................................................................................................... 54

SEEK.................................................................................................................................................................. 57

SURVEY............................................................................................................................................................. 58

SXPLOT............................................................................................................................................................. 63

THOLE............................................................................................................................................................... 65

TXTATTR.......................................................................................................................................................... 66

VSE..................................................................................................................................................................... 68

VSEF.................................................................................................................................................................. 68

ZAP..................................................................................................................................................................... 68

Entity Codes.......................................................................................................................................................... 1

3

Page 4: Autolisp Programs & Visual Basic Programs

Introduction

The goal of this book is to assemble as many mining related AUTOLISP tools as possible in one book in order that the userMay improve his skills more rapidly and be aware of the added features that have been developed.

The volume is divided into three main sections:1) Explicative index summarising the purpose of the function.

2) Detailed summary of the use of the program, the assumptions used and constraints.

3) Supplementary information on AUTOCAD data structures for the more advanced programmer.

Page 5: Autolisp Programs & Visual Basic Programs

INDEX

APPROACH

1) How to structure drawings2) Conventions

PROGRAMS 1

2

33DPLINE - Program to convert 2D-line or pline information to 3D

polylines.3DSECT - Program to make 3D sections from 2D plans.

4

5

6

7

8

9

0

AACAD - The automatic lisp start-up programAH - Program to the last entity to a desired

layer and make the selected layer active.ALAY - Program to change entities from their

present layer to the active layerALPHA - Text array generating programARCLEN -ATTREDEF - Redefine a block and its attributes.

B

2

Page 6: Autolisp Programs & Visual Basic Programs

BA - Program to scroll up through the Layer Table

BIT - Program to simulate button bit impact patterns given a bit face configuration, rpm and hammer frequency.

BLAST - Program to calculate certain parameters from blast hole layouts. This program was updated in June-July 2003 to make sections and calculate the drill holes.

BLASTER (VB) - Visual Basic Blast Desing Program

BLSTLTR - Program to prepare a blast letter with the powder, primer, caps and timing.

BoatBuilder (VB) - Suite of Routines to design hulls

CC0 - Program to make the zero layer active

and freeze all the other layers

CDIST - Function to cumulate distances.

COLLAR - Program to determine the collar location, dip and azimuth of blastholes. Plan and sectional information is transformed into 3-D co-ordinates.

COPY - Function to copy one text file called “IN” to another text file called “OUT”

CORE - Program to plot on the graphic screen the spectrum of dips and azimuth given by an azimuth, the dip of the hole and the core angle.

COORD - Group of functions to insert block from one Co-ordinate system to another and vice versa. Included is a co-ordinate conversion routine.

Coupes - Program to generate cross setions from 2D AutoCad drawing.

COPY - Program to copy a text file from one file to another.

CURVE - Program to design ramps.

3

Page 7: Autolisp Programs & Visual Basic Programs

CUBICO - Program to calculate the volume of a surveyed area.

DDAM(VB) - Program to do water balance between dams

DELLAYER - Program to eliminate all entities on a specified layer.

Dessin - Program to draw the sections based on the information found in C:\temp\coupes.asc

DPT - Program to calculate the average between backs and floors

DUMP - Program to send to a file the specified entities.

EEDTXT - Text editor. (Obsolete – applicable to

versions 12 or less)

Environment (VB) - Visual Basic progran to generate tailings pours based on the specified parameters. The information is then transferred to Gemcom.

FFAULT - Program to demonstrate the apparent movement

of faulted blocks in plan, section and long section.

FRZLAY - Function to freeze the selected layer.

G

GemcomCleaner (VB) - Visual Basic suite of programs to clean information imported from Gemcom. Cleans double lines, changes to the appropriate layer.

GEMELEV - Clean up program in Autocad to remove unwanted elements from the GEMCOM survey program. Program needs updating to be current.

GRDLINE - Generalised frame grid line program.GRIDLINE - 3D version of the Grdline program

4

Page 8: Autolisp Programs & Visual Basic Programs

GRILLA - Gridline program that works in paperspace and model space. For version 14 and 2000 of Autocad

GROUPTOBLOCK - The program was developed to convert Carlson group entities into block entities

H

HID - Program to hid entities by changing their layer

HOUSE - Program to draw orthogonal lines in without having to change the UCS.

HO - Program to scroll down through the layer table

I

INPDBF - Program to import numeric values from a text file in 3-D co-ordinates and place them in a drawing.

J

K

KLATTDF - Program to convert “root” attributes to text entities

LLAY - Program for selecting a specified layer by

picking one of the entities on the layer.

LAYLIST - Menu function used to display the layer of a “picked” entity.

Limon - Program to calculate 3-D volumes

M

MAPINDEX - Program to position frame at the location specified by a map index.

MGL - Program to insert and eliminate blocks. Prepared for Langlois mine. Program to updtate block attributes

5

Page 9: Autolisp Programs & Visual Basic Programs

MINECAD - Program to take Minecad file information and convert it to Autocad drawing. Found in MGL

MIMIC - Line mimicking program for cleaning up drawing that have double lines and mixed lines. Found in MGL

N

N_STAB - underground stability programNVTR - Program to initiate the parameters for the PTR

program that is used for blasthole generation

O

OVRBURDEN - Program to take points from a section and transfer it to plan.

PPCOORD - Places the co-ordinates of a point on the screen.

PIPE - Program to make templates of the opening and the cut of two intersecting pipes.

Pipe (VB) - Pending work

Planner (VB) - Visual Basic suite of programs for mine planning. This includes ramps designs.

PLMAKE - Program used to convert lines into 3-D polylines.

PROBE - Program to be used to locate all the entities that are on the specified layer and to place their location in a file. The entities are found even if they are trapped in a succession of blocks.

PROJECT - Program incorporated with SLOPE.LSP and used to project traces of infrastructure on plan

PSGRID - Gride line program that can be used in paper space or model space.

PTR - Program to generate parametric blast holes based on some reference hole.

6

Page 10: Autolisp Programs & Visual Basic Programs

PuntoTopo(VB) - Visual Basic program to get point information from an Excel Sheet and place the elements on the screen.

Q

R

RNG - Program to print onscreen the name of the layer

S

SCAN - Program to locate text and zoom into the text.

SECTION - Group of programs used to make 2D sections from 2D survey plans.

SEEK - Generalised text searching program.

SLOPE - Program to interpolate an elevation between two points

STAINS - Program to take text file information and enter it into a drawing. This program also has a function to input tab delimited text files into Autocad

Statics (VB) - Program suite to determine the moment of inertia and centroid of revolution.

STKPL - Stockpile calculation program.

SURVEY - Agglomeration of survey programs.

SXPLOT - Program to partition a plan and a section on the same paper plot.

TTABCFG - Program to reconfigure the tablet after the

TABLET CFG zero menu has been selected.

TestMine.xls - Spreadsheet and visual basic subroutines that will simulate any configuration mine.

7

Page 11: Autolisp Programs & Visual Basic Programs

TICK - Program to put tick marks at 10m intervals for drift or ramp design.

THOLE - Program to put test hole information on geology plans.

TOOLS - Group of general construction programs1) RECT - rectangle2) TABLES - table generating routine

TOPO - Survey program using DCL screens.

TOTSTA - File merging program used in conjunction with a total station.

TRANS -

TRANSFER -

TXTATTR - Program to change text attributes in a drawing.

TXTSIZE - Menu program to change a specified text height to another.

U

VVSE-Program to make 3dpolylines for transfer from AutoCad toExamine3d format. Program found in PLMAKE.LSP

VSEF – program to transfer 3dpolylines in Autocad to *.geo format for introduction into Examine 3d. This program is found in PLMAKE.LSP

WWEDG - Program to plot a hemisphere for the evaluation of

block wedge analysis.

XXTRACT - function to extract text from a drawing bound by a pline and place it in a file

Y

8

Page 12: Autolisp Programs & Visual Basic Programs

ZZAP - Generalised deletion program by colour,

layer and entity type.

9

Page 13: Autolisp Programs & Visual Basic Programs

HOW TO STRUCTURE DRAWINGS

One of the greatest advantages to using CAD type programs is it's ability to reproduce at various scales the drawings that are created by a user. One of CAD's greatest weaknesses is that it in no way restricts the user in the way he/she organises the data. All too commonly, one user will develop a variety of layers that bear no meaning to the type of entity that is found on it. The user must develop a strategy so that other users, either at site or elsewhere, can quickly decipher what the layer means. The following is a general outline that can be used in most mines that uses CAD type systems:

1) Keep the drawings small and compartmentalised. If the department is divided into four different major components then there should be four types of drawings. Each department must maintain their own drawings and there be only one source for the drawings. An example would be:

Geology - directory GEOLOGYThe drawing are name after the level. An example is ORE235.The drawings in geology would have the pierce points on a layer named DDH and the ore outline on another layer with the ore called ORE. As a convention DDH would be white and the ORE would be red. If there are other major subdivisions such as different rock types then they should be under different layers.

Give the layer a colour and not the entity. This is a quick way to determine if an entity is on the wrong layer. An entity can be a line, circle, text, etc.

Survey - directory SURVEYThe drawings for surveying should be named after the elevation. Keep the elevations on a 5m increment so that it reduces the number of drawings and it is easy for anyone to locate the drawing. Whatever surveying was done on the elevation within the mine is found in the drawing. The user should not separate the drawings into sheets, as this increases substantially the number of drawings, the duplication of entities that must be updated. Any updates that

10

Page 14: Autolisp Programs & Visual Basic Programs

must be done should be done by the person responsible and on only one drawing.

The survey drawings would have the following layers:

Note: 235 is used solely as an example elevation. If the elevation was 1050 then the layer would be 1050.

235 - The surveyed outlines would be found on this layer. The text name of the headings should also be included unless the user frequently has to plot drawings without the text.

235ELEV - The survey elevations should be on this layer. The common text size for elevations plotted at a 250 scale is 0.4. To further clarify the floor and back elevations, it is good practice to place the appropriate letter before the elevation. An example is F235.67, which would be the floor elevation. The common colour for the elevations is magenta.

235CONT - The control points and the lines are found on this layer. The usual colour for this layer is green.

Planning - directory PLANThe planning drawing will usually include the drift, stope layouts. The drawing names are PP235

PP235 - All the proposed drifts, excavation are found on this layer. The usual colour for planning is blue. The planned elevation is 0.6m high on a 250 scale. The theoretical floors are specified as TF235.78 for clarity. The design notes are 0.6m and the drift names are 1.0m high.

PILLAR235 - All stoping pillars are found on this layer. The colour convention for the pillars is turquoise.

HIDDEN - all hidden planning is found on this layer. As the drifting advances, some of the older planning is hidden so as to make the drawings clearer to the end-user. The collar for the hidden lines when thawed is white

11

Page 15: Autolisp Programs & Visual Basic Programs

Blasting - directory BLASTThe blasting drawings usually include the reference line and the numbers. Also information such as special pillars or blasting note may be found in these drawings.The naming convention for the blast drawings is PRD235. The colour convention is purple. Text size is 0.6m for a 250-scale drawing.

2) Insert only the drawings that are necessary when updating and modifying the drawing and subsequently purge the drawings that have been inserted as blocks. Blocks have the advantage of being easy to eliminate. Make sure that an automatic purge is done on the drawings. Autocad has the tendency of accumulating a lot of extra data that can only be eliminated by purging at the start of the drawing.

3) Do not subdivide any drawings that are associated to a specific level. All entities that should appear on the specific level should be on that level. By keeping the drawings small and compartmentalised, the drawings the user must work with are smaller and quicker to regenerate. Plotting is always the end result of the data accumulation. With the plotting only the specific area that is desired is outputted. Use standard blocks with attributes to insert the frame. These have the advantage of being consistent for the end-user and are easy to quickly define the scale that must be used. Use the GRDLINE program to make the grid lines. This has the advantage of being quick and eliminates the necessity to manually place grid lines and co-ordinates on a frame.

4) Layer 0 is a layer where no valid information should exist. It should be used as an error trapping mechanism. This is accomplished by the use of colours on the other layers. Elevations should be magenta; control points should be green. When they appear in the drawing in the wrong colour, the user may quickly determine that the specific entity is on the wrong layer. The end use of the drawing will generally determine how the layers should be set up. In geological mapping the elevations are not normally the entities that one wishes to appear on the plotted drawing. In Autocad, the only to not display entities is to freeze them or to erase them. It is normally a lot quicker to freeze a layer than to erase several entities.

12

Page 16: Autolisp Programs & Visual Basic Programs

5) Avoid placing limits or base point in the drawings. All drawings should be in the scale unit that is commonly used as a base (in metres or in feet). This insures that all the drawings that are produced are similar. Insertion points for drawings should always be 0,0. The use of insertion base points leads to confusion.

6) The use of hatching requires a lot of memory and makes the drawings slow to regenerate. The user should use these to a minimum. The user should avoid creating extra information. An example of this would be a surveyor trying to smooth out the surveyed outlines by adding extra un-surveyed information. The data may look better but the information may not be more useful.

7) Although Autocad is a 3-D drawing tool, it is still quite crude for mining applications. It requires a lot of energy by all concerned to maintain 3-D drawings. 3-D views of excavations are extremely difficult to present on a screen and are usually limited to a presentation tool, not a practical one. A lot of the Autocad commands are still 2-D. The user should avoid using 3-D unless absolutely required and if 3-D is required it is quite easy with some basic tools to convert the 2-D drawings to 3-D for small areas of a mine.

13

Page 17: Autolisp Programs & Visual Basic Programs

CONVENTIONS

Most programs are measurement system independent. Autolisp programs give the distance measurements in drawing units.

The blasthole programs convert metric unit drawings to feet, as it is still more convenient for the drillers to know how far they have drilled in feet.

Angular units are in degrees, minutes, seconds (sexagesimal).

Strikes and dips are determined using the right hand rule. The index finger is parallel to the strike of the plane and the thumb must be directed below the horizontal plane. The strike of a plane is a horizontal line on a plane where any movement along the line does not result in a difference of elevation. The dip is perpendicular to the strike. The strike and the dips are in degrees.

Some programs that write to files normally require that the directory c:\temp be created. In order to keep the programs simple and avoid numerous windows, the file names are always the same.

Caution must be used when using snaps for certain programs as AutoCad does not always react correctly with the programs. In certain cases the program deactivates the snaps. The programs do not generally reset the values.

ACAD

Purpose:

This is the automatic and default lisp program that is loaded into Autocad when it is placed in the ACAD or ACADWIN directory. It can be used to insert routines that are used most often. It is also used to establish default settings in the program. Refer to the listing of the program to understand the use of dormant functions. The use of dormant functions helps minimise the use of memory as only called functions are loaded.

How to use:

14

Page 18: Autolisp Programs & Visual Basic Programs

Automatically loaded into Autocad when the lisp program is placed in the right directory.

AH

Purpose:

The program is used to correct the layer of the last entered entity that the user has not put on the right layer. The correct layer is selected and the selected layer is activated.

How to use:

Type AH

Questions:

1) Select the layer :

Once an entity on the desired layer has been chosen, the last entity’s layer is changed to the selected layer and the selected layer is activated. If no layer has been selected a message - No entity selected – is displayed and nothing is done.

ALAY

Purpose:

The program is used to change entities from one layer to the active layer. It is used mainly for fixing up a drawing where several entities have been misplaced

How to use:

Type ALAY

Questions:

2) Select the entities you wish to change : 15

Page 19: Autolisp Programs & Visual Basic Programs

Once the selection of the entities has been done the Enter is used to terminate the command. The entities will be converted to the active layer.

ALPHA

Purpose:

The program is used to generate a text array that is composed of a static prefix (alphanumeric) and a numeric incremental suffix. It is mainly used to identify blast rings on plans.

How to use:

Type ALPHA

Questions:

1) What is the starting alphabetic prefix: This can be a string of any length without spaces. If Enter is pressed without a string, then no prefix will be added.

2) What is the numeric suffix: This is the starting number of the ring. It can be any integer value.

3) What is the increment for the suffix: This is the increment integer value. If no value is entered, then the default increment value is 0.

4) Pick the starting point: This is the starting point on the drawing from which the text will be placed. The text is centred about the point.

5) Pick the ending point: This is the ending point limit where text will appear.

6) What is the text size: This is the text size for the characters that will be generated. The optimum size for 250 scale drawings is 0.6.

16

Page 20: Autolisp Programs & Visual Basic Programs

7) What is the interval distance between the entities? This is normally the spacing between the rings. The value is a real number.

Once all the parameters have been answered, the text array is generated on the drawing. The text is centred about the starting point and its increments.

ARCLEN

Purpose:

The program is measures the arc length of circle or arc. This is mainly used in construction or in ramp design where one does not want to manually calculate the angles and the radius.

How to use:

Type ARCLEN

Questions:

1) Starting point : This is the starting point of the arc that must be measured.

3) Entity: This is the arc that is to be measure. Any point on the arc is valid.

4) What is the ending point of the arc: This is the ending point on the arc to be measured.

The resultant from the function is the measurement of the arc length.

BA

Purpose:

Program to scroll up through the the Layer table in order to freeze the active layer and to scroll up through the Layer Table and active the layer

17

Page 21: Autolisp Programs & Visual Basic Programs

How to Use:

Type BA

This program is include within the Blast program

BIT

Purpose:

This program is used to analyse the impact location of the button bits on a rock face based on the bit face configuration, the bit rotation speed and hammer frequency. The bit face configuration is the spatial distribution of the carbide button on a percussion bit face. This program plots the impact points in order to analyse visually whether the combination of buttons, rotation and frequency adversely affects the wear of the carbide buttons.

The program displays the impact points as seen from the drill. That is the rotation is counter-clockwise. The rock would see the impact in a clockwise direction.

How to use:

Type BIT

Questions:

Update Continue

The update option is used when a new bit face configuration is entered for trial. This is also used after the program is loaded and the initial bit must be entered.

The continue option is used when a bit face has previously been entered and the user simply wishes to determine the effects of rotation or hammer frequency.

UpdateHow many buttons are on the face:

18

Page 22: Autolisp Programs & Visual Basic Programs

This is the number of buttons on the face of the bit.

Locate the centre:

This is the centre of the bit face. The program works best if the dimensions of the bits are in mm. Actual size drawings are the best.

Pick the buttons centres:

This is the impact centre of the buttons. The program will iterate through this question until all the buttons have been selected

What is the hammer frequency (Hz)?

This is the hammer percussion frequency. It is expresses in cycles/seconds or blows/second. Each hammer has its specific operating range.

What is the bit rpm?

This is the rotation speed in rounds per minute of the bit. Beware that when referring these result to real world results, that rpm and feed pressure are related.

Where do you want to start the revolutions (point)?

This is the point, which is selected by the picking device or the co-ordinates, where the centre of the display of the impact points is located. The user should place it sufficiently far away from the original bit face so that there is no overlay in the plotting of the impact points on the original design.

How many seconds do you wish to revolve the bit?

This is the number of seconds that the bit face will be rotated in simulated time. Typically 0.5 seconds is sufficient to display the impact pattern without cluttering the meaningful information.

The plotting will place a small circle at the location where every button would strike the rock. The program is

19

Page 23: Autolisp Programs & Visual Basic Programs

extremely simple but shows visually the timing problems of the drilling system.

BLAST

Purpose:

This program is a tool for the blasthole planner. The planner prepares the blast layouts and uses the program to find the length of the holes, the offset and the dip.

Once the holes have been entered, it is possible to find the surface area of the blast pattern and the total drilled length. This program serves to reduce the amount of mechanical work the planner has to do.

It is important when the drawings are produced, that the horizontal reference line be as long as possible in order that the precision of the "offset" be accurate.

It is necessary to TABLET before using this function in order to have the proper scale.

How to use:

Type BLAST

Questions

The program will start by asking the extremities of the frame and the centre of the pivot within that frame. Before using this function make sure that the digitizer is calibrated.

Once the initialisation has been done it does not have to be redone except if you wish to recalibrate. Typing (SETQ CALIBRE NIL) on the command line does this.

NEW: Serves to initialise a new sheet. The pivot point of the sheet and a point on the reference line to the right of the pivot point are required. It is important that the sheets not move, as inaccuracies will develop.

20

Page 24: Autolisp Programs & Visual Basic Programs

LINES: This serves to identify the holes. The information required is the start of the hole and the end of the hole. It is preferable to always be sequential and follow the nomenclature of the original plan. If "Enter" is the first command entered after this option, then the command will be terminated. It is possible to return into this command and enter other holes as long as the sheet has not been moved. If the sheet has been moved, then "NEW" must be used again and this will eliminate all the visible work on the screen.

SURFACE: This command serves to calculate the area covered by the holes and the total length of the drill holes.

There are two types of surfaces that the program can handle. These are "open surfaces" or "closed surfaces". An open surface is one that does not completely enclose around the drill drift. A closed surface completely incorporates the drill drift within its area.

After the calculations are done, a PLINE will indicate the area calculated. The program at this point of development does not allow for any corrections. All corrections must be done manually.

END: This option is used to terminate the program.

This program comprises of a suite of blast related subroutines that may be used as tools to make blast layouts. Included in this package are:

Trou : select the entity and print the text on the screen.Coupes : program to make sections from lines and textDessin : program to draw the information generated from CoupesSurface : program to calculate total length and surface area from the holes selected in trou.Nvtr : program to select the starter hole for designing blast patterns.Ptr : program to generate the holes with the appropriate selected burden.

BLSTLTR

Purpose:

This program is used to generate a blasting letter for long holes. Hole information is entered from the blasthole section and the program cumulates the data and prepares a report.

21

Page 25: Autolisp Programs & Visual Basic Programs

How to use:

Type BLSTLTR

QuestionsOptions: Newblast RIng Delete Print Save Recover End

Newblast This option will destroy the present hole data. It is used to clear the memory of the present blast and start a new one. Save should be used to save the previous blast letter.

What is the name of the blast: This is the name of the new blast letter. An example of a blast name is 4950-150.2. This would indicate the stope and the blast number as the extension.

RIng what is the ring number: This is the string representation of the ring number. It may be alphanumeric. Once a ring has been entered the program will create a layer representing the ring and will display only that layer. To view section overlaid the LAYER command of Autocad may be used. Once the ring number has been entered the following menu will be displayed:

Ring Option: Hole Delete Explosive Finish Regen Surf_delay

Hole This option is used to enter the hole information. The following questions are asked in a circular fashion to get all the holes of the ring:

What is the hole number: This is the number of the hole on the section.

Point to the starting point of the hole: This is the point where the hole and the excavation meet.

22

Page 26: Autolisp Programs & Visual Basic Programs

Point to the ending point of the hole: This is the point where the hole terminates away from the excavation.

Point to bottom of the deck: This is the deck that is the furthest away from the collar of the hole.

Point to the top of the deck: This is the point of the deck that is the closest to the collar.

Material: Explosive Dtem: Two type of materials may be found in a deck: an Explosive as specified in the Explosive option or stemming material. The stemming option generally applies to downholes

What is the cap number: This is the cap number that is used if the material specified in the previous question is Explosive. The cap is considered to be a down the hole delay. All caps are considered multiple of 25ms with 1 being 25ms, 2 - 50ms, etc.

The information of the hole is displayed and a request to verify that the information is valid is shown. Press Y or Enter to accept and save the information, otherwise the information is not stored to the hole database. A message is issued to the user if the information has not been saved.

Delete This option is used to delete a specific hole from the database. If an error has been made when entering a hole, the hole must be deleted and then re-entered in its entirety.

23

Page 27: Autolisp Programs & Visual Basic Programs

What is the hole number: This is the number of the hole that must be deleted.

Explosive this option is used to define the type of explosive that is to be used in the blast. Whenever a change is made in the type of explosive used in the holes, this option must be used to get the proper type of explosive and hole size.

Explosive type: Anfo Superfrac Magnafrac Powerfrac: These are simply some basic explosives used. The user may go into the program and change the type, loading density and hole size depending on types used at the specific mine.

Hole size: 2.5 3.5 4.5: This is the hole diameter in inches. The user may modify it to be metric if necessary.

FinishThis option is us to terminate the ring menu options.

Regen This option is used to correct the data on a section by erasing all the entities and regenerating only the valid entities directly from the hole database. When delete is used this function is executed automatically.

Surf_delay This option is used to define the surface delay applicable to the hole or hole subsequently entered. The delay must be in milliseconds. The surface delay is used to calculate the kgs/delay and is used in conjunction with the down the hole delays.

Print This option is used to print out the report to the printer.

24

Page 28: Autolisp Programs & Visual Basic Programs

Do you wish to double prime the blast? (Yes No): For some blasts all the accessories have to be double as a backup. The double prime will double the quantity of surface and down the hole delays by two.

What is the surface delay: The program cannot store all the surface delays that have been specified in the hole entry. Normally it is an easy task for the user to enter the surface delays at this stage.

Units used: This is the quantity of surface delays used. If the double prime option is used, the quantity specified under this option will be doubled in the report. To terminate the entry of the surface delays, simply press Enter until a list of the surface delays is displayed on the screen.

Are the surface delays valid? (Yes No): If the surface delays specified are valid simply press Y, otherwise the surface delays will be rejected and the re-entry process will begin again.

Once the surface delays have been validated, the printing of the report will begin on the printer.

Save this option is used to save the hole database to a file with the name of the blast. The file will have the name of the blast specified at the start of the program. Caution must be exercised in the choice of the file name so as not to overwrite previous files. The program does not verify if the file exists.

Recover this option is used to recover from a file the blasthole database. The entities are then created. Do not use a drawing that has previous entities, as there may be a data loss.

End This option is used to terminate the program. The program may be restarted at any time as the variables of the program are kept in memory.

25

Page 29: Autolisp Programs & Visual Basic Programs

C0

Purpose:

To freeze all layers except layer 0

How to use:

Type C0 (C – Zero). This will automatically hide all the layers except Layer zero. Layer 0 will become the active layer. This program is included in Blast.lsp.

CDIST

Purpose:

This function is identical to DIST in Autocad but cumulates the distance at each point selected or entity.

How to use:

Type CDIST

Questions 1) Start Point:2) Next Point:

Output = cumulative distance3) Return to step 2

To terminate the function type CTRL-C or escape in the WINDOWS platform.

COLLAR

26

Page 30: Autolisp Programs & Visual Basic Programs

Purpose:

The program uses plan and section information from a blasthole grid system to determine the co-ordinates of blasthole collars. The plan view in conjunction with the sections determines the 3-D co-ordinates of the collar. The start and end of the holes coupled with the dump of the holes determines the azimuth and dip of the holes. The information derived from the plans and sections is stored in a file for use by another program or for printing.

How to use:

Type Collar

The plan that is used to determine the reference line must have been tableted so as to get the proper scale and co-ordinate location. The scale of the plan and the sections need not be the same but the TABLET command of Autocad must be used to readjust the scales.

The program is subdivided into two major components: 1) the Reference line and 2) the Section.

The initial menu will appear as follows:Refline Sectline End

Refline Refline is used to define the reference line for the blasthole grid system. The grid system can have any orientation in plan view. The reference line can be a New one or a Recalled reference line that has previously been stored. Every time a new reference line is created, it is stored in a file COLLAR.LST. Recall is used to recover the reference line information.

When a New reference line is chosen the points that define the grid system is requested.

Questions:

Locate section point 1: This is a point that intersects the reference line and the section line. The reference line must be found on every section. This may be a common easting or northing.

27

Page 31: Autolisp Programs & Visual Basic Programs

Locate section point 2: This is a point along the section line. The section line does not have to be perpendicular to the reference line.

What is the line number: This is the number of the line. This must be a numeric integer.

Locate another section on the reference line: This is a point on the reference line that intersects another section line. The direction of increase or decrease of the line number is not important and is handled by the program.

What is the line number: This is the section line number.

Please enter stope name: This is the name of the stope. The name must be a maximum of 8 characters. The stope name is also used as the filename. The file name will have the extension. DAT.All co-ordinates calculated for the stope will be appended to the file. The user has the responsibility to erase the file once the data is no longer useful. The file is a text file that is easy to edit using any standard text editor.

Please enter ref. line: This is the name of the reference line. A stope may have several different reference lines. The reference line name is usually alphabetic and short. The addition of numbers leads to confusion, as the line numbers are numeric. An example of a line number / reference line combination is G7. Note that the reference line name is case sensitive.

When Recall is used to recover a reference line form the file COLLAR.LST the following information is requested:

Questions:

Please enter the stope name: This is an eight-character file name with no extension. The program handles the extension to the stope name. COLLAR.LST is the file that contains all the reference line information. If the stope name is invalid an error message will be returned to the user.

Please enter ref. line name: This is the name of the reference line for the stope. Note that the reference line name is case sensitive.

28

Page 32: Autolisp Programs & Visual Basic Programs

Sectline

This second section of the program uses the blasthole sections to determine the co-ordinates of the collar.

Once Sectline has been selected the following menu is displayed:Calib Holes View End

Calib

This option is used to calibrate the section.

Questions:What is the line number: This is the numerical line number. The number need not be within the limits of those specified in Refline.

Point to the reference line: This is the point of intersection between the reference line common on all sections and the reference elevation specified in View.

Point to another point on the reference line: This is a point on the reference elevation line. The point is necessary to correct for the difference in orientation of the section relative to the true grid.

Holes This section is used for the determination of the collar locations. To terminate this section of the program press Enter on the first question shown below.

Questions:Point to the collar of the hole: This is the point at which the drift and the hole meet.

Point to the end of the hole for dip: This is the end point of the hole. It is used to determine the dip of the hole in section.

Dump (+ into view)(- towards viewer): The angle of the section from the horizontal is considered the dump angle. A 90-degree dump is perpendicular to the plan view and a 0-degree dump is a plan view. A dump that is into the view (i.e. away from the observer) is considered positive,

29

Page 33: Autolisp Programs & Visual Basic Programs

whereas, a negative dump occurs when the dump is toward the viewer. This applies for both upholes and downholes.

The hole collar location is then displayed as well as the dip and azimuth relative to the true mine grid. The information is also stored in a file for used by another program or for printing. There is no error correction routine in this program. All correction or deletion of information can be easily handled through a text editor.

View This section is used to accommodate for different observer views. The following questions will determine how the co-ordinates will be calculated:

Questions:

Looking: North South East West

The user must specify the view of the blasthole sections.

What is the elevation of the pivot: The elevation reference line that is common on all sections. It is used to get the proper elevation of the collar. By default the view is EAST and the elevation is 0.0.

Category:

This is the type of hole. Typically blastholes are BH. Only two characters are permitted for the category. The program will accept more but the additional characters are not stored. All lowercase characters are converted to uppercase.

Region:

This is the region. It is used to further detail the hole location and is used by the "LYNX" system.

When entering into Sectline for the first time in a session, the "View" option should be selected before the Holes option. If this is not done the elevation, co-ordinates and orientations may not be correct.

End This option is used to terminate normally from the Sectline option.

30

Page 34: Autolisp Programs & Visual Basic Programs

Notes:

All lowercase alphabetic characters are converted to uppercase when they are stored in the file for data transfer to the FoxPro program.

The program upon writing to the file that is specified by the stope name automatically generates a borehole number that must be unique for the LYNX system. It is therefore important that the user follows the guidelines in entering the information and that the initial blasthole design take these constraints into account. Otherwise, duplicate blasthole names will be created and the validity of the database will be questionable.

Limitations and Standards

1) All automatically generated borehole names are 8 alphanumeric characters.

2) The first two characters are numbers representing the level. The second and the third digits of the level are used. Examples are:

5060 ===> 06 5015 ===> 01 4960 ===> 96 4950 ===> 95 4940 ===> 94 4900 ===> 90 4885 ===> 88 4870 ===> 87

It is important that the naming of the stope be proper as the second and third digit of the stope name are used to generate the first two number of the borehole name. Examples are : 5060-170, 506170P4, etc.

3) The third character should be a letter and represents the reference line name. The reference line name is one character and can be any alphabetic character A.Z. Lowercase is automatically converted to uppercase. If no reference line is entered, then the default letter is R.

4) The next two digits are the reference line numbers. These are an integer ranging from 00 to 99. No alphabetic characters are permitted.

5) The next character is the hole number prefix. The prefix is alphabetic and can be from A.Z. All lowercase characters are converted to uppercase. If no prefix is included, then the default letter is H.

31

Page 35: Autolisp Programs & Visual Basic Programs

6) The next two characters are alphanumeric. Hole numbers do not have to be numeric. All lowercase alphabetic characters are converted to uppercase. Holes names such as A2 is converted to A02, 2 is converted to H02.

Below is a quick break down of the naming scheme:

LEVEL RING NUMERIC RING HOLE ALPHANERIC (0.99) PREFIX NUMBER(0.. 99) PREFIX HOLE (A..Z) (A..Z) NUMBERDEFAULT: R H 1 2 3 4 5 6 7 8

CORE

Purpose:

The program may be used to evaluate the relationship between holes of various dips and azimuths to determine if they have the same loci of strikes and dips. As the technique to determine the strikes and dips is an iterative one, small circles are used to represent the strike/dips that the program has determined.

How to use:

Type CORE

Questions:

1) What is the hole azimuth (degrees from North, clockwise). The angle is in decimal degrees.

2) What is the hole dip (+ is considered looking down and - is looking up).

3) What is the core angle (decimal degrees). The core angle is the smallest angle found at the intersection of the fracture plane (or other feature) and the axis of the core.

32

Page 36: Autolisp Programs & Visual Basic Programs

4) What is the hole number. An optional hole number may be entered to further describe the hole. The hole number is used to create a layer for each hole. By changing the colours and using a pline to connect the circles the individual holes may be emphasised.

The program is easy to use but some experience is required to interpret the information generated. The relationship between holes is not always evident especially when there is a variance in the azimuth and dip. The program provides a rapid visual method of analysing drill holes that do not have to be drilled on the same azimuth.

COPY

Purpose:

This program is used to copy one file onto another or appended to another file.

How to use:

Type (COPY “/acad/lsp/scrap.txt” “/acad/lsp/scrap1.txt”)

Questions

1) No questions to this function.

The / must be used and not the \ in the description of the file. Autocad uses \ for special characters.

COUPES

Purpose:

To generate cross section from an AutoCad drawing

33

Page 37: Autolisp Programs & Visual Basic Programs

How to Use:

Type Coupes The program Blast.lsp must have been loaded in order to have this program available

Questions:

1) Select next point. The user must select a polygon of entities to define the selected entities.

2) Select starting point. The entity selection is activated. The user must select the first point in order to define the view direction.

3) Select ending pint. The user must select the ending point in order to define the vector view direction.

The user must define the reference and section lines on the layer LIGNES. Each of the lines must have unique name. The text closest to the end of a line is used as a section line name. The survey lines must be on an elevation name (eg 349) and the text of the Backs and Floors must be on the layer with the appendix EL (eg. 349EL).

All the information I saccumulated in the directory C:\temp\coupes.asc.

To draw the sections from the files coupes use the program Dessin

CUBICO

Purpose:

This program is used to calculate areas and tonnages. The program asks the user to define an polygon that is then used to source out the text with the appropriate prefix “T” for back and “P” for the floor.

A DCL is used for the data entry

How to use:

Type CUBICO

Questions

34

Page 38: Autolisp Programs & Visual Basic Programs

1) The user must define the area to calculate using the Select Pline button.

2) The program then seeks within the area the text for the back and the floor (e.g. T234.5 P230.4) and does the averages, the maximum and the minimum values.

3) The area is calculated from the polygon defined by the lines. The volume is a resultant of the area by the average height and the tonnage, volume by tonnage factor.

4) The recalculate button is used when the tonnage factor is changed or the average height is entered manually.

The results are displayed within the DCL and the recalculate button is when changes are made manually. The only edit boxes that have effect by changing manually are the average height and the tonnage factor.

DELLAYER

Purpose:

This program eliminates all entities on a specified layer.

How to use:

Type DELLAYER or use menu

Questions 1) Choose: Entity Layer-name:

If <E>ntity

2) Choose Entity:Response: Layer : {layer name}

3) Confirm layer to delete: (Yes No)

If <Y>es is chosen then all the entitiesOn that layer will be deleted from the Drawing.

35

Page 39: Autolisp Programs & Visual Basic Programs

If <N>o is chosen then the function is halted and none of the entities are

eliminated.

If <L>ayer-name

2) Layer to delete: {type layer name}

This program will not eliminate entities that have the specified layer name but are "trapped" within a succession of blocks. To eliminate the layers (i.e. for simple entities only) from the drawing save the drawing and then use the PURGE command upon re-entry into the drawing.

DESSIN

Purpose:

Program to draw sections from the file C:\temp\coupes.asc.

How to use:

Type Dessin

No other commands are necessary. The program verifies in the c:\temp\coupes.asc file to get the information. The information is tab delimited and the format is as follows:

[Section name] [X0] [Roof elev] [Floor elev] [X1] [Roof elev 2] [Floor elev 2]

The program forms rectangles to represent the excavation

EDTEXT

Purpose:

This program serves as a dynamic text editor and bypasses CHANGE or DDEDIT. It is quick but still has a few flaws. It will work with left-justified text.

36

Page 40: Autolisp Programs & Visual Basic Programs

This version was developed for version 12 and less. Conflicts with higher versions.

How to use:

Type EDTEXT or insert into the menu

Questions 1) pick the text:

After having selected the text, the position of the cursor will be seen on the command line. The main reason for this is that most of the AUTOCAD fonts are proportional and it is quite laborious to exactly position the

cursor.

The following keystrokes are valid:

I) All ASCII characters are permittedii) Alt-I may be used to toggle between the NORMAL mode and the INSERT mode. The

normal mode is identified by the underscore "_" nested in the text and the insert mode by the pound "#".

iii) The mouse may be used to displace the cursor rapidly.iv) The cursor keys may be used to displace the cursor. Use PgUp or PgDn to accelerate the movement of the cursor.v) Backspace key may be used to eliminate

characters to the left of the cursor.vi) Del is used to delete on character to the right of the cursor.vii) Enter is used to terminate the function.

FAULT

Purpose:

The purpose of this program is to visually see the apparent movements of fault blocks in plan, section and longitudinal.

37

Page 41: Autolisp Programs & Visual Basic Programs

The program assumes that there is a marker bed within the original block and that it is being displaced. This program is a tool to evaluate what one should expect to find at another elevation, section or longitude given that one view has been defined. The defined fault plane is the assumed slip plane.

The critical parameters are:

Vein : i) widthii) Azimuthiii) Dip

Fault: i) azimuthii) Dip

Movement: Two movements are possible: a) along the strike of the fault and along the dip of the fault.

Perspective: Three parameters exist:

a) Sectionb) Longitudec) Elevation

These three parameters serve to determine the point of origin of the intersection. In this

manner actual mine co-ordinates may be used so it is easier to locate within the mine workings.

View: The three parameters Z-elevation, Y-north and X-east serve to determine the views at other points than those specified in the "Perspective" entry.

With the views at different points it is easier to determine visually whether the structural hypothesis is valid. Correlation with actual mapping may be done easily.

How to use:

Note: It is important to initialise all the above parameters before using "view" otherwise the program will not work.

Type FAULT

Questions

38

Page 42: Autolisp Programs & Visual Basic Programs

1) INitial FAult MOvement PErspective VIew ENd

INitial : The command to initialise the dimension of the block that one wishes to evaluate. These include width of plan, depth of section, and height of longitudinal.

VEin : The command requests the azimuth of the vein, the dip and the true thickness. The true thickness is calculated perpendicular to the plane of the vein.

FAult : The command serves to establish the attitude of the fault. Avoid azimuth

Close to 0 or 90 degrees as they may cause the program to malfunction. Use angle 1 or 89 degrees instead. The left-hand rule applies to the orientations of the fault.

As an example: azimuth 315 / dip 45 indicates a strike NW/SE with a dip direction to the NE at 45 degrees. Azimuth 45 / dip 60 indicates a NE/SW strike with a dip 60 degrees towards the SE.

MOvement : This selection requests the movement of the vein along the azimuth of the strike of the fault. It is to be noted that the movement is assumed to be half the distance on each side of the fault.

Perspective : With this selection it is possible to define co-ordinates that are relative to the mine workings. The mid point of intersection between the fault and the vein is considered the origin.

VIew : In order to visualize the effect of the movement at a different location in the co-ordinate system, the N, E and elevation can be entered here. With this new view it is possible to confirm a hypothesis rapidly.

39

Page 43: Autolisp Programs & Visual Basic Programs

ENd : Exiting through this command avoids the user from having to redefine the VEin, FAult, MOvement and PErspective. The user will find it convenient to exit the program in order to plot, do measurements or to move certain entities on the drawing.

FRZLAY

Purpose:

The purpose of the program is to freeze a layer that has been "picked". If the layer that is to be frozen is the "current" one, then layer 0 will become the "current" layer. This function is normally put in the menu as it is used often.

How to use:

Type FRZLAY or use the menu

Questions: 1) Select the entity to be frozen:

GEOLOG

Purpose:

To do a gelogical interpretation and hatch a closed surface. This is used to transfer geological interpretation from Autocad to Gemcom in a more user-friendly way than Gemcom does.

How to Use:

The program uses a Dialog Box. There are still a few bugs to fix but generally works well. TO BE CONTINUED

40

Page 44: Autolisp Programs & Visual Basic Programs

GRDLINE

Purpose:

Program to draw gridlines in 2D. The program asks for the corners of the frame and the title block, the scale of the drawing. The program draws the lines and the co-ordinates of the view.

How to use:

Type GRDLINE

Questions: 1) BOTTOM LEFT HAND CORNER: This is the bottom left hand corner of the frame.

2) TOP RIGHT HAND CORNER: This is the top left-hand corner of the frame.

3) TOP LEFT CORNER OF TITLE BLOCK: This is the top left-hand corner of the title block. The program only accepts frames with the title block at the bottom right hand corner of the frame.

4) “OPTIONS: Plan Section Longitude: Three options exist for the plotting of the grid system. If the Plan option is selected then the X co-ordinate is E and the Y is N. For Section the X is N and the Y is the elevation. For Longitude the X is E and the Y is the elevation.

5) INTERV. BETWEEN GRID LINES: This is the interval between the lines in the X Y direction for the plan and X for the section and longitude option.

6) VERTICAL INTERV. BETWEEN GRID LINES: The vertical interval applies for the Section and Longitude options. This is the distance between the lines.

7) SCALE: 100 200 500 1000 Other: The scale applies to the text size of the co-ordinates. The “Other” option is used to determine the size of text for drawings in other scales. Determine the scale using an actual drawing. For example, if the text size at 300 scale is 2 meters then enter at HEIGHT OF TEXT: 2.0

8) Do you wish to insert the North arrow? YES, NO.=> The Y or N option is required to enter the North arrow on the plan.

The resultant of the program is the drawing of the co-ordinates lines and numbers in the X and Y direction. The lines are drawn within the specified frame avoiding the title block.

41

Page 45: Autolisp Programs & Visual Basic Programs

GRIDLINE

Purpose:

Program to draw gridlines in 3D. The program asks for the corners of the frame and the title block, the scale of the drawing. The program draws the lines and the co-ordinates of the view. The GRIDLINE program resembles GRDLINE but is a generalised grid program. Using the UCS to determine the view in any direction, the program will generate in the current UCS the gridlines in the X Y Z direction.

How to use:

Type GRIDLINE

Questions: 1) BOTTOM LEFT HAND CORNER: The bottom left hand corner of the frame in the current UCS.

2) TOP RIGHT HAND CORNER: The top right hand corner of the frame in the current UCS3) TOP LEFT CORNER OF TITLE BLOCK: The top left-hand corner of the title block.4) INTERV. BETWEEN EAST LINES: The interval between the line in East or X direction5) INTERVAL BETWEEN NORTH LINES: 6) INTERVAL BETWEEN elevation LINES:7) SCALE: 100 200 500 1000 Other: The scale of the drawing. Other is used for scales that are not defined8)"Do you wish to insert the North arrow? YES, NO.=> The question is used to insert the North Arrow on the drawing.

The program generates the grid lines in a projected plane of the present view. The program to determine which lines will be drawn within the frame uses the UCS origin UCS X direction and UCS Y direction.

42

Page 46: Autolisp Programs & Visual Basic Programs

GROUPTOBLOCK

Purpose:

Program was designed to convert grouped entities created by the Carlson program.

How to use:

Type GROUPTOBLOCK

Questions: 1) Select the entities that must be converted. The program will determine if the group exists with a “sptxxx” block and a "SRVPNO1" block with contains the attributes

2) The program will substitute the group entities with substitute the block.

INPDBF

Purpose:

INPDBF is a group of programs that can be used to plot sections, geochem and infrastructure plots from a text file. A structure file is used to define the variables, constraints and conditions for plotting. The program plots in “true” 3D the information. The text is displayed in the UCS that has been chosen to plot the data.

How to use:

Type Inpdbf

General Program questions:

Questions 1) Please enter the name of the structure file: The structure file is the file that contains information on the about the treatment of the data.

2) Please enter the name of the data file: This is the name of the data file that contains the information to be plotted.

43

Page 47: Autolisp Programs & Visual Basic Programs

3) What is the default scale of the text 20 50 100 Other : This is the scale of the default text and depends on the scale of the drawing. Other is used when custom default scale plots are required. Text size can also be defined in the structure file.

Structure file

The structure file determine relationships between the database and how the program will actually treat the data. A pseudo interpreter has been incorporated into the program to give the user the flexibility to determine the final presentation.

An example file is shown below which can be called STRUCT.TXT

VAR_DEFPOZOESTE NORTE COTA AZIMUT INCLIN LARGO DESDE

HASTA Inter Zn Au Fe Codigo EOL

CNTRL TAGOFFSET 1.0 -3.0 LINEWIDTH 2.0 NOTICKEND_CNTRL

FILTER Zn > 0.1END_FILTER

ASSOCESTE WITH XNORTE WITH YCOTA WITH ZPOZO WITH HOLEAZIMUT WITH AZIMUTHINCLIN WITH DIPDESDE WITH FROMHASTA WITH TOCodigo WITH UNIT0 UNIT COLOR MAGENTA1 UNIT COLOR GREEN

44

Page 48: Autolisp Programs & Visual Basic Programs

2 UNIT COLOR CYAN3 UNIT COLOR ORANGE4 UNIT COLOR ORANGE5 UNIT COLOR ORANGE6 UNIT COLOR CYAN7 UNIT COLOR YELLOW8 UNIT COLOR RED8 UNIT COLOR BROWN WHEN Fe > 6.0 AND Zn < 4.09 UNIT COLOR BLUE10 UNIT COLOR GREEN11 UNIT COLOR PURPLE;Zn WHEN Zn > 0.0 SIZE 0.3 COLOR WHITEZn WHEN Zn > 0.0 SIZE 0.3 COLOR WHITEZn WHEN Zn > 5.0 SIZE 0.3 COLOR GREENZn WHEN Zn > 9.0 SIZE 0.3 COLOR REDEND_ASSOC

TASK;PLOT SECTION ORIGIN x y z DEPTH m LOOKING azimuth dump VARS [WGHTAVG] Cu Ag;azimuth and dump are from the viewing directionPLOT SECTION ORIGIN 266800 5007400 0 DEPTH 25.0 LOOKING 45 0 VARS Zn FeEND_TASK

The structure file is composed of the following section dividers:1) VAR_DEF defines the variables in the data file. The variables are

case sensitive. The line below VAR_DEF is the header of the text file. The fields must be TAB delimited and the ultimate entry of the line EOL to determine the end of the variable list. Not all the variables need to be displayed or used.

2) CNRTL END_CNTRL This section controls various function in the plotting of the such as:

TAGOFFSET determines where the tag will be displayed relative to the end of the hole. LINEWIDTH is the width of the borehole trace. NOTICK will disable the display of the tick marks indicating separation of the lithologies on the borehole trace.

3) FILTER END_FILTER This section is used to filter out data from being plotted.

4) ASSOC END_ASSOC This section is used to associate the database found in the data file with keywords that are used by the program to give the user the final product desired.

45

Page 49: Autolisp Programs & Visual Basic Programs

The types of associations are: I) variable association that links the user defined variables such as X Y Z. The critical minimal data associate that is required for the program to plot is: a)ESTE WITH X, b) NORTE WITH Y, c) COTA WITH Z, d)POZO WITH HOLE, e) AZIMUT WITH AZIMUTH, f) INCLIN WITH DIP, g)DESDE WITH FROM h)HASTA WITH TO. The WITH keyword is used to determine a variable association.

The UNIT association relates how the borehole trace will be displayed. The syntax to the association is <<string>> UNIT <<WHEN condition>> COLOR <<valid color name>>. The WHEN condition is used to determine lithologies based on grades.

The assay association is used to determine based on certain conditions whether a value will be displayed. The syntax is <<variable>> WHEN <<condition>> <<SIZE size>> <<COLOR color_name>>. This association is used to determine which color and size of text will be displayed if the conditions are met. The last valid condition in the association list determines the plotted conditions. It is therefore important to structure the file with the verification sequence in mind.

5) TASK END_TASK This section determines the task that has to be accomplished. A sample task is shown above in the sample file. The syntax is as follows: PLOT SECTION ORIGIN <<X>> <<Y>> <<Z>> DEPTH <<value>> LOOKING <<azimuth>> <<dip>> VARS [WGHTAVG] <<variable1 variable2 …>> The ORIGIN defines the plane that must be projected onto. The DEPTH defines the area of influence on each side of the plane. LOOKING is determined as the vector that is defined from the origin of the plane to the viewer. The azimuth is defined in surveyor’s units with North being 0. The dip is 0 when the vector is parallel to the horizontal +90 when directly above and –90 when directly below. VARS defines the variable that must be plotted. WGHTAVG is a keyword that can be used when a weighted average is required within the confines of the plane and the depth. The information is written to a file and can be used later in a spreadsheet for further calculations.

Typically the problems encountered with the program will originate in the structure file.

Comments in the data file or structure file must begin with a “;”in the first column of the line in which they are encountered.

46

Page 50: Autolisp Programs & Visual Basic Programs

LAY

Purpose:

This program identifies the layer on which the chosen entity is located and makes that layer the "current" one. This program is typically in the menu as it is used frequently.

How to use:

Type LAY

Questions 1) select the entity:

LAYLIST

Purpose:

This program displays on the command line the layer of the entity selected. This command reduces the amount of information displayed on the screen

47

Page 51: Autolisp Programs & Visual Basic Programs

and is typically a substitute for the LIST command in AUTOCAD. This command is typically found in the menu as it is frequently used.

How to use:

Type LAYLIST

Questions 1) select the entity

Limon

Purpose:

This program is a suite of subroutines that are used to generate 3-D surfaces and calculate surfaces and volumes in 3-D. This program was developped as an inexpensive way of calculating volumes and surfaces but requires some instruction.

How to use:

This program uses a Dialog box with buttons. TO BE COMPLETED

PIPE

Purpose:

The program is used to make wrap around templates for lateral Y intersecting pipes and joining pipes. The program is divided into two subprograms:

1) LATERAL - Lateral Y program

2) JOIN - Intersecting pipe program.

The program makes an unwrapped 2D template that can then be cut out and wrapped around a pipe so that the pipe fitter does not have to waste time doing cutting and fitting of the two pipe. The program only does half of the 180 degrees of the template. If a complete template is required, then a mirrored image of the half that appears on the screen can be done.

The shape that appears on the screen to the right for the lateral Y subprogram is the hole in the larger pipe and the shape above is the wrap around on the

48

Page 52: Autolisp Programs & Visual Basic Programs

smaller pipe. The diameter of the larger pipe must always be larger or equal to the size of the smaller pipe.

How to use

Type LATERAL

Questions:

1) The internal angle of intersection between the two pipes:

2) The diameter of the large pipe:

3) The diameter of the smaller pipe:

4) The increment in degrees of the segments:

The shapes that appear on the screen are formed from line segments. The incrementation process in the program is in degrees and the precision of the shape is left to the user. An optimal increment has been found to be 5 degrees.

Type JOIN

Questions:

1) The internal angle of intersection between the two pipes:

2) The diameter of the pipe:

3) The increment in degrees of the segments:

The shapes that appear on the screen are formed from line segments. The incrementation process in the program is in degrees and the precision of the shape is left to the user. An optimal increment has been found to be 5 degrees.

49

Page 53: Autolisp Programs & Visual Basic Programs

OVRBURDEN

Purpose:

The purpose of the program is to transfer sectional elevations to plan in order that isocontours be made. The program simply puts points in 2-D space in order to speed up the process of making the isocontours. This program does not draw the lines.

How to use:

Type SECPLAN

Questions 1) TABLET: This serves to determine the scale and the Northing and elevation co-ordinates.

2) SECTION: An Easting is required in order to put the information on plan.

3) PICK POINT: On the section "pick" the points of interest that is necessary on the plan.

Once the point is "picked", a small circle with an elevation tag is put in the drawing. The program always returns to 3) until CTRL-C is used to end the program.

PLMAKE

Purpose:

This grouping of programs is used to convert lines into 3-D polylines, polyline merging, line compression and exporting to Gemcom format for making solids.

The following programs included are:Plmake – this routine is an aggregation of programs to clean and merge data. Within this group are

a) erase lines that are points. This eliminates all lines that have the same starting point and ending points.

b) erase identical lines. These are lines that are overlaying and normally should not exist.

c) Archiving elevations – this section is used to tranfer from Autocad into a text file text entities. An example would be the storing of floor and back elevations to lighten up a drawing.

50

Page 54: Autolisp Programs & Visual Basic Programs

d) Select area – this is used to define the polygon that is the selection set.

e) Export – this is used to output to a text file in a manner acceptable to Gemcom line data. Three files are produced and necessary so that Gemcom may use it. This is Techo.txt (back elevation) Piso.txt(floor elevation) and Pillar.txt(outline with no elevations). The program attempts to make as many closed polylines as possible.

f) Ok – does nothing

g) Cancel – Terminate the function

h) VSE – Makes vertical sections for Examine3d

i) VSEF – program to export 3d polylines from Autocad to Examine3D

How to use:

Type PLMAKE

Questions 1) Point of a corner, orCentre of the rectangle

2) Point of the section corner, orLEN_WDTH - the length and width of the

rectangle.

TOOLS

Purpose:

This grouping of program is essentially a toolbox of entity generating functions.

51

Page 55: Autolisp Programs & Visual Basic Programs

At the moment the following entities that may be formed are:

1) RECT - Rectangle generating routine.

How to use:

Type RECT

Questions 1) Point of a corner, orCentre of the rectangle

2) Point of the section corner, orLEN_WDTH - the length and width of the

rectangle.

PROBE

Purpose:

The purpose of this program is to search through a drawing database for entities that have a specified layer name. It is often necessary to clean up a drawing of some unwanted layers by PURGING the drawing. However, some layers cannot be purged because they are trapped in a block or a not easily visible. This program helps reduce the search time by placing in a file all the entities and their location. The program searches through all the block (even the nested ones) and output to the file PROBE.INF a listing of all the entities that meet the layer criteria.

Some layers cannot be purged if they are trapped in the block "definition" which is not an entity. AUTOCAD keeps the block "definitions" separate from the actual block "entities". As a result even if the "entity" blocks no longer have the layer, the "definition" will still have it. In order to purge that layer it will be necessary to redefine the block by reinserting the block in the following fashion (e.g. file is STATION):

INSERT:

52

Page 56: Autolisp Programs & Visual Basic Programs

Block name to insert:STATION=STATION

Insertion point:CTRL-C

How to use:

Type PROBE

Questions 1) Which layer

Once the program has returned and displayed nil on the command line, the information

pertaining to the entities on the specified layer are found in PROBE.INF. To print the information to the printer the DOS command TYPE PROBE.INF >PRN may be used.

The information in the file has been structured so as to make it easier to find the information. However, when it comes to block, the insertion points must be added to actually locate the block or the entity. The general structure of the ASCII file is as such:

>STARTBLOCK 1::BLOCK nENTITY

>END

The block information is as such:1) Layer2) Entity type3) Entity name4) Insertion point

The entity information is as such:1) Layer2) Entity point3) Insertion point

53

Page 57: Autolisp Programs & Visual Basic Programs

SCAN

Purpose:

Program to seek a drawing for a specific text. This is a lower level program than SEEK as SCAN only seeks exact text.

How to use:

Type Scan

Questions 1) Please enter text to scan... This is text that is sought. The text sought is case sensitive.

2) If text has been found that matches the entered text then the text is displayed in the center of the screen. If not found then the “Not found” display is displayed on the command line.

3) When text has been found the following key words are displayed as options: Continue or Terminate Out-zoom In-zoom: Continue is used to go to the next word that matches the conditions. Terminate is used to terminate the function. Out is used to Zoom out or to demagnify the text. In-zoom is used to zoom into the text to get more detail. If no text entities are selected then the message: The text cannot be found ... is displayed.

SECTION Seccion

Purpose:

This program transfers information from plan view to sections. This is a 2D program.

How to use:

Type SECCION

This command will give a description of the four functions make up the program and their use.

54

Page 58: Autolisp Programs & Visual Basic Programs

These programs are:

1) SXSTART Initialisation of the reference points for the section.

2) SXINPUT Data entry program.

3) SXREL Program to translate and rotate an orthogonal projection.

4) SXPROFIL This program generates drift profiles. To use this program, SXSTART must have run previous.

5) APSECT Program to produce unwrap sections.

Type SXSTART

Questions

1) STARTING POINT OF REFERENCE LINE:

This point must normally be located to the left of the section. This is to avoid having projections done in a mirror fashion.

2) ENDING POINT OF REFERENCE LINE:

This is another point on the reference line.

3) ELEVATION OF THE REFERENCE LINE:

This is the elevation of the reference line.

Note: All points projected are done so orthogonal to the reference line. If the starting point of the reference line is not to the left of the ending point, the projection will be inverted and all points will be projected below the reference line.

Type SXINPUT

Questions

1) SELECT POINT:

This is the point that the user wishes to project.

55

Page 59: Autolisp Programs & Visual Basic Programs

2) ELEVATION OF POINT:

This is the elevation of the point. A text elevation may be selected or uses ENTER to type in a numeric elevation.

3) TYPE OF POINT:

This is a text string that may be entered in front of the elevation that will be printed at the projected point and may be used to clarify the type of point that the user has selected. An example would be to use "F" for floor or "B" for backs.

Type SXREL

Questions

1) SELECT THE RELATIVE POINT:

This point is equivalent to the translated STARTING POINT: of SXSTART.

2) ABSOLUTE ORIENTATION OF THE SECTION:

This is the orientation of the rotated reference line with # 1) (above) as the origin. 0 is considered as east and is positive counterclockwise.

3) DIP OF THE SECTION:

This feature may be used to prepare dipping sections that are not at 90 degrees. This has applications in blasting where drill sections are not always at 90 degrees.

Note: SXSTART must be run before SXREL as some information that has been generated in SXSTART is required in this function. The RELATIVE POINT is equivalent to the STARTING POINT but translated.

Type SXPROFIL

Questions

1) POINT 1:

This is the first point on the plan view.

2) ELEVATION 1 LOWER:

56

Page 60: Autolisp Programs & Visual Basic Programs

This is the elevation of the floor of the drift.

3) ELEVATION 1 UPPER:

This the elevation of the roof of the drift.

4) POINT 2:

This is the second point on the plan view.

5) ELEVATION 2 LOWER:

This is the elevation of the floor of the drift.

6) ELEVATION 2 UPPER:

This the elevation of the roof of the drift.

Note: This functions requires two points from a plan view and four elevations to determine the floor and roof of the drift. Once all the questions have been answered a pline will be put on the section based on the reference line.

Type APSECT

Questions

1) Exaggeration in the Y direction: This is the vertical exaggeration of the section.

2) Increment(+) or Decrease X(-) : The question has as purpose to ask determine the incrementation process from the source point. Increase will add the distance and increment in a positive direction while Decrease will reduce the distance. This is used mainly when a central point to the section and work is done both ways.

3) Pick the last point on the traverse section : This is a point of reference for the program to start. The point may be located at a suitable reference point. The elevation will be calculated on the section using.the selected point.

57

Page 61: Autolisp Programs & Visual Basic Programs

4) Previous point or first point on the traverse plan : This is the point on the plan from which the program will start to add distance, either positively or negatively.

5) Elevation of last point : This is the elevation of the point selected on the traverse plan. The elevation may be text or by pressing Enter, the value through the keyboard.

The program will generate in relative co-ordinates an unfolded section of the plan. This is applicable to road construction layouts or ditch profiles.

SEEK

Purpose:

Program to wildcard strings and zoom onto the text in the drawing.

How to use:

Type Seek

Questions:1) Please specify the string: Enter the text to be found.

The? May be used to define a “wild” character and * for a group of wild characters that can range from no characters to multiple characters.

2) If a valid word is found then the text is zoom onto the center of the screen. Two options are displayed nOptions: Magnify Next: The Magnify is used to zoom in or out with the question: Magnification factor please: A numeric scale factor is required. Under the Next option the next matching word is displayed.

The function displays all the matching set of text. The string search is case sensitive. “Search routine complete” is displayed when the end of the valid words has been displayed.

58

Page 62: Autolisp Programs & Visual Basic Programs

SURVEY

Purpose:

The survey program is an agglomeration of utility programs for the surveyors. Presently four main programs are included: 1) Side shots, 2) Offsets, 3) TP and 4) Grade chain.

SIDE SHOTS

Purpose:

This program is used to calculate side shots

How to use:

Type Side

Questions:Enter BS Coors. Enter the co-ordinates of the backsight either through the keyboard or using a snap function. The drawings are assumed to be 2-D drawings and the elevation co-ordinate need not be entered at this stage.

Enter Station Coors: Enter the station co-ordinate either through the keyboard or using a snap function and picking the station node.

Enter Station Elev.: This is the elevation of the station entered manually through the keyboard.

Enter HI: This is the height of the instrument.

Enter HP: This is the height of point.

A loop around the following questions allows for the continuous entry of shots. Use Ctrl-C or BREAK to terminate the program.

Enter measured distance: This is the distance from the instrument to the shot point. It is a sloped distance. No corrections are done on this distance.

Enter Vert. Angle (xxx.xxxx): This is the vertical angle in sexagesimal (degrees, minutes, seconds). The

59

Page 63: Autolisp Programs & Visual Basic Programs

degrees and the minutes/seconds are separated by the decimal point.

Enter Horz. Angle (xxx.xxxx): This is the horizontal angle in sexagesimal.

OFFSETS

Purpose:

This program is used to calculate offset shots

How to use:

Type Offsets

Questions:Enter BS Coors. Enter the co-ordinates of the backsight either through the keyboard or using a snap function. The drawings are assumed to be 2-D drawings and the elevation co-ordinate need not be entered at this stage.

Enter Station Coors. Enter the station co-ordinate either through the keyboard or using a snap function and picking the station node.

Enter Station Elev.: This is the elevation of the station entered manually through the keyboard.

Enter HI: This is the height of the instrument.

A loop around the following questions allows for the continuous entry of shots. Use Ctrl-C or BREAK to terminate the program.

Enter measured distance: This is the distance from the instrument to the shot point. It is a sloped distance. No corrections are done on this distance.

Enter Vert. Angle (xxx.xxxx): This is the vertical angle in sexagesimal (degrees, minutes, seconds). The degrees and the minutes/seconds are separated by the decimal point.

60

Page 64: Autolisp Programs & Visual Basic Programs

Enter Horz. Angle (xxx.xxxx): This is the horizontal angle in sexagesimal.

Left offset: This is the offset to the left of the instrument as seen from the instrument. If the user simply presses enter the default value will be 0.0

Right offset: This is the offset to the right of the instrument. The default value is 0.0.

Plus offset: This is the offset vertically up from the point. There is no default value for this offset if the user simply presses Enter.

Minus offset: This is the vertical offset down from the shot point. The default value is the last specified offset. It is conserved as a default until the user wishes to change it.

A horizontal line is then placed between the left and right offset. The elevation of the floor and back are also placed on the screen and centred about the shot point. If both the left and right offset are zero a circle will be placed instead of a line and the elevation centred about the circle. If there is no positive offset the back elevation will not be placed on the screen.

To terminate the data entry, simply press CTRL-C or BREAK. Using a snap function and LINE (or PLINE) the right and left offsets may be connected to outline the survey.

TP

Purpose:

This program is used to calculate temporary points - TP

How to use:

Type TP

Questions:Enter BS Coors. Enter the co-ordinates of the backsight either through the keyboard or using a snap function. The drawings are assumed to be 2-D drawings and the elevation co-ordinate need not be entered at this stage.

61

Page 65: Autolisp Programs & Visual Basic Programs

Enter Station Coors. Enter the station co-ordinate either through the keyboard or using a snap function and picking the station node.

Enter Station Elev.: This elevation of the station entered manually through the keyboard.

Enter HI: This is the height of the instrument.

Enter measured distance: This is the distance from the instrument to the shot point. It is a sloped distance. No corrections are done on this distance.

Enter Vert. Angle (xxx.xxxx): This is the vertical angle in sexagesimal (degrees, minutes, seconds). The degrees and the minutes/seconds are separated by the decimal point.

Enter Horz. Angle (xxx.xxxx): This is the horizontal angle in sexagesimal.

The output to the program is a line that is drawn from the station to the TP with the elevation placed at the end of the line.

GrCh

Purpose:

This program is used to calculate grade chains

How to use:

Type GRCH

Questions:Enter Sta. or BLP Coors.: This is the co-ordinates of the station or back line plug as entered through the keyboard or using the snap function and pointing to the node of the station.

62

Page 66: Autolisp Programs & Visual Basic Programs

Enter Sta. or BLP Elev.: This is the elevation of the station or the back line plug.

Enter planned floor Elev. for Sta. or BLP: This is the planned floor elevation at the station or back line plug.

Enter FLP or Sta. Coors.: This is the co-ordinate of the station or the front line plug.

Enter FLP or Sta. Elev.: This is the elevation of the front line plug or the station.

Enter % grade (x.x): This is the % rise over run that the travel way is designed at. A 10% grade is entered 10 and a -10% grade is -10.

The program will output the following data from which to make the chains:

LENGTH FO BACK CHAINELEV OF BACK WASHERELEV OF STATIONLENGTH OF FRONT CHAINELEV OF FRONT WASHERELEV OF FRONT L.P.VERTICAL DIFF.HORIZ. DIST.

SXPLOT

Purpose:

This program has as purpose to make divided frames. The bottom frame is normally the plan view and the upper is the section. This program may not work on all plotters. This program was developed to with the intent to overcome the AUTOCAD limitations when it came to plotting multiple windows on the same plan without having to move the section. This program may not work with all plotters. Some plotters cannot handle two distinct plots on the same plot. With this program, the user must first plot the plan view and then plot the section view with the offset or origin is given by the TErminate function of the program. This program was developped for Autocad version 12 or less.

63

Page 67: Autolisp Programs & Visual Basic Programs

How to use:

Type SXPLOT

The options are:

STart PLan MOve SEction GRid TItles TErminate

STart Questions :

1) WHAT TYPE OF FRAME (A3-A3V)

The two types of permissible frames are A3 landscape of A3V portrait.

2) WHAT SCALE (250, 500, 1000)

This question is to define the scale of the drawing.

3) WHAT UNIT ON THE VERTICAL SCALE (N M)

This is to accommodate for the generation of sections of long sections.

PLan Questions :

1) BOTTOM LEFT HAND CORNER OF PLAN :

2) UPPER RIGHT HAND CORNER OF PLAN :

These two previous points represent the opposing corners of the bottom frame. Even if the UPPER

RIGHT HAND CORNER exceeds the maximum dimensions of the frame, the actual size will not exceed the A3 size.

MOve Questions :

1) BOTTOM LEFT HAND CORNER OF PLAN :

64

Page 68: Autolisp Programs & Visual Basic Programs

This command moves the frame to the new location selected. It is important to note that the upper frame

is located above the bottom frame. There are no horizontal offsets between the upper and lower frames. The vertical offset given by the SEction command is maintained at the same location and both frame can overlap.

SEction Questions :

1) BOTTOM POINT OF THE SECTION :

This function is used to locate the bottom point of the section. It can be used repeatedly to move the

top frame vertically relative to the bottom frame. The dimensions of the bottom frame and the upper frame may be altered by redefining the PLan. The difference in size between the A3 dimensions and the bottom frame is the dimension of the upper frame.

GRid Questions :

This function is used to place the co-ordinate and grid on the plan. It is best to use this command once

the frames have been located as any movement of the frames will result in having to remove manually the text and lines that have been created by this command.

TItles Questions:

This function places the title block on the plan. Here again this function should be used only when the

frames have been positioned final.

TErminate Questions:

This command terminates the program normally and displays the co-ordinates of the origin of the

second plot for the section.

65

Page 69: Autolisp Programs & Visual Basic Programs

THOLE

Purpose

This program may be used to position test holes (T-Holes) on plan as well as placing the assay numbers, grades and lengths.

The following layers are created or used for the specified data:

SAMLOC - The trace of the hole is on this layer. The colour of the hole is white.

SAMNUMBER - The sample numbers are on this layer. The colour of this layer is blue.

ASSAYS - This layer contains the assays. Only one assay is permitted but the program could be modified to

accept any number. The colour of this layer is magenta.

How to use

Type THOLE

Questions:

1) STARTING POINT OF HOLE:

2) DIRECTION OF THE HOLE:

3) THE LENGTH OF EACH SAMPLE:

4) Number or Grade

Selecting "Number" will generate a line with dashes to delimit the samples and the sample number will appear beside the dash. The program will request a starting number

and will automatically increment for all the others (i.e. if desired).

Selecting "Grade" a prompt will request the grade to be assigned beside the tick mark.

5) A loop is done going back to Question 4. To terminate the program use CTRL-C.

66

Page 70: Autolisp Programs & Visual Basic Programs

TXTATTR

Purpose

This program is used to modify text attributes in a drawing. It can be used to change the text size or style given a set of filter conditions. The filter conditions include:

1) The layer name2) The style name3) The linetype4) The colour5) The original text size

How to use

Questions:

The initial menu requests the user to specify whether text size or text attributes are to be modified. Specify SI for size and ST for style change. For size changes, the original text size and the new text size are requested. For style changes, the new style name is requested.

The filter elements are requested as follows:

1) Layer name (* for all): This is the layer filter element. All entities on the specified layer will be changed. * Signifies all layers.

2) Style (* for all): All the text entities that have the specified style would be chosen for modification. Only one style name may be specified at any one time.

3) Linetype (* for all): All the text entities that have the specified line type would be chosen for modification. Only one line type can be specified at any time.

4) Colour name (* for all): All the text entities that have the specified colour would be included for modification. Use the numeric value of the colour instead of the text value.

67

Page 71: Autolisp Programs & Visual Basic Programs

Once all the filter questions have been answered, a listing of the filter elements and the selection is displayed. If the choice is incorrect, then the user should press CTRL-C. Otherwise, the user can press any key to continue and change the text entities to the requested settings of style or text height.

68

Page 72: Autolisp Programs & Visual Basic Programs

VSE

Purpose

The program is used to make sections using survey data lines and text elevations to generate a 3d polyline that can be used to make wireframes in Examine 3d. This program is included in PLMAKE.LSP

VSEF

Purpose

This program is used to generate a text file with 3dpolyline data in the ‘geo’ format that is used by the Examine 3d program to generate rings that are then used to generate wireframes.

ZAP

Purpose

The ZAP program is a quick way to eliminate specific entities from a drawing. The user must be careful as the deletion of the entities includes those that are not visible on the screen and those that are frozen.

How to use

Type ZAP

Questions

SELECT THE TYPE OF ENTITY TO ELIMINATE:

The permitted entities that the program can handle are:

I) TEXTii) CIRCLEiii) POINTiv) SOLIDv) LINE

69

Page 73: Autolisp Programs & Visual Basic Programs

vi) PLINE

If another type of entity is selected the program will terminate without deleting any entities.

═════════════════════════════════════════════════════════════════TEXT

For the TEXT several different deletion options are permitted. The following prompt will appear when a TEXT entity is selected:

ELIMINATE TEXT : Numbers, Floor_back, All, Layer, Keepgeo

Using the Numbers option, all the text entities starting with a digit will be eliminated.

Using the Floor_Back option all the text entities beginning with the letter "B" or "F" for backs and floors and a second character a digit will be eliminated from the drawing.

Using the All option all the text from the drawing will be eliminated.

Using the Layer option a more specific deletion may be achieved. A second question is presented to the screen:

Eliminate Text: Numbers, Floor_back, All, Keepgeo

The option Layer reduces the influence of the deletion process to just one layer.

Using the option Keepgeo only the geology layers are kept. These are: STRUCTURE, FAULT, GEOSYMTXT, GEOTEXT, CONTACT, ASSAYS, SAMNUMBER. The name of the layers is easily changed in the coding and the number of permissible layers may be adjusted to the user's requirements.

═════════════════════════════════════════════════════════════════

CIRCLE

When a circle has been selected as entity the following deletion choices will appear:

Radius, Layer, Colour, All, End

70

Page 74: Autolisp Programs & Visual Basic Programs

With the Radius option only the circles with the identical radius will be deleted.

With the Layer option all the circles on the layer of the selected entity will be deleted.

With the Colour option all circle entities with the colour of the selected entity will be deleted.

The All option deletes all the circle with the Radius, Layer and Colour of the selected entity.

The End option is used to terminate the loop, as the menu will reappear until the user has completed his/her selection. This option is to give the flexibility to the user to select options such as Radius and Layer, Layer and Colour or Colour and Radius.

═════════════════════════════════════════════════════════════════

SOLID, LINE, PLINE

The selection of a solid, line or pline is handled with the following menu:

LAyer, LInetype, COlor, ALl, ENd

With the LAyer option, all the entities of the selected type on the layer on which the entity was selected will be deleted.

With the LInetype option, all the entities of the selected type with the linetype of the selected entity will be deleted from the database.

With the COlor option, all the entities of the selected type with the colour of the selected entity will be deleted.

With the ALl option, all the entities of the selected type will be eliminated from the drawing.

The ENd option is similar to the TEXT section in that combinations of layers, linetypes or colours are permitted to be more selective in the deletion process.

71

Page 75: Autolisp Programs & Visual Basic Programs

Entity Codes

CODE DATA TYPE DESCRIPTION

0 Pointed Pair "3DFACE"

10 List - 4 atoms First point

11 List - 4 atoms Second point

12 List - 4 atoms Third point

13 List - 4 atoms Fourth point

70 Pointed Pair Visibility flag (1= first, 2=second, 4= third, 8=fourth)

0 Pointed Pair "ARC"

10 List - 4 atoms Centre point

40 Pointed Pair Radius

50 Pointed Pair Initial angle (radians)

51 Pointed Pair Final angle (radians)

0 Pointed Pair "ATTRIB"

1 Pointed Pair Value

2 Pointed Pair Tag

7 Pointed Pair Text style name

10 List - 4 atoms Starting point of text

11 List - 4 atoms Alignment point

40 Pointed Pair Text height

41 Pointed Pair Scale factor

50 Pointed Pair Rotation angle (radians)

51 Pointed Pair Skew of characters (radians)

70 Pointed Pair Attribute flag (1= invisible, 2= constant, 3= to verify, 4= predefined)

71 Pointed Pair Text generation flag (1= mirror, 2= vertical)

72 Pointed Pair Text justification (1= centred on base line, 2= right, 3= aligned, 4=centered, 5= filled between two points)

Page 76: Autolisp Programs & Visual Basic Programs

73 Pointed Pair Length of zone

Page 77: Autolisp Programs & Visual Basic Programs

CODE DATA TYPE DESCRIPTION

0 Pointed Pair "ATTRIB"

1 Pointed Pair Dimension text

2 Pointed Pair Name of pseudo block

10 List - 4 atoms Starting point

11 List - 4 atoms Centre point

12 List - 4 atoms Continuation point of "base" line

13 List - 4 atoms First point of definition (linear/angular)

14 List - 4 atoms Second point of definition (linear/angular)

15 List - 4 atoms Definition point (diameter / radius / angular)

16 List - 4 atoms Definition point for arc

40 Pointed Pair Length of quote line

50 Pointed Pair Angle of "dimension" line (radians)

51 Pointed Pair Angle between UCS and the X axis of the chosen entity (radians)

70 Pointed Pair Dimension flag (0= horizontal or vertical, 1= aligned, 2=angular, 3=diameter, 4=radius, add to previous: +128= position of text specified by user, 1= user defined text)

0 Pointed Pair "CIRCLE"

10 List - 4 atoms Centre point

40 Pointed Pair Radius

0 Pointed Pair "INSERT"

2 Pointed Pair Name of block

10 List - 4 atoms Insertion point

41 Pointed Pair X scale factor

42 Pointed Pair Y scale factor

43 Pointed Pair Z scale factor

44 Pointed Pair Distance between columns for MINSERT

Page 78: Autolisp Programs & Visual Basic Programs

CODE DATA TYPE DESCRIPTION

45 Pointed Pair Distance between rows for MINSERT

50 Pointed Pair Rotation angle (radians)

66 Pointed Pair Attributes attached to block (1= present)

70 Pointed Pair Number of columns for MINSERT

71 Pointed Pair Number of rows for MINSERT

0 Pointed Pair "LINE" or "3DLINE"

10 List - 4 atoms Starting point

11 List - 4 atoms Ending point

0 Pointed Pair "POINT"

10 List - 4 atom Point

50 Pointed Pair Angle of the X axis relative to the UCS

Page 79: Autolisp Programs & Visual Basic Programs

CODE DATA TYPE DESCRIPTION

0 Pointed Pair "POLYLINE"

10 List - 4 atoms Starting point

40 Pointed Pair Starting thickness

41 Pointed Pair Ending thickness

66 Pointed Pair Crest flag (1= crest follows)

70 Pointed Pair Polyline type (1= closed, 2= smoothed curve, 4= spline curve, 8= 3D polyline, 16= 3D mesh, 32= closed 3D mesh)

71 Pointed Pair "M" value for polygonal mesh

72 Pointed Pair "N" value for polygonal mesh

73 Pointed Pair Smoothed mesh, density in "M"

74 Pointed Pair Smoothed mesh, density in "N"

75 Pointed Pair Smoothing flag (0= none, 5= quadratic B-spline, 6=B-spline, 8= Bezier)

0 Pointed Pair "VERTEX"

10 List - 4 atoms Point

40 Pointed Pair Starting width

41 Pointed Pair Ending width

42 Pointed Pair Rounded (if smoothed)

50 Pointed Pair Tangent (if smoothed)

70 Pointed Pair Point flag (1=crest with smoothing, 2= tangent of a spline curve, 16= control point in a spline curve, 32= 3D polyline point, 64= point of a 3D polygon mesh)

0 Pointed Pair "SEQEND" (polylines and attributes)

-2 Pointed Pair Name of entity of origin

0 Pointed Pair "SHAPE"

2 Pointed Pair Name of Form

10 List - 4 atoms Insertion Point

40 Pointed Pair Size

Page 80: Autolisp Programs & Visual Basic Programs

CODE DATA TYPE DESCRIPTION

41

50

51

Pointed Pair

Pointed Pair

Pointed Pair

Scale factor

Angle of rotation (radians)

Skew angle (radians)

0 Pointed Pair "SOLID"

10 List - 4 atoms First point

11 List - 4 atoms Second point

12 List - 4 atoms Third point

13 List - 4 atoms Fourth point (if it exists)

0 Pointed Pair "TEXT"

1 Pointed Pair String

7 Pointed Pair Text style

10 List - 4 atoms Insertion point

11 List - 4 atoms Alignment point

40 Pointed Pair Character height

41 Pointed Pair Height to width factor

50 Pointed Pair Rotation angle (radians)

51 Pointed Pair Text skew angle (radians)

71 Pointed Pair Flag (1= mirror, 2=reversed)

72 Pointed Pair Justification flag (1= centred on baseline, 2= right, 3= aligned, 4=centered, 5= filled between two points)

0 Pointed Pair "TRACE"

10 List - 4 atoms Starting point (first corner)

11 List - 4 atoms Starting point (second corner)

12 List - 4 atoms Ending point (first corner)

13 List - 4 atoms Ending point (second corner)

Page 81: Autolisp Programs & Visual Basic Programs
Page 82: Autolisp Programs & Visual Basic Programs

CODE DATA TYPE DESCRIPTION

Page 83: Autolisp Programs & Visual Basic Programs

CODE Description

0 Entity name

6 Line type

8 Layer name

10 Point

38 Elevation

39 Thickness

62 Colour

210 3D extrusion vector (list - 4 atoms)