Index of Subroutines (GRIP) W/Summaries

(Hide Summaries)
(Index by Keywords)
0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

3

_3_BOLT_ACORNNUT.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS AN ACORN NUT.
_3_BOLT_BVLWASH.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A BEVEL WASHER.
_3_BOLT_DRILLTHRU.GRS Download: Source File
 ABSTRACT: THIS ROUTINE CREATES A DRILL THROUGH.
_3_BOLT_FLATWASH.GRS Download: Source File
 ABSTRACT: THIS ROUTINE CREATES A FLAT WASHER.
_3_BOLT_FLHDTAP.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A FLAT HEAD TAP BOLT.
_3_BOLT_FLHDTHRU.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A FLAT HEAD THRU BOLT.
_3_BOLT_HEXHEAD.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A HEX HEAD BOLT.
_3_BOLT_HEXNUT.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A HEX FLANGE NUT.
_3_BOLT_HXFLGNUT.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A HEX FLANGE NUT.
_3_BOLT_HXJMNUT.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A HEX JAM NUT.
_3_BOLT_HXWASHHD.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A HEX WASHER HEAD.
_3_BOLT_LOCKWASH.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A LOCK WASHER.
_3_BOLT_PANHEAD.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A PAN HEAD BOLT.
_3_BOLT_ROUNDHEAD.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A ROUND HEAD BOLT.
_3_BOLT_SOCKETHD.GRS Download: Source File
 ABSTRACT: THIS ROUTINE DRAWS A SOCKET HEAD.
_3_BOLT_TAPPED.GRS Download: Source File
 ABSTRACT: THIS ROUTINE MAKES A TAP HEAD BOLT.

A

_ADDLEADER.GRS Download: Source File

_ADDLEADER2.GRS Download: Source File

_ADDWELD.GRS Download: Source File

_ADDWELD2.GRS Download: Source File

_AIDS1.GRS Download: Source File
 ABSTRACT: THIS IS A PROGRAM TO CREATE A SINGLE LINE DIMENSION
           (KEYED IN)
_AIDS2.GRS Download: Source File
 ABSTRACT: THIS IS A PROGRAM TO CREATE AN XY LABEL WITH RESPECT TO A
           SELECTED POINT
_ALLRND.GRS Download: Source File
      ADD ALL AROUND TO BASIC WELD SYMBOL
_ALLRND2.GRS Download: Source File
   ADD ALL AROUND TO BASIC WELD SYMBOL
_AROW.GRS Download: Source File
     THIS SUBPROGRAM GENERATES AN ARROW ON THE
     END OF A LINE.
_AROW2.GRS Download: Source File
   THIS SUBPROGRAM GENERATES AN ARROW ON THE
   END OF A LINE.
_ARO_SUB.GRS Download: Source File


B

_BANDIT1.GRS Download: Source File
 ABSTRACT: THIS SUBPROGRAM LOOKS FOR CHANGES IN THE CUTTER AND GIVES
           THE OPTION TO MILL OR DRILL
_BANDIT2.GRS Download: Source File

_BEVEL.GRS Download: Source File

_BEVEL2.GRS Download: Source File

_BOLT_ACORN_NUT.GRS Download: Source File

_BOLT_BEVEL_WASHER.GRS Download: Source File

_BOLT_COLOR.GRS Download: Source File

_BOLT_DATA_BOLT.GRS Download: Source File

_BOLT_DATA_BOLT_TEXT.GRS Download: Source File

_BOLT_DRILL_THRU.GRS Download: Source File

_BOLT_FLAT_WASHER.GRS Download: Source File

_BOLT_FL_HD_DR_THRU.GRS Download: Source File

_BOLT_FL_HD_TAP.GRS Download: Source File

_BOLT_HEX_FLANGE_NUT.GRS Download: Source File

_BOLT_HEX_HEAD.GRS Download: Source File

_BOLT_HEX_JAM_NUT.GRS Download: Source File

_BOLT_HEX_NUT.GRS Download: Source File

_BOLT_HEX_WASHER_HEAD.GRS Download: Source File

_BOLT_LOCK_WASHER.GRS Download: Source File

_BOLT_PAN_HEAD.GRS Download: Source File

_BOLT_ROUND_HEAD.GRS Download: Source File

_BOLT_SOCKET_HEAD.GRS Download: Source File

_BOLT_TAPPED.GRS Download: Source File

_BOM_SR01.GRS Download: Source File

_BOM_SR02.GRS Download: Source File

_BOM_SR03.GRS Download: Source File

_BRAZE.GRS Download: Source File

_BRAZE2.GRS Download: Source File

_BUTT.GRS Download: Source File

_BUTT2.GRS Download: Source File


C

_CALC_FT.GRS Download: Source File
 ABSTRACT: A SUBPROGRAM TO STR-FT-IN IN .VERFT TO CALCULATE FT, IN AND
           A FRACTION FROM A DECIMAL VALUE IN INCHES.
_CALC_ROW.GRS Download: Source File
   THIS SUBROUTINE CALCULATES THE ROW NUMBER FOR A
   PARTICULAR NUMBER.
_CHANGE_CASE.GRS Download: Source File
    Purpose: Change the case of a text string to upper or lower case.
    See Also: _LCASE.GRS
              _UCASE.GRS
_CHECK_CSYS.GRS Download: Source File
   THIS SUBROUTINE CHECKS THE COORDINATE SYSTEM TO
   SEE IF IT IS SET TO ABSOLUTE AND UNLINKED FROM VIEW.
_CHGSIZ.GRS Download: Source File

_CHGSIZ2.GRS Download: Source File

_CHOOSE_COLOR.GRS Download: Source File
   THIS SUBROUTINE PRESENTS A MENU OF COLORS, ASKING THE USER
   WHICH ONE THEY WANT. IT DISPLAYS THE "]" BY THE CURRENT
   SETTING, SO ENTRY COMPLETE WILL ACCEPT THAT COLOR.

   WHEN #15 IS THE DEFAULT, THE MENU WILL LIST 2-15 AND USE
   AA FOR COLOR #1.
_COMPRESS_STRING.GRS Download: Source File
   Purpose: Strip all spaces from a input string
   See also: _STRING_COMPRESS.GRS
_CONTUR.GRS Download: Source File

_CONTUR2.GRS Download: Source File

_CONVERT_BS.GRS Download: Source File
   THIS SUBROUTINE CONVERTS A  B-SPLINE TO A REGULAR SPLINE
   FOR USE WITH THE SPLINE MERGE ROUTINE.

   IT CREATES A SERIES OF POINTS ON THE B-SPLINE AT
   RESPECTIVE DISTANCES (LESS THAN OR EQUAL TO THE PNTDST
   PARAMETER).

   A SERIES OF LINES ARE CREATED AT THESE POINTS,
   TANGENT TO THE B-SPLINE, AND THESE LINES ARE USED
   TO DETERMINE TANGENTS (THIS IS MUCH MORE ACCURATE
   THAN THE CTANF FUNCTION)

   THESE TANGENTS AND THE POINTS ARE USED TO CREATE A
   SPLINE VERY CLOSE (.00001) TO THE ORIGINAL
   B-SPLINE. THE NEW SPLINE IS PUT IN NEWSPL, AND,
   IF THE PROCESS IS SUCCESSFUL, SRESP IS SET TO 3.
_CONVERT_BSPLINE.GRS Download: Source File
   THIS SUBROUTINE CONVERTS A  B-SPLINE TO A REGULAR SPLINE
   FOR USE WITH THE SPLINE MERGE ROUTINE.

   IT CREATES A SERIES OF POINTS ON THE B-SPLINE AT
   RESPECTIVE DISTANCES (LESS THAN OR EQUAL TO THE PNTDST
   PARAMETER).

   A SERIES OF LINES ARE CREATED AT THESE POINTS,
   TANGENT TO THE B-SPLINE, AND THESE LINES ARE USED
   TO DETERMINE TANGENTS (THIS IS MUCH MORE ACCURATE
   THAN THE CTANF FUNCTION)

   THESE TANGENTS AND THE POINTS ARE USED TO CREATE A
   SPLINE VERY CLOSE (.00001) TO THE ORIGINAL
   B-SPLINE. THE NEW SPLINE IS PUT IN NEWSPL, AND,
   IF THE PROCESS IS SUCCESSFUL, SRESP IS SET TO 3.
_CONVERT_DATE_TIME_STAMP.GRS Download: Source File
   THIS ROUTINE TAKE A DATE/TIME STRING (IN SEVERAL FORMATS)
   AND CONVERTS IN TO A TIME STAMP (YYYMMDDYYMNSS)

   ACCEPTABLE DATE FORMATS:
     MM/DD/YY, MM/DD/YYYY, MM--DD--YY, MM--DD-YYYY,
       DD-MMM-YY, DD-MMM-YYYY, YYMMDD,YYYYMMDD
   ACCEPTABLE TIME FORMATS:
     HH:MM, HH:MM:SS, HHMM, HHMMSS

   THE RETURNED STRING IS 14 CHACTERS LONG, YYYYMMDDHHMNSS.

   ONLY GROSS VALIDITY CHECKS ARE USED, SO 32-JAG-93 WILL
   ERROR, BUT NOT 31-FEB-11
_CONVERT_DATE_TIME_STRING.GRS Download: Source File
   THIS ROUTINE TAKES A TIME STAMP (YYYMMDDHHMNSS), AND
   CONVERTS IT TO A DATE/TIME STRING (IN SEVERAL FORMATS)
_COPLANAR_SPLINE.GRS Download: Source File
   THIS SUBROUTINE CHECKS A SPLINE TO SEE IF ALL KNOT POINTS ARE
   COPLANAR.

   IT USES VECTORS TO DETERMINE IF THE SPLINE IS CO-LINEAR. IF
   IT IS NOT, A COORDINATE SYSTEM IS CREATED USING THREE NON-
   COLINEAR POINTS, AND CHECK THE REMAINING POINTS FOR
   DEVIATION FROM THE PLANE FORMED BY THESE POINTS.
_COPY_ATTRIB.GRS Download: Source File
   THIS SUBROUTINE COPIES THE ATTRIBUTES FOUND ON
   THE SOURCE ENTITY OVER TO THE DESTINATION ENTITY.

   IT DOES NOT CHECK THE DESTINATION ENTITY FOR
   EXISTING ATTRIBUTES.
_COUNTER.GRS Download: Source File
   SUB PROGRAM TO TAPS-3D     COUNTER
   CALLS  SET-WCS ALSO AS A SUBPROGRAM
   FOR CLEARANCE HOLES    CFLAG=1
   FOR COUNTER BORE       CFLAG=2
   FOR COUNTERSINK        CFLAG=3
_CSYS_BY_ANGLES.GRS Download: Source File
   THIS SUBROUTINE CREATES A COORDINATE SYSTEM BASED
   ON A CENTER POINT AND TWO ANGLES.

   IT USES DIRECTION COSINES TO CONVERT THE GIVEN ANGLES
   INTO LINES AT THOSE ANGLES, THEN CREATES A COORDINATE
   SYSTEM AT THIS ANGLE.

D

_DATE_TIME_STAMP.GRS Download: Source File
   THIS ROUTINE OUTPUTS A DATE/TIME STAMP IN THE FORM:
   YYYYMMDDHHMMSS. IF THE YEAR IS 69-99, THE PREFIX
   19 WILL BE ADDED, OTHERWISE 20 IS ADDED.

   THIS STAMP CAN BE SORTED, AND CONVERTED TO/FROM
   PRESENT DATES VERY EASILY.

   THIS FORMAT MATCHES THE FORMAT USED BY THE PC LOGGER
   ROUTINE.

   THE RETURNED STRING IS 14 CHACTERS LONG
_DATE_TIME_STR.GRS Download: Source File
   OUTPUT THE DATE AND TIME IN A STRING:
   DD-MMM-YYYY HH:MM:SS
   (EG: 23-MAR-1961 12:58:00)

   OUTPUT STRING IS 20 CHARACTERS LONG
_DATE_TO_COMP.GRS Download: Source File
   THIS SUBROUTINE CONVERTS A CONVENTIONAL DATE STRING TO
   A COMPUTATIONAL DATE INTEGER. SIMILAR TO UF3611  EXCEPT ZERO
   DAY IS DECEMBER 31, 1899. TO USE WITH MCAUTO COMPUTATIONAL DATE,
   SUBTRACT 25564 FROM VALUE BEFORE CALLING THIS ROUTINE OR CALL
   UF3611A WHICH DOES THIS FOR YOU.
_DATE_TO_CONV.GRS Download: Source File
   THIS SUBROUTINE CONVERTS A COMPUTATIONAL DATE TO A DATE STRING
   FUNCTIONAL OPERATION SIMILAR TO UF3611.OB, EXCEPT ZERO DAY
   IS DECEMBER 31, 1899. TO USE WITH MCAUTO COMPUTATIONAL DATE,
   ADD 25564 TO VALUE BEFORE CALLING THIS ROUTINE OR CALL
   UF3610A.OB WHICH DOES THIS FOR YOU.

   DFORMAT VALUE  FORMAT
       1          MM/DD/YYYY   (03/23/1961)
       2          MM--DD--YYYY (03--23--1961)
       3          DD-MMM-YYYY  (23-MAR-1961)
       4          MM/DD/YYYY   (03/23/1961)
       5          MM--DD--YY   (03--23--61)
       6          DD-MMM-YY    (23-MAR-61)
       7          MMM DD YY    (MAR 23 61)
       8          YYMMDD       (610323)
       9          YYYYMMDD     (19610323)
_DECODE_COMMENT.GRS Download: Source File
  This subroutine interpets comments from a text file and
  assigns attributes according to "commands" in the file.

  This file could be expanded to include other commands,
  such as color & layer control.

  These commands can be:
  ;PART_ATTRIB:[title]=[value]  (Assigns the attribute to the part)
  ;GROUP_ATTRIB:[title]=[value] (Assigns the attribute to the group entity)
  ;ENT_ATTRIB:[title]=[value]   (Assigns the attribute to the memeber entity)

   STRX   - Input string, containing comments.
   GRP    - Group to assign attributes TO
   ENT    - Entity to assign the attributes TO
   SRESP  - Subroutine Response.
            1 - No command found,
            2 - Command found, but invalid
            3 - Command found, and processed without error
_DECODE_TOOL_PATH.GRS Download: Source File
   THIS ROUTINE READS TOOL PATH STATEMENT, EXTRACTING
   VARIOUS FIELD VALUES. IT PROCESSES MILL & DRILL PATHS
   COMPLETELY. LATHE TOOL PATHS RETURN ONLY TOOL, OPERATION TYPE
   AND PATH NAME.

   VARIABLE USAGE:
     TLPATH - STRING CONTAINING TOOL PATH/ STATEMENT:
     TLDATA - STRING CONTAINING TLDATA/ STATEMENT (V10 ONLY)
     TOOLNM - TOOL NAME STRING
     TNUM   - TOOL NUMBER VALUE (STRING, "T" REMOVED & CONVERTED TO #)
              (THIS VALUE IS NULL FOR V10 TOOL PATH DECODES!)
     OPTYPE - OPERATION TYPE
     TLDESC - TOOL DESCRIPTION, BUILT UP FROM PARAMETERS IN TOOL DATA
     PATHNM - TOOL PATH NAME
     DIAGLV - DIAGNOSTIC CONTROL LEVEL (0= NO DIAGNOSTICS)

     ERRMSG - STRING DESCRIBING ANY ERROR CONDITIONS
     SRESP  - SUBROUTINE RESPONSE: 1-REJECT (IGNORING LATHE DATA,
              2-TERM - NOT A TOOL PATH OR UNKNOW OPERATION,
              3-SUCCESSFULLY DECODED (MILL OR DRILL))
_DELETE_BLANKED.GRS Download: Source File
   THIS ROUTINE DELETES ALL BLANKED LAYERS ON THE SELECTABLE
   LAYERS.  WHEN IT FINISHES, IT DISPLAYS COUNTS OF ENTITIES
   DELETED AS WELL AS ENTITIES JUST EXAMINED.
_DELETE_NAME.GRS Download: Source File
   THIS SUBROUTINE DELETE ENTITIES BY NAME.

   IT CAN DELETE A RANGE OF VALUES (IF START & END []0) OR A
   SINGLE ENTITY (OR GROUP).

   IT RETURNS THE DELETION STATUS IN "SRESP":
     1 - NOTHING DELETED
     2 - PARTIAL DELETE (USED FOR RANGE ONLY)
     3 - DELETED FULL RANGE
_DEL_LAYER_255.GRS Download: Source File
   THIS SUBROUTINE DELETES ALL ENTITIES ON LAYER 255.

   IT MAKES LAYER 255 SELECTABLE, DOES AN
   ENTITY CYCLING OPERATION, AND DELETES ENTITIES
   FOUND ON LAYER 255.

   DELCNT - NUMBER OF DELETED ENTITIES (ON LAYER 255)
   SRESP  - SUBROUTINE RESPONSE - SET TO 3 FOR SUCCESS.
            (THIS ROUTINE CANNOT FAIL, SO SRESP ALWAYS
            EQUALS 3)
_DENOM.GRS Download: Source File
  THIS PROGRAM CALCULATES THE SMALLEST POWER OF TWO
  DENOMINATOR FOR USE WITH DIMENSIONING.

  INVAL   -- INPUT DECIMAL TO BE CONVERTED

  TEMPNR  -- NUMERATOR (SET TO ZERO IF INVAL
             IS WHOLE NUMBER)

  DENNTR  -- DENOMINATOR (A POWER OF TWO,2,4,8,16...)

  NOTE: INTERMEDIATE VALUES MUST BE USED (TEMPNR, TEMPDN)
        BECAUSE DUMMY VALUES USED IN CALL STATEMENT WILL
        'ZERO OUT' IF ASSIGNED FROM ANOTHER DUMMY VARIABLE.
_DIGIT_GRID.GRS Download: Source File
  THIS SUBROUTINE PERFORMS THE SAME 'GRID' OPERATION AS THE 'GRID
  POINTS' OPTION IN SYSTEM PARAMETERS. THIS PROGRAM IS USED FOR
  READING DATA FROM A DEVICE THAT IS NOT RECOGNIZED BY UNIGRAPHICS
  AS A POSITION INDICATOR. (INPUT COORDINATES ARE FORCED TO THE
  NEAREST GRID POINT.)
_DOGLEG.GRS Download: Source File

_DOGLEG2.GRS Download: Source File

_DRILL_HOLE.GRS Download: Source File


E

_EDIT_POINT.GRS Download: Source File
   THIS SUBROUTINE EDITS THE LOCATION OF A POINT USING
   X,Y,Z WORK COORDINATES.
_ENT_TALLY.GRS Download: Source File
   THIS SUBROUTINE INPUTS ALL THE INFORMATION NEEDED TO TALLY UP
   THE ENTITIES ON A PART. IT THEN CALLS _ENT_TALLY2.GRS TO DO
   THE ACTUAL COUNTING.
_ENT_TALLY2.GRS Download: Source File
   THIS ROUTINE TALLIES UP THE ENTITIES ON A GIVEN PART, AS CONTROLLED
   BY THE SUBROUTINE PARAMETERS.
_EXTENSION.GRS Download: Source File
   This routine adds the .prt extension to supplied filenames.
   If the file already has the correct extension, it is not changed.
_EXTRACT_TEXT_FROM_NOTES.GRS Download: Source File
   THIS PROGRAM EXTRACTS TEXT FROM ENTITIES, THEN SORTS
   THEM IN ORDER LEFT TO RIGHT, TOP TO BOTTOM, ETC

   IT THEN PLACES THE TEXT IN A TEXT FILE AND RETURNS.

F

_FACTORS.GRS Download: Source File
   THIS PROGRAM FINDS THE GREATEST COMMON FACTOR
   AND LEAST COMMON MULTIPLE OF TWO NUMBERS SUPPLIED.
   THE TWO NUMBERS, N1,N2, MUST BE POSITIVE INTEGERS
   LESS THEN 541. IF EITHER FACTOR IS OUTSIDE THIS
   RANGE, THE PROGRAM RETURNS 0 AND 0 AS FACTORS.
_FIELD.GRS Download: Source File
      ADD FIELD WELD TO BASIC WELD SYMBOL
_FIELD2.GRS Download: Source File
   ADD FIELD WELD TO BASIC WELD SYMBOL
_FILET.GRS Download: Source File

_FILET2.GRS Download: Source File

_FILE_CHECK.GRS Download: Source File
   This subroutine checks for the existance of a file and
   displays an appropriate message:
_FILLISTER_HEAD.GRS Download: Source File

_FLAR_BEV2.GRS Download: Source File

_FLAR_V.GRS Download: Source File
   THIS SUBPROGRAM GENERATES THE LEADER
   ORIGIN FOR A WELD SYMBOL
_FLATTEN_SPLINE.GRS Download: Source File
   THIS SUBROUTINE "FLATTENS" A SPLINE, MAKING ALL Z-VALUES ZERO.

   THIS ROUTINE WAS WRITTEN TO COMPENSATE FOR A BUG
   IN V9.0 THAT CAUSES THE CREATION OF NON-PLANAR CURVES
   WHEN PROJECTING LINES ALONG A VECTOR ONTO A SURFACE.

   SPLIN1 - THE ORIGINAL SPLINE (TO BE FLATTENED)
   SPLIN2 - A SPLINE CREATED WITH THE DATA FROM SPLIN1,
            EXCEPT THAT THE Z VALUES FOR THE POINTS (AND
            TANGENTS) SET TO ZERO.
   MAXDEV - MAXIMUM DEVIATION FROM (Z=0) PLANE
   DIAGLV - DIAGNOSTICS LEVEL (IF ]0, DISPLAY DIAG DATA)
   SRESP  - SUBROUTINE RESPONSE (3=SUCCESS, 5=ABORT)
_FLAT_HEAD.GRS Download: Source File

_FNDSTRLST.GRS Download: Source File
 ABSTRACT: parse a string labeled 'src' against
           list of delimiters in a string. If a
	     match is found, "return" the position in
	     number format, and the delimeter matched
           This is similar to FNDSTR except this
           function uses a list of delimeters,			
_FTERM_ALL.GRS Download: Source File
   This routine closes all open text files.
   If diagnostics are enabled, it displays information
   about the file before it closes it.

   Diagnostic Levels:
     ]=1 - List open files as they are closed
     ]=5 - List status of all files.
_FTP.GRS Download: Source File
   THIS SUBROUTINE INVOKES THE FTP PROCESS, USING THE
   HOST, USERNAME & PASSWORK PROVIDED, AND THEN
   EXCUTES THE COMMANDS GIVEN IN THE SCRATCH FILE.

     SCRFIL - NUMBER OF SCRATCH FILE CONTAINING FTP COMMANDS
     HOSTNM - HOST NAME OF REMOTE MACHINE
     USERNM - LOGON USERNAME FOR REMOTE MACHINE
     PASSWD - PASSWORD FOR REMOTE MACHINE (CAN BE NULL FOR PC'S)
     DIAGLV - DIAGNOSTIC LEVEL (0=SUPPRESS MESSAGES)
     SRESP  - SUBROUTINE RESPONSE (3-ENTRY COMPLETE, SUCCESS, 2=FAIL)

   NOTE: AFTER SUCCESSFUL COMPLETION, THE SCRATCH FILE IS TERMINATED.
_F_MOLD_10.GRS Download: Source File

_F_MOLD_11.GRS Download: Source File

_F_MOLD_13.GRS Download: Source File

_F_MOLD_14.GRS Download: Source File

_F_MOLD_15.GRS Download: Source File

_F_MOLD_16.GRS Download: Source File

_F_MOLD_17.GRS Download: Source File

_F_MOLD_19.GRS Download: Source File

_F_MOLD_23.GRS Download: Source File

_F_MOLD_7.GRS Download: Source File

_F_MOLD_9.GRS Download: Source File

_F_MOLD_APLAN.GRS Download: Source File

_F_MOLD_BPLAN.GRS Download: Source File
  This program constructs a "B" plan view of the mold base
  (looking from the top of the "B" plate downward).
  All geometry created is 2-D.
_F_MOLD_END.GRS Download: Source File

_F_MOLD_ENDA.GRS Download: Source File

_F_MOLD_ENDB.GRS Download: Source File

_F_MOLD_INITDATA.GRS Download: Source File
   This subprogram is used to build the mold base parameter
   file for a particular job.
_F_MOLD_INTCK.GRS Download: Source File

_F_MOLD_LEADER.GRS Download: Source File

_F_MOLD_LOCRG.GRS Download: Source File

_F_MOLD_READDATA.GRS Download: Source File

_F_MOLD_READSRC.GRS Download: Source File

_F_MOLD_RPIN.GRS Download: Source File

_F_MOLD_SCREW1.GRS Download: Source File

_F_MOLD_SCREW2.GRS Download: Source File

_F_MOLD_SCREW3.GRS Download: Source File

_F_MOLD_SIDE.GRS Download: Source File

_F_MOLD_SIDEA.GRS Download: Source File

_F_MOLD_SIDEB.GRS Download: Source File

_F_MOLD_SPRPIN.GRS Download: Source File

_F_MOLD_SPRUE.GRS Download: Source File


G

_GETHELP.GRS Download: Source File
   This subroutine will get the text for help on any grip routine.
   The help files should be located in one of the following
   locations:

      UGFM                    Native
      --------------------    --------------------
      Current directory       Current directory
      @UGFMDISK:GRIP          GRIP:

   The file should end with a file extension of .GRH (GRip Help).
   These files are merely text files which contain a description of
   the calling program.
_GET_CHAIN_VECTORS.GRS Download: Source File
   THIS SUBROUTINE LOOKS AT TWO CURVES AND DETERMINES
   WHICH END-POINTS ARE CLOSER, CALCULATES VECTORS FOR EACH OF
   THIS ENTITIES, AND WHETHER OR NOW THEY NEED TO BE REVERSED.
_GET_CLS_PATH_NAMES.GRS Download: Source File
   THIS ROUTINE EXTRACTS PATH NAMES FROM AN ACTIVE CLS FILE:

   CLSFIL IS THE SCRATCH FILE CONTAINING THE CLS SOURCE FILE
   SCRFIL IS THE SCRATCH FILE TO HOLD PATH NAMES
   PTHCNT IS THE COUNT OF THE PATHS FOUND.

   NOTE: TO SORT THE PATH NAMES IN A LOGICAL ORDER,
         CALL _SMART_SORT IMMEDIATELY AFTER THIS ROUTINE
_GET_DATE_TIME_STRING.GRS Download: Source File
   THIS ROUTINE READS IN A DATE, AND, OPTIONALLY A TIME STRING
   THEN CONVERTS THEM TO A TIME STAMP FORMAT, AND A STANDARD
   DD-MMM-YY HH:MM:SS STRING.

   IF A DIFFERENT FORMAT IS DESIRED, THE OUTPUT STRING(S) CAN
   BE EDITTED, OR _FM_FORMAT_DR_STRING CAN BE CALLED OUTSIDE OF
   THIS ROUTINE.

   TYPICALLY, THE DTSTR WILL BE USED IN A MENU OR PRINT-OUT,
   WHILE DTSTMP IS USED TO DO ACTUAL COMPARISONS.

   IF NO VALUE IS ASSIGNED TO THE DTSTR VARIABLE, IT DEFAULTS
   TO TODAY'S RATE.
_GET_DIR_LIST2.GRS Download: Source File
   THIS SUBROUTINE READS IN A DIRECTORY LISTING, SELECTING
   FILES BY TYPE & TEMPLATE.

   SCRFIL - SCRATCH FILE NUMBER TO BE USED FOR STORING THE
            DIRECTORY INFORMATION.
   DNAMEX - DIRECTORY NAME TO START SCANNING
   DIRSW  - SWITCH CONTROLS DIRECTORY NAME PROCESSING (&NO-IGNORE THEM)
   FILSW  - SWITCH CONTROLS FILE NAME PROCESSING (&NO-IGNORE FILES)
   TMPTS  - TEMPLATE STRING ARRAY (SEE _TEMPLATE_SETUP.GRS)
   TMPTN  - TEMPLATE NUMBER ARRAY (SEE       "            )
   SORTSW - SORT BY NAME SWITCH (&NO-DON'T SORT)
   FILCNT - COUNT OF FILES IN SCRATCH FILE
   SRESP  - SUBROUTINE RESPONSE (1-REJECT, 2-TERMINATE, 3-SUCCESS)
_GET_FILE_PATH.GRS Download: Source File
   THIS PROGRAM LOCATES FILES FOR USE WITH PROGRAMS IN THE GRIP
   INTERNATIONAL LIBRARY.
_GET_GRDIR.GRS Download: Source File
   THIS SUBROUTINE FINDS THE GRIP INTERNATIONAL LIBRARY
   STRUCTURE.

   It first checks for an environment variable called UGII_GRIPLIB. If
   that variable is not defined, then it uses UGII_BASE_DIR/griplib.

_GET_GRPATH.GRS Download: Source File
   THIS SUBROUTINE REFORMATS DIRECTORY PATHS FOR USE WITH
   DIFFERENT PLATFORMS. (INPUT IS EXPECTED AS IF UNIX OR NT WAS
   BEING USED).
_GET_NAMED_GROUP.GRS Download: Source File
   THIS SUBROUTINE LOCATES A GROUP BY NAME, AND CHECKS THE
   GROUP ENTITY COUNT AGAINST SEVERAL LIMITS.

   NAMEX - STRING CONTAINING NAME OF GROUP TO GET
   NIND  - NAME INDEX (1=GET FIRST ENTITY OF NAMEX)
   GCNT1 - IF 0, THIS ROUTINE RETURNS WITH A SRESP=1
             IF THE GROUP WAS NOT FOUND.
           IF NEGATIVE, ANY NUMBER OF ENTITIES UP TO
             THE ABSOLUTE VALUE WAS ACCEPTABLE
           IF POSITIVE, THE NUMBER OF ENTITIES IN THE
             GROUP MUST MATCH THE VALUE OF GCNT1
   GCNT2 - NUMBER OF ENTITIES IN GROUP (1RST LEVEL ONLY)
   SRESP - SUBROUTINE RESPONSE (3=SUCCESS, 5=ABORT)
_GET_OPER_NAMES.GRS Download: Source File
   THIS SUBROUTINE READS OPERATION NAMES INTO A SCRATCH FILE
   AND RETURNS WITH A COUNT OF OPERATION NAMES WRITTEN INTO
   THE SCRATCH FILE. (COLUMNS 1-30 ARE THE OPERATION NAME,
   COLUMN 31 IS A COMMA, AND 32 TO 131 ARE A "SORT FIELD",
   USED TO DETERMINE THE ORDER OF THE PATHS).

   NOTE: TO SORT THE OPERATION NAMES IN A LOGICAL ORDER,
         CALL _SMART_SORT IMMEDIATELY AFTER CALLING THIS ROUTINE.
_GET_PLATFORM_TYPE.GRS Download: Source File
   THIS SUBROUTINE DETERMINES THE PLATFORM TYPE BY NAME, AND
   ALSO RETURNS A PAIR OF NUMBERS RELATING TO THE PLATFORM.
   (FOR FUTURE USE WITH GRIP INTERNATIONAL LIBRARY, TO AUTOMATICALLY
   ADJUST LIBRARIAN.GRS OPERATION TO CURRENT PLATFORM).
_GET_SHEET_BODY_EDGES.GRS Download: Source File
   THIS ROUTINE EXTRACTS THE SOLID BODY EDGES FROM A SHEET BODY.

 THE FIRST STEP IN PROCESSING THE SHEET BODY EDGES IS TO GET THE
 EDGES CLEANED UP. WHEN THEY ARE RETURNED BY GRIP, THEY MAY NOT BE
 IN ORDER, AND EACH EDGE CAN BE BROKEN INTO SEVERAL DIFFERENT SHAPES.

 WE HAVE TO SORT THEM OUT, MERGE CONTINUOUS EDGES TOGETHER & RETURN
 A SET OF CURVES TO THE CALLING ROUTINE.

 WE START WITH THE FIRST CURVE, AND LOOK FOR THE NEXT CURVE.
   THE CURVE THAT HAS EITHER ENDPOINT CLOSEST TO THE CURRENT CURVE
   IS THE NEXT CURVE. IF THE START POINT IS CLOSEST, IT IS
   CONSIDERED TO HAVE A "NORMAL" ORIENTATION. IF THE END POINT
   IS CLOSER, THE CURVE IS "REVERSED". WE THEN MAKE THIS NEXT
   CURVE THE CURRENT CURVE, AND GO LOOKING AGAIN.

 BY KEEPING TRACK OF THE NORMAL/REVERSED STATUS, WE CAN COMPARE
 TANGENCIES. FOR NORMAL CURVES, WE JUST COMPARE THE TANGENT AT
 THE END OF THE FIRST CURVE WITH THE TANGENT AT THE START OF THE
 SECOND CURVE. IF THE CURVES WERE REVERSED, WE'D USE THE REVERSE
 OF THE TANGENT AT THE START POINT OF THE FIRST CURVE AND COMPARE IT
 WITH THE REVERSE OF THE TANGENT AT THE END POINT OF THE SECOND
 CURVE. IF EITHER ONE IS REVERSE BUT NOT BOTH, WE JUST REVERSE THE
 SENSE OF THAT ONE CURVE.

 TO PREVENT THE PROGRAM FROM LOOPING WHEN IT ENCOUNTERS A LOOP,
 WE USE A FINITE DO/ LOOP AND BLANK EACH CURVE AS WE WORK OUR
 WAY AROUND THE LOOP.

 TO KEEP TRACK OF THE CURVES "ON THE FLY", WE PUT THE SUBSCRIPT
 OF THE CURVES INTO A SEQUENCE NUMBER ARRAY. THE FIRST ELEMENT
 OF THE ARRAY CONTAINS THE SUBSCRIPT OF THE FIRST CURVE, THE
 SECOND CONTAINS THE NEXT.

 WHEN THE PROGRAM HAS A LIST OF CONTIGUOUS CURVES, IT CREATES
 AN SPLINE APPROXIMATING THESE CURVES.
_GET_SLOPE.GRS Download: Source File
    THIS ROUTINE ALLOWS SLOPE SELECTION IN THE FIVE
    OPTIONS USED FOR SPLINE CREATION

    SLOPEM  - VALUE CORRESPONDING TO THE SLOPE METHOD CHOSEN
              BEFORE, SET TO THE VALUE SELECTED AFTER CHOOSE

    XYZVCT  - UNIT VECTOR POINTING IN DIRECTION OF SLOPE.

    CURPNT  - CURRENT POINT (USED FOR DIRECTION POINT CALCULATIONS)

    SRESP   - SUBROUTINE RESPONSE, SAME AS PARAMETER STATEMENT'S
              RESP (1=REJECT, 2=TERM, 3=SLOPE ENTERED)
_GET_SURF_UV.GRS Download: Source File
   THIS SUBROUTINE DETERMINES WHICH SURFACE A POINT LIES ON.
   IT RETURNS THE U & V VALUES AT THIS POINT AND THE SURFACE ID.

   IT STARTS WITH THE CURRENT SURFACE, (AS SET BY THE SURFACE
   ID), AND STARTS SEARCHING ONLY IF THE SUPPLIED X,Y,Z LIES
   OUTSIDE THE RANGE 0[=U[=1, 0[=V[=1 OR IS MORE THAN 1" AWAY
   FROM THE SURFACE. IT CHECKS EACH POINT FOR THESE CRITERIA
   AND STOPS WHEN IT FINDS A SURFACE WITHIN THESE PARAMETERS.

   IT RETURNS THE SURFACE ID AS WELL AS THE U,V VALUES.

   IF IT CAN'T FIND A SURFACE THAT CONTAINS THE POINT,
   SRESP IS SET TO 2.

   SURFS  - ARRAY OF 101 SURFACES
   SCNT   - COUNT OF SURFACES (UP TO 100)
   STOLER - SURFACE TOLERANCE (POINT HAS TO BE
            AT LEAST THIS CLOSE TO THE SURFACE
            TO BE CONSIDERED "ON" THE SURFACE).
   SID    - SURFACE ID (LOCATION OF SURFACE IN
            ARRAY THAT CONTAINS THE POINT)
            [THIS ID IS USED AS A STARTING POINT
            FOR SURFACE SEARCHING]
   N      - COORDINATES OF POINT USED TO ID THE
            SURFACE.
   U      - "U" PARAMETER OF POINT ON "FOUND" SURFACE
   V      - "V" PARAMETER OF POINT ON "FOUND" SURFACE
   SRESP  - SUBROUTINE RESPONSE: SET TO 2 IF NO SURFACE
            FOUND AND 3 IF A SURFACE IS FOUND.
_GET_UG_VERSION.GRS Download: Source File
   This routine gets the current version name and number from
   the current UG session.

   For values below 11.0, it uses multi-version support and $$
   switched code. For 11.0 and beyond, it uses the &UGVERS gpa
   and ENVVAR to read the values from the system.

   Values are returned as strings, UGVNAM, UGVNUM, each having
   a minimum length of 10.
_GET_UNIX_ENV.GRS Download: Source File
   THIS ROUTINE GETS A UNIX ENVIRONMENT VARABLE VIA AN
   XRUN COMMAND. IF YOU READING MORE THAN A FEW ENVIRONMENT
   VARIABLES, USE _GET_UNIX_ENV2.GRS
_GET_UNIX_ENV2.GRS Download: Source File
   THIS ROUTINE GETS A UNIX ENVIRONMENT VARABLE VIA AN
   XSPAWN COMMAND. THIS VERSION IS BETTER THAN _GET_UNIX_ENV.GRS
   WHEN SEVERAL ENVIROMENT VARIABLES ARE NEEDED.
_GM_DATE_STR.GRS Download: Source File
   THIS ROUTINE CONVERTS A UG DATE TO THE STANDARD GM DATE FORMAT:
   DD-MM-YY, WHERE MM IS THE TWO LETTER ABBREVIATION FOR THE DATE.
_GM_INTER_PROMPTS.GRS Download: Source File
 ABSTRACT:  Obtains user preferences for geo_mend program
_GM_SET_CLIPS.GRS Download: Source File
 ABSTRACT: Takes a plane entity from the user and executes the following
           steps:
           1: Creates a WCS with the X & Y axis on the specified plane
              by taking the plane vertex and normal and then randomizing
              a point to determine the X axis.  This is cool, because
              you cannot go directly from a plane to a WCS without
              randomizing a point.  This is necessary to set your work
              view normal to the plane selected by the user.
           2: Sets the work view to the newly created WCS and then sets
              the clipping planes to the plane tolerance value supplied
              by the user.  This is a cool technique for speeding up
              entity cycling.  If you only want to select entities on
              (or near) a specific plane, this is a very fast way to do it.
_GM_TRIM.GRS Download: Source File
 ABSTRACT:  Trims the entities that are within the designated tolerance
            of a plane whose end points lie within the designated value.
            Only trims lines and arcs at this point, but could be easily
            enhanced to handle b-curves and splines if needed.
_GRIPUSE.GRS Download: Source File
   This GRIP procedure will keep track of GRIP program usage by
   writing to a data file called GRIPUSE.DAT which is located in:

          UGFM                            Native
          --------------------            --------------------
          Current directory               Current Directory
          @UGFMDISK                       UGII$UTIL:
_GROUP_FIXER.GRS Download: Source File
   THIS IS THE "FRONT END" FOR THE GROUP FIXING OPTION OF
   "PART_DOCTOR". IT USES TWO CHOOSE MENUS TO SET THE VALUES
   OF "DISPSW" AND "FIXSW".
_GROUP_FIXER2.GRS Download: Source File
   THIS SUBROUTINE ANALYZES THE GROUP STRUCTURE ON A PART FILE
   FOR BAD CONSTRUCTION PRACTICES. THE PROGRAM THEN CAN DELETE
   MEMBERLESS GROUPS, UNGROUP GROUPS CROSSING LAYERS AND
   DESCRIBE ALL THIS DURING PROCESSING.
_GRUPER.GRS Download: Source File

_GRUPER2.GRS Download: Source File


H

_HEX_HEAD.GRS Download: Source File

_HEX_NUT.GRS Download: Source File

_HIGHLIGHT_ENT.GRS Download: Source File
   THIS SUBROUTINE "HIGHLIGHTS" A SELECTED ENTITY BY
   CHANGING IT'S COLOR AND/OR FONT TO SPECIFIED VALUES.

   AN EXAMPLE OF THIS CALL WOULD BE:
     CALL/'_HIGHLIGHT_ENT',PNTS(IND),&RED,&DASHED,&YES

   TO RESTORE THE SAME ENTITY TO IT'S ORIGINAL FONT & COLOR,
   CALL IT A SECOND TIME WITH A SWITCH OF &NO:
     CALL/'_HIGHLIGHT_ENT',PNTS(IND),0,0,&NO

   IT USES ATTRIBUTES "HL_COLOR", "HL_FONT" TO SAVE AND
   RESTORE THE ORIGINAL COLOR/FONT/DENSITY. IF THESE
   ATTRIBUTES ARE DELETED, THE RESTORE WILL DO NOTHING.

   IT DELETES THESE VALUES AFTER HIGHLIGHTING, AND PRESERVES
   THEM DURING A HIGHLIGHT. (THIS WILL "REMEMBER" THE
   ORIGINAL VALUES EVEN IF AN ENTITY IS HIGHLIGHTED TWICE).

   ENT    - ENTITY TO HIGHLIGHT
   HCOLOR - HIGHLIGHT COLOR (0=DON'T CHANGE COLOR)
   HFONT  - HIGHLIGHT FONT (0=DON'T CHANGE FONT)
   HLSW   - HIGHLIGHT SWITCH (&YES - HIGHLIGHT,
            &NO - UNHIGHLIGHT).
_HIGHLIGHT_GRP.GRS Download: Source File
   THIS SUBROUTINE "HIGHLIGHTS" A SELECTED GROUP BY
   CHANGING IT'S MEMBER'S COLORS AND/OR FONT TO SPECIFIED VALUES.

   AN EXAMPLE OF THIS CALL WOULD BE:
     CALL/'_HIGHLIGHT_GRP',GRP1,&RED,&DASHED,&YES

   TO RESTORE THE SAME ENTITY TO IT'S ORIGINAL FONT & COLOR,
   CALL IT A SECOND TIME WITH A SWITCH OF &NO:
     CALL/'_HIGHLIGHT_GRP',GRP1,0,0,&NO

   IT USES ATTRIBUTES "HL_COLOR", "HL_FONT" TO SAVE AND
   RESTORE THE ORIGINAL COLOR/FONT/DENSITY. IF THESE
   ATTRIBUTES ARE DELETED, THE RESTORE WILL DO NOTHING.

   IT DELETES THESE VALUES AFTER HIGHLIGHTING, AND PRESERVES
   THEM DURING A HIGHLIGHT. (THIS WILL "REMEMBER" THE
   ORIGINAL VALUES EVEN IF AN ENTITY IS HIGHLIGHTED MORE THAN
   ONCE.

   GRP    - ENTITY TO HIGHLIGHT
   HCOLOR - HIGHLIGHT COLOR (0=DON'T CHANGE COLOR)
   HFONT  - HIGHLIGHT FONT (0=DON'T CHANGE FONT)
   HLSW   - HIGHLIGHT SWITCH (&YES - HIGHLIGHT,
            &NO - UNHIGHLIGHT).
   SAVESW - SAVE THE COLORS & FONTS OF ALL ENTITIES.
            (IF SET TO &NO, THEN ONLY THE COLOR, FONT, ETC
            OF THE FIRST ENTITY IS SAVED).

   INTELLIGENT OPERATION:
     THE COLOR OF THE FIRST ENTITY IS SAVED AS AN ATTRIBUTE OF THE
     GROUP, AND CHECKED AGAINST ALL OTHER ENTITIES IN THE GROUP.
     IF ALL THE ENTITIES ARE THE SAME COLOR, & FONT, THEN
     SAVESW HAS NO EFFECT, AND THE ROUTINE RUNS FASTER.

     ON RESTORE, SAVESW IS IGNORED, AND ANY "LOCAL" ATTRIBUTES
     (ASSIGNED TO AN ENTITY WITHIN A GROUP) OVERRIDE THE
     GROUP ATTRIBUTES FOR THAT COLOR).
_HPTERM_HELP.GRS Download: Source File
   THIS SUBROUTINE DISPLAYS HELP INFORMATION IN AN HP TERM WINDOW.
   THE WINDOW WILL REMAIN AFTER THIS ROUTINE RETURNS, ALLOWING THE USER
   TO REFER TO THE WINDOW WHILE USING THE PROGRAM.

   THE PARAMETER THAT CONTAINS THE HELP DIRECTORY IS PTHLST(6)
_HTML_FIX.GRS Download: Source File
   THIS ROUTINE SUBSTITUTES HARMLESS CHARACTERS FOR CHARACTERS THAT
   WOULD ALTER THE OUTPUT OF NETSCAPE WHEN USED IN A WEB PAGE. THIS
   IS USED TO "CLEAN UP" TEXT FROM PROGRAM HEADERS BEFORE IT IS USED
   IN A WEB PAGE.

   CURRENTLY, THIS PROGRAM DOES ONLY TWO SUBSTITUTIONS:
   "[" =] "[" AND "]" =] "]", BUT FUTURE CHARACTERS MAY BE ADDED.

I

_INDENT_SOURCE_SU.GRS Download: Source File
   SUBROUTINE TO REFORMAT GRIP SOURCE FILES
   STRIPS OFF LEADING AND TRAILING BLANKS
_INTERSECT_POINT.GRS Download: Source File
 ABSTRACT: THIS SUBROUTINE FINDS THE INTERSECT COORDINATES OF TWO
           LINES

           INPUT DATA CONSISTS OF LINE END POINT COORDINATES - X1, Y1,
           X2, Y2.  THE INTERSECT COORDINATES - X1NT AND Y1NT ARE
           RETURNED.
_ISTRL2.GRS Download: Source File
   THIS ROUTINE FORMATS A NUMBER INTO AN INTEGER STRING, ADDING
   COMMAS TO MAKE IT MORE READABLE.
_ITEM_NO.GRS Download: Source File
   SUBROUTINE TO GRIP2.ITEM.NO.GRS

   THIS PROGRAM CREATES A BUBBLE CALL OUT FOR A MATERIAL LIST.

   USER IS PROMPTED TO SELECT A DETAIL FROM THE ASSEMBLY.  THE
   PROGRAM WILL THEN CHECK THE DETAIL TO SEE IF THE ATTRIBUTES
   VENDOR, STEEL, AND A NAME HAVE BEEN ASSIGNED TO THE DETAIL.
   IF NOT, THE PROGRAM SENDS A MESSAGE TO THE USER AND A CALL
   OUT IS NOT CREATED.  ONLY GROUPED DETAILS MAY BE SELECTED.

J

_JAE.GRS Download: Source File
   THIS SUBPROGRAM GENERATES THE LEADER
   ORIGIN FOR A WELD SYMBOL

L

_LAYER_MOVE_GRP.GRS Download: Source File
   THIS SUBROUTINE MOVES A MULTI-LEVEL GROUP (UP TO 20 LEVELS DEEP)
   TO A NEW LAYER.
_LCASE.GRS Download: Source File
   THIS SUBROUTINE CONVERTS A STRING TO ALL LOWERCASE.
   IT IS USED IN UNIX FILENAMES BEFORE USING WITH UNIX COMMANDS.
_LIST_1_FILE.GRS Download: Source File
   This routine lists a single filename in a column format.
   (The code was taken from the _LIST_CURRENT_DIRECTORY
   routine).
_LIST_CURRENT_DIRECTORY.GRS Download: Source File
   This routine displays the current directory listing.
_LIST_NENTS.GRS Download: Source File
   THIS SUBROUTINE ASKS WHAT NON-ENTITIES THE USER
   WANTS PRINTED OUT, VIA A CHOOSE MENU
_LIST_NON_ENTITIES.GRS Download: Source File
   THIS SUBROUTINE LISTS THE NON-ENTITY STRINGS FROM GRIP:
   SCRFIL IS 1 OR 2, TELLING THE SUBROUTINE WHICH SCRATCH
          CAN BE USED.
   SWS    IS AN NUMERIC ARRAY, CONTROLLING WHAT NON-ENTITIES
          ARE PRINTED OUT. (EACH VALUE IS &YES, OR &NO)
          1 - VIEWS
          2 - LAYOUTS
          3 - DRAWINGS
          4 - REF LIBS
          5 - OPERATIONS
          6 - PARAMETER SETS
          7 - TOOLS
          8 - CATEGORIES
   SRESP - SUBROUTINE RESPONSE, 1-REJECT, 2-TERM, 3-ENTRY COMPLETE
_LIST_VIS_LAYERS.GRS Download: Source File
   THIS SUBROUTINE LISTS THE LAYERS VISIBLE IN A VIEW IN A
   COMPRESSED FORMAT:

   X, X-X, X ...

   SCRFIL - OUTPUT SCRATCH FILE (0 - LIST DEVICE)
   VNAMEX - VIEW TO EXAMINE (0 - GLOBAL MASK)
_LJUSTIFY.GRS Download: Source File
   THIS ROUTINE LEFT-JUSTIFIES A STRING. COMBINED WITH _UCASE,
   THIS CAN BE USED TO MAKE STRING MATCHING EASIER.
_LOGGER.GRS Download: Source File
   This subroutine logs data to a specified log file.

   The standard log file format is:
   YYYYMMDDHHMMSS[userid] -[action]

     or, for multi-line log entries:

   YYYYMMDDHHMMSS[userid] a[action]
   YYYYMMDDHHMMSS[userid] b[action]

   The data to log must be 108 characters or less. Strings
   that exceed this limit will be truncated.

   The log directory is in PTHLST(5)

M

_MATRIX_TO_ROTATE_ANGLES.GRS Download: Source File
   This routine takes an array of direction consines and calculates
   the progressive X, Y, Z axis rotations required to get that matrix.
_MENU_FROM_FILE.GRS Download: Source File
   THIS ROUTINE RETRIEVES A SCRATCH FILE, USES IT AS A MENU OF
   CHOICES, LETS THE USER PICK ON AND RETURNS IT TO THE CALLING
   ROUTINE.

   THE FILE CONTAINING THE MENU TEXT MUST BE RESEQUENCED
   1,1 BEFORE THIS ROUTINE IS CALLED.
_MENU_SELECT.GRS Download: Source File
   THIS ROUTINE PRESENTS THE CONTENTS OF SCRATCH FILE
   AS MENU CHOICES, AND ASKS THE USER TO SELECT ONE.
   ALTERNATE ACTION IS USED TO DISPLAY THE NEXT MENU,
   REJECT TO DISPLAY THE PREVIOUS.

   NOTE: THE MENU FILE MUST BE RESEQUENCED 1,1 BEFORE
         THIS ROUTINE IS CALLED.
_MENU_SELECT2.GRS Download: Source File
   THIS ROUTINE PRESENTS THE CONTENTS OF SCRATCH FILE
   AS MENU CHOICES, AND ASKS THE USER TO SELECT ONE.
   ALTERNATE ACTION IS USED TO DISPLAY THE NEXT MENU,
   REJECT TO DISPLAY THE PREVIOUS.

   THE FILE CONTAINING THE MENU TEXT MUST BE RESEQUENCED
   1,1 BEFORE THIS ROUTINE IS CALLED.
_MM_MESSG.GRS Download: Source File
   THIS SUBROUTINE SENDS A SINGLE LINE MESSAGE TO
   THE SPECIFIED COORDINATES ON THE MESSAGE MONITOR
   THE MESSAGE STRING CAN BE UP TO 68 CHARACTERS
   LONG.  IF THE MESSAGE EXTENDS PAST THE EGDE OF THE
   SCREEN IT WILL WRAP AROUND TO THE NEXT LINE.

   CAUTION: SOME LINES ARE BLANKED OUT BY UG MENUS.
   AVOID USING ROWS 0, 1, AND 17 OR STARTING IN COLUMN 8.
_MODIFY.GRS Download: Source File

_MODIFY2.GRS Download: Source File

_MOVE_FILE.GRS Download: Source File
   This routine moves files using OS commands, compensating for
   variations in the OS commands:
_MPXT.GRS Download: Source File

 THIS ROUTINE DRAWS THE X-AXIS OF AN X/Y GRAPH. BEFORE DOING ANY
 ACTUAL DRAWING, IT DOES SEVERAL SPECIAL OPERATIONS ON THE
 DATA:
   THIS VERSION IS BASED ON AN ELAPSED TIME INTERVAL, AND WILL ROUND
   TO VALUES THAT GIVEN SPACING AS CLOSE TO, BUT NOT EXCEEDING 1"
   THESE VALUES ARE NUMBERS EASILY DIVIBLE INTO AN HOUR OR A DAY,
   DEPENDING ON THE SIZE OF THE INTERVAL.  IT IS MAINLY INTENDED AS
   A PERFORMANCE MONITOR OUTPUT ROUTINE, BUT COULD TRACK BLOOD
   PRESSURE OF A PERSON OVER TIME, OR MILAGE OF A CAR, ALONG WITH
   OTHER FACTORS, SUCH AS AMBIANT TEMPERATURE.  BUT, I DIGRESS.
   THE MAIN DIFFERENCES BETWEEN THIS ROUTINE AND THE Y-AXIS ROUTINE
   ARE: THE AXIS (X VS Y), THE ENDS OF THE RANGE ARE NOT MOVED IN
   THIS ROUTINE WHILE THEY CAN BE CHANGED IN THE Y ROUTINE, AND
   THIS ONE IS BASED ON A SPECIAL TIME STAMP CODING.

 TIME STAMP CODING WILL BE USING COMPUTATIONAL DATE/TIME CODES,
 WHERE THE INTEGER PART OF A VALUE IS THE COMPUTATIONAL DAY,
 AND THE FACTIONAL PART IS THE MINUTES PAST MIDNIGHT/1440.

 INPUT VARIABLES:
   XLL,YLL,XUR,YUR - DIAGONAL POINTS DEFINING THE GRAPH AREA.
   XMIN,XMAX       - START & END TIME/DATE CODES.
   XOFFST          - DATE OFFSET VALUE, SO XMIN[1 AND MATH
                     WORKS OUT.
   XTITLE          - TITLE FOR X-AXIS
   XMODE           - SCALE CREATION MODE:
                      1 - BOTTOM SCALE ONLY.
                      2 - BOTTOM SCALE/TOP RULER
                      3 - BOTH BOTTOM/TOP SCALE
   SRESP           - IF SET TO "9", DIAGNOSTICS ENABLED

 OUTPUT VARIABLES:
   XMIN,YMIN       - MODIFIED START/END TIME STAMPS
                     (CURRENT DESIGN IS FOR XMIN & XMAX TO BY'
                     COPIED OVER)
   YLL,YUR         - MODIFIED Y LOCATIONS, NORMALLY USED FOR
                     "STACKING" VARIABLES, BUT WILL PROBABLY
                     NOT APPLY HERE.
   GRP             - GROUP OF FINISHED X-AXIS SCALE(S)
   SRESP           - SUBROUTINE RESPONSE VALUE, USING THE CODES:
                      1-REJECT, 2-TERMINATE, AND 3=ENTRY COMPLETE
_MPY.GRS Download: Source File
   THIS ROUTINE DRAWS THE Y-AXIS FOR A X/Y GRAPH.
   IT PERFORMS SEVERAL FUNCTIONS PRIOR TO ACTUALLY
   DRAWING THE GEOMETRY:

   AUTOMATIC SCALING TO FIT IN THE RANGE OF
   YLL TO YUR, AUTOMATIC CALCULATION OF A "NICE"
   ROUND INCREMENT VALUE FOR THE Y SCALE STEPS,
   AND RECALCULATION OF YMIN AND YMAX TO PRODUCE
   ROUND STARTING AND ENDING VALUES ON THE SCALE.
_MP_DELETE.GRS Download: Source File
   This routine deletes named groups to erase a graph before drawing a
   new one.
_MP_DIAG.GRS Download: Source File
   THIS ROUTINE DISPLAYS ALL THE VALUES CRITICAL TO THE MULTIPLOT
   FUNCTION. (MAINLY AS A DIAGNOSTIC ROUTINE, BUT ALSO CAN BE
   USED TO CHECK OUT A DATA FILE.

   SEE _MP_READ.GRS FOR AN EXPLANATION OF THE VARIABLES USED.
_MP_LEGEND.GRS Download: Source File
   THIS ROUTINE CREATES UNDER THE X-AXIS LABEL FOR THE MULTIPLOT PROGRAM.
_MP_MAX_MIN.GRS Download: Source File
   THIS ROUTINE PERFORMS PASS #1 ON THE READING OF THE DATA FILE.
   IN THIS ROUTINE, THE CODE DETERMINES THE MAX & MINIMUM OF ALL
   THE DATA POINTS ENTERED.

   DOWN IN THE ACTUAL READ ROUTINE, COLOR, FONT, DENSITY, MODE
   AND RANGE VALUES MAY BE SET.
_MP_PLOT.GRS Download: Source File
   THIS ROUTINE MAKES A SECOND PASS AT THE DATA FILE,
   THIS TIME CREATING POINTS AT THE DATA POINTS GIVEN.
   AFTER ALL THE DATA POINTS ARE CREATED (AND LOADED INTO
   GROUPS AS WE GO ALONG TO SAVE VARIABLE USAGE), THE
   PROGRAM CREATES SPLINES OR LINE SEGMENTS FROM THE
   RESULTING VALUES.
_MP_READ.GRS Download: Source File
   THIS ROUTINE READS IN DATA FROM A DATA FILE, INCLUDING
   PROGRAM/CONTROL INFORMATION AND THE ACTUAL DATA VALUES:

 VARIABLES (INPUT/OUTPUT):
   PNTCNT - NUMBER OF POINTS READ IN SO FAR (INCREMENTED
            AFTER EACH BLOCK OF DATA READ IN)
   VARCNT - NUMBER OF DEPENDENT VARIABLES, MAX IS 20
            (SET BY FIRST LINE OF DATA)
   YCOLOR - COLOR OF POINTS/LINES/SPLINES
            (SET BY DIRECTIVE COLOR(x)=&BLUE/&WHITE/etc)
   YFONT  - FONT OF POINTS/LINES/SPLINES
            (SET BY DIRECTIVE FONT(x)=&SOLID/&DASH/etc)
   YDENS  - DENSITY OF POINTS/LINES/SPLINES
            (SET BY DIRECTIVE DENS(x)=&NORMAL/&HEAVY/&THIN)
   VPNTR  - VARIABLE (RANGE) POINTER. CAN BE USED TO LINK
            TWO VALUES TOGETHER.
   YMODE  - VARIABLE CONTROLLING TYPE OF GRAPH DESIRED:
            (SET BY DIRECTIVE MODE(x)=&POINT/&LINE/&SPLINE)
   XTITLE - TITLE FOR X-AXIS (UP TO 30 CHARACTERS)
   YTITLE - TITLES FOR Y-AXIS (UP TO 30 CHARACTERS)

   YMIN   - RANGE VALUES WHICH CAN BE SET BY MIN(x) OR
   YMAX   - MAX(x) IN THE DATA FILE.
   RNGFLG - VARIABLE USED TO INDICATE A RANGE HAS BEEN SET.
   XOFFST - DATE STAMP OFFSET. (THIS IS USED TO KEEP XVALUE
            AS CLOSE TO 1 AS POSSIBLE, DUE TO ROUNDING ERRORS)
   XVALUE - THE INDEPENDENT VARIABLE THAT TIES ALL THESE
            VALUES TOGETHER.  (THE FIRST VALUE IN THE
            INPUT STRING). IN DATE/TIME MODE, IT CAN
            A DATE FOLLOWED BY A TIME)
   YVALUE - AN ARRAY CONTAINING UP TO 20 POSSIBLE DEPENDANT
            VALUES. (ACTUAL COUNT IS IN VARCNT)
   EOFFLG - SET TO &YES WHEN THE READ HITS END-OF-FILE
   PASS   - SET TO 1 IF READING FIRST TIME, 2 FOR SECOND
            (ON SECOND PASS, ALL PARAMETERS ARE IGNORED)
   SRESP  - SUBROUTINE RESPONSE:
            1-MINOR ERROR (REJECT), 2-MAJOR ERROR (TERMINATE)
            3-ALL OK (ENTRY COMPLETE)
_MULTIPLE_MENU_SELECT.GRS Download: Source File
   THIS ROUTINE PRESENTS SEVERAL CHOICES ON A MENU
   AND LETS THE USER SELECT AS MANY AS THEY WANT.

   IT ADDS/REMOVES MARKERS FROM THE SCRATCH FILE
   AND USES _,MENU_SELECT2 TO DO THE ACTUAL PROCESSING.

   THE PARAMETERS THAT CONTROL THIS ROUTINE ARE:
     SCRFIL - SCRATCH FILE THAT CONTAINS MENU CHOICES
              AND WILL BE USED TO RETURN SELECTED VALUES.
     FLGCHR - FLAG CHARACTER (']' OR '*" FOR EXAMPLE)
              THIS IS USED AS THE FIRST CHARACTER TO FLAG
              FILES SELECTED.
     CLRSW  - WHEN SET TO &YES, THIS ROUTINE MAKES SURE
              THAT ALL LINES DO NOT START WITH THE FLAG
              CHARACTER.
     RFMTSW - WHEN SET TO &YES, THIS ROUTINE MAKES SURE
              THAT ALL LINES THAT DO NOT START WITH THE
              FLAG CHARACTER HAVE A LEADING SPACE IN
              FRONT OF THEM.
     FLSHSW - FLUSH ENTRIES NOT SELECTED.
     SELCNT - COUNT OF SELECTED RECORDS IF FLUSH SWITCH
              IS SET TO &YES)

   RESTRICTIONS:
     THE RECORDS IN THE FILE MUST BE CONTAIN "*", AND MUST NOT
     BEGIN WITH THE SELECT CHARACTER OR A SPACE. THE LENGTH OF
     EACH RECORD SHOULD BE 37 CHARACTERS OR LESS.

   FOR FASTER PERFORMANCE (WITH LARGE FILES), RFMTSW AND
   CLRSW CAN BE SET TO &NO. THIS WILL SPEED UP INITIALIZATION,
   BUT WILL RESULT IN UNFORMATTED CHOICES.

   FOR MOST APPLICATIONS, CLRSW, RFMTSW AND FLSHSW SHOULD BE
   SET TO &YES.
_MULTIPLOT.GRS Download: Source File
   THIS ROUTINE PLOTS UP TO 20 FUNCTIONS SIMULTANEOUSLY.
   IT USED A DATA FILE CONTAINING DATA AND SETUP COMMANDS
   TO DETERMINE PLOT COLORS.  THE SCALES ARE AUTO-RANGING,
   BASED ON THE DATA FILE RANGES.

   SEE MULTIPLOT.GRS FOR MORE INFORMATION!

N

_NCGEN_AS_OPER.GRS Download: Source File
  ASSIGN OPERATION.
_NCGEN_AS_TAG.GRS Download: Source File
  ASSIGN OPERATION TAG. THE TAG IS OPERATION'S SEQUENCE NUMBER.
  THIS TAG IS USED FOR LISTING PURPOSES ONLY.
_NCGEN_ATCLSF.GRS Download: Source File
  ASSIGN PART-ENTITY ATTRIBUTES FOR CLSF AND CURRENT PART FILESPECS.
_NCGEN_ATCORD.GRS Download: Source File
  ASSIGN OPERATION-ENTITY ATTRIBUTES FOR COORDINATE-SYSTEMS: MCS AND RCS.
_NCGEN_ATDEL.GRS Download: Source File
   DELETE ALL ATTRIBUTES (BOTH ENTITY AND PART) ASSIGNED BY PROGRAM FOR
   CURRENT PART.
_NCGEN_ATOPER.GRS Download: Source File
   ASSIGN PART-ENTITY ATTRIBUTES FOR OPERATION COUNT AND NAME.
_NCGEN_ATPATH.GRS Download: Source File
   ASSIGN OPERATION-ENTITY ATTRIBUTES FOR PATH-NAME AND FEEDRATES.
_NCGEN_CHOOSE.GRS Download: Source File
   PRODUCE LINKED 'CHOOSE' MENUS FROM STRING ARRAY.
_NCGEN_CLSF.GRS Download: Source File
  ASSIGN CLSF.  MAKE SURE IT EXISTS ON DISK.

      THERE ARE THREE ALTERNATIVES:
      1) MAKE A COPY OF CURRENT (IE. ORIGINAL) CLSF, IF IT EXISTS.
      2) MAKE A COPY OF AN EXISTING CLSF.
      3) CREATE A NEW EMPTY CLSF.
_NCGEN_CSYS.GRS Download: Source File
  DEFINE COORDINATE SYSTEM ENTITY.
_NCGEN_EXTENSION.GRS Download: Source File
  DETERMINE IF GIVEN FILE NAME HAS GIVEN EXTENSION.
_NCGEN_FEED.GRS Download: Source File
   GET FEED RATE SELECTION LIST.
_NCGEN_FETCH.GRS Download: Source File
  REPEATEDLY ATTEMPT TO FETCH GIVEN TEXT FILE INTO SCRATCH FILE #2.
  ONLY ATTEMPT TO FETCH IF THERE IS NO LOCK.
  LOCK MECHANISM IS EXISTENCE/NON-EXISTENCE OF LOCK FILE.
_NCGEN_GETSPEC.GRS Download: Source File
  GET FILESPEC FOR NCGEN_BATCH.GRX
_NCGEN_HELP.GRS Download: Source File
  ADMINISTER HELP.
_NCGEN_INIT.GRS Download: Source File
 INITIALIZE LIST                 OF ALL OPERATIONS IN CURRENT PART.
 INITIALIZE LIST OF DESCRIPTIONS OF ALL OPERATIONS IN CURRENT PART.
 INITIALIZE DATA LISTS SHOWING IF OPERATION WAS EDITED FOR GEOMETRY,
    TOOL, AND PARAMETER-SET.
_NCGEN_LEGL_OP.GRS Download: Source File
  IS OPERATION LEGAL FOR EDITING ?
_NCGEN_LISTALL.GRS Download: Source File
  SHOW CLSF FILESPEC.
  LIST ALL OPERATIONS IN CURRENT PART. GIVE OPERATION-TYPE AND
  SHOW IF ASSIGNED FOR BATCH.  ALSO SHOW IF OPERATION HAS BEEN EDITED
  FOR GEOMETRY, TOOL, AND PARAMETER-SET.
_NCGEN_LISTASG.GRS Download: Source File
  SHOW CLSF FILESPEC.
  LIST ONLY ALL THE ASSIGNED OPERATIONS IN CURRENT PART. GIVE OPERATION-TYPE.
  LIST OPERATIONS IN THEIR ASSIGNED ORDER (IE. PROCESSING ORDER).
_NCGEN_LOGWRITE.GRS Download: Source File
   FETCH AND WRITE ENTRY TO LOG FILE.

   AN ENTRY IN THE LOG FILE CONSISTS OF:

      -----------------------
      OPERATION NAME: XXXXXX
      OPERATION TYPE: XXXXXX
      CLSF FILESPEC:  XXXXXX
      PART FILESPEC:  XXXXXX
      DATE COMPLETED: XXXXXX
      TIME COMPLETED: XXXXXX
      STATUS:         XXXXXX
      -----------------------
_NCGEN_MAKE_CS.GRS Download: Source File
  MAKE COORDINATE-SYSTEM USING ITS TRANSFORMATION MATRIX.
_NCGEN_MCS.GRS Download: Source File
  ESTABLISH/DISPLAY MACHINE COORDINATE SYSTEM.
_NCGEN_OPCHOI.GRS Download: Source File
  OPERATION CHOICE.
  CHOOSE OPERATION NAME FROM PREPARED LIST THAT CONTAINS ONLY
  VALID UNASSIGNED OPERATIONS.
_NCGEN_OPTYPE.GRS Download: Source File
   RETURN OPERATION-TYPE DESCRIPTION GIVEN
   OPERATION NAME.
_NCGEN_RCS.GRS Download: Source File
   ESTABLISH/DISPLAY REFERENCE COORDINATE
   SYSTEM.
_NCGEN_SHOW_CS.GRS Download: Source File
   DISPLAY COORDINATE SYSTEM
_NCGEN_SHOW_SPEC.GRS Download: Source File
  FORMAT FILESPEC BY SPLITTING IT INTO SEVERAL LINES (MAX 3).
_NCGEN_UNIQUE.GRS Download: Source File
  ADD UNIQUE SUFFIX TO PREFIX.  RESULT IS 'FSPEC'.
  SUFFIX IS COMPOSED OF UNDERSCORE FOLLOWED BY A NUMBER.
_NOTE_CHANGE1.GRS Download: Source File
   THIS SUBROUTINE COPIES ALL ATTRIBUTES FROM AN EXISTING NOTE, AND
   THEN APPLIES THEM TO THE NEW NOTE WITH THE NEW TEXT AS SUPPLIED
   FROM XNEWST.

   THE NUMBER OF CHANGED ENTITIES IS HELD IN XCHCNT.

   THIS VERSION HANDLES SINGLE LINE NOTES.
   THIS VERSION ALSO SAVE/RESTORES MODULE PARAMETES SO THAT
   THEY ARE NOT AFFECTED BY THIS ROUTINES OPERATION.
_NOTE_CHANGE10.GRS Download: Source File
   THIS SUBROUTINE COPIES ALL ATTRIBUTES FROM AN EXISTING NOTE, AND
   THEN APPLIES THEM TO THE NEW NOTE WITH THE NEW TEXT AS SUPPLIED
   FROM XNEWST.

   THE NUMBER OF CHANGED ENTITIES IS HELD IN XCHCNT.

   THIS VERSION HANDLES NOTES UP TO 10 LINES LONG.
_NOTE_CHANGE2.GRS Download: Source File
   THIS SUBROUTINE COPIES ALL ATTRIBUTES FROM AN EXISTING NOTE, AND
   THEN APPLIES THEM TO THE NEW NOTE WITH THE NEW TEXT AS SUPPLIED
   FROM XNEWST.

   THE NUMBER OF CHANGED ENTITIES IS HELD IN XCHCNT.

   THIS VERSION HANDLES TWO LINE NOTES.
_NOTE_CHANGE_M10.GRS Download: Source File
   THIS SUBROUTINE COPIES ALL ATTRIBUTES FROM AN EXISTING NOTE, AND
   THEN APPLIES THEM TO THE NEW NOTE WITH THE NEW TEXT AS SUPPLIED
   FROM XNEWST.

   THE NUMBER OF CHANGED ENTITIES IS HELD IN XCHCNT.

   THIS VERSION HANDLES UP TO 10 LINE NOTES. THE NUMBER OF LINES
   TO BE OUTPUT IS SET BY "XNLCNT".

   THIS VERSION DOES NOT SAVE MODULE PARAMTERS. THIS MUST BE DONE
   BY THE CALLING ROUTINE TO AVOID ACCIDENTALLY CHANGING THE PARAMETERS.
_NOTE_CHANGE_M100A.GRS Download: Source File
   THIS SUBROUTINE COPIES ALL ATTRIBUTES FROM AN EXISTING NOTE, AND
   THEN APPLIES THEM TO THE NEW NOTE WITH THE NEW TEXT AS SUPPLIED
   FROM XNEWST.

   THE NUMBER OF CHANGED ENTITIES IS HELD IN XCHCNT.

   THIS VERSION HANDLES UP TO 100 LINE NOTES. THE NUMBER OF LINES
   TO BE OUTPUT IS SET BY "XNLCNT".

   VERSION "A" ALSO ADDS THE ATTRIBUTES "MAX_CHAR" & "MAX_LINES"
   TO THE FINISHED NOTE.

   THIS VERSION DOES NOT SAVE THE MODULE PARAMETER VALUES BEFORE
   CHANGING THEM. THESE PARAMETERS MUST BE SAVED (AND RESTORED)
   BY THE CALLING ROUTINE TO PREVENT THE CALLING PROGRAM FROM
   PERMANENTLY CHANGING THEM.
_NOTE_ENGRAVE_CREATE.GRS Download: Source File
  This routine actually creates the toolpath statements (the GOTO/s, etc)
 Called by:
   note_engrave.grs
_NOTE_ENGRAVE_DATA.GRS Download: Source File
 Called by:
   note_engrave.grs
_NOTE_ENGRAVE_REFORM.GRS Download: Source File
 Called by:
   note_engrave.grs
_NUTZ.GRS Download: Source File
 ABSTRACT: TO DRAW MACHINE SCREWS IN 3D
_NUTZERT.GRS Download: Source File
 ABSTRACT: TO CONSTRUCT STANDARD FASTENER HARDWARE
_N_C_ENGRAVE_CREATE.GRS Download: Source File
 Called by:
   n_c_engrave.grs
_N_C_ENGRAVE_DATA.GRS Download: Source File
 Called by:
   n_c_engrave.grs
_N_C_ENGRAVE_REFORM.GRS Download: Source File
 Called by:
   n_c_engrave.grs

P

_PAGE_PLOT.GRS Download: Source File
   THIS PROGRAM FILLS OUT "PAGES" OF INFORMATION ON PRE-DESIGNED
   FORMS AND SENDS THE FINISHED FILE TO THE PLOTTER.

   CALLING VARIABLES:
     NOTNMS - LIST OF NOTE NAMES TO USE FOR FILLING IN BLANKS.
     NOTIDX - NOTE INDEX - NUMBER OF LINES FOR EACH NOTE IN SEQ.
     NOTSTR - NOTE STRINGS - STRINGS CONTAINING ACTUAL NOTE DATA:
              NOTMNS - 10 MAX, NOTIDX - 10 MAX, NOTSTR, 20 MAX

     INPFIL - NAME OF TEXT FILE TO READ FROM
     PAGCNT - TOTAL NUMBER OF PAGES PLOTTED
     PAG1NM - NAME OF PART FILE FOR PAGE 1
     PAG2NM - NAME OF PART FILE FOR PAGE 2+ (CAN BE SAME AS PAG1NM)
     PASS   - CONTROLS STOPPING POINT IN OPERATION:
                PASS=0 - JUST CREATE NOTE & PLOT (FOR ALL PAGES)
                PASS=1 - RETURN AFTER EACH NOTE IS CREATED
                PASS=2 - BUILD PLOT & START ON NEXT NOTE.
                (PASS 1/PASS 2 IS USED TO ADD EXTRA DATA TO A FILE
                AFTER THE NOTE IS CREATED, BUT BEFORE BUILDING
                THE PLOT FILE).
     SRESP  - "RESP" VALUE FOR SUBROUTINE (1=REJECT,2=TERM,3=NO ERROR)

   THE FOLLOWING PART ATTRIBUTES MUST APPEAR ON THE PAGES USED
   BY THIS PROGRAM:
     PAGE_WIDTH - WIDTH OF PAGE   (LOWER LEFT OF PAGE MUST BE
     PAGE_HEIGH - HEIGHT OF PAGE  AT WCS AND ABSOLUTE 0,0,0)
     NOTE_X     - X COORDINATE OF TOP LEFT OF NOTE
     NOTE_Y     - Y COORDINATE OF TOL LEFT OF NOTE
     NOTE_LPP   - LINES PER PAGE/MAXIMUM FOR THIS PAGE

   ANY NOTES TO BE FILLED IN REQUIRE THE ORIGINAL NOTE TO
   BE NAMED. THIS NAME WILL BE USED TO REPLACE TEXT IN
   THE NOTE WITH THE NOTE STRING DATA.

   THERE MUST BE SEVERAL VARIABLES DEFINED BEFORE THIS PROGRAM
   WILL RUN. THESE MUST BE DEFINED FOR PAGE 1/COVER AND PAGE 2+
   (PAGE 1 WILL BE USED FIRST, THEN PAGE 2+ WILL BE REPEATED
   UNTIL THE DATA IS USED UP).

   ALL THESE VALUES ARE REPEATED FOR PAGE #2. THE PROGRAM WILL
   START BY FILLING OUT PAGE 1, THEN CONTINUE TO PAGE 2. AS EACH
   PAGE IS FILLED, IT IS SENT TO THE PLOTTER.

   THE DATA WILL BE READ FROM A TEXT DATA FILE. IF '//' CHARACTERS
   ARE FOUND, THESE WILL FORCE PAGING AT THAT POINT. OTHERWISE,
   THE PROGRAM WILL "PAGE" ACCORDING TO THE LPP1 AND LPP2 VALUES.

   SINCE THIS PROGRAM CAN REGENERATE THE PLOTS FASTER THEN IT IS
   POSSIBLE TO RETRIEVE THE FILE, NO DATA WILL BE FILED.
_PAN_HEAD.GRS Download: Source File

_PART_CLEANER.GRS Download: Source File
   THIS SUBROUTINE "CLEANS" UP DUPLICATE ENTITIES. IT DETERMINES
   DUPLICATE STATUS BY CHECK COORDINATE DATA AS WELL AS COLOR,
   FONT, DENSITY AND LAYER.
_PART_CLEANER2.GRS Download: Source File
   THIS ROUTINE COMPARES ALL THE ENITIES IN A PART FILE
   TO LOOK FOR DUPLICATE ENTITIES. ANY DUPLICATES ARE
   PROCESSED ACCORDING TO THE FIX METHOD IN EFFECT AT
   THE TIME.
_PCNAME_CHECK.GRS Download: Source File
   THIS ROUTINE VERIFIES THAT A FILENAME IS LEGIT FOR USE
   ON A PC.

   PCNAME - SUPPLIED STRING CONTAINING FILENAME TO VERIFY
   ERRMSG - RETURNED STRING CONTAINING ERROR MESSAGES
            (UNDEFINED IF SRESP=3)
   SRESP  - SUBROUTINE RESPONSE: (2=FAIL, 3=SUCCESS)
_PHILLIP_HEAD.GRS Download: Source File

_PLUG.GRS Download: Source File

_PLUG2.GRS Download: Source File

_POLAR_TO_RECT.GRS Download: Source File
   THIS SUBROUTINE CALCULATES THE RECTANGULAR DISTANCE VECTOR
   AND POSITION FROM THE POLAR VECTOR GIVEN

   INPUTS: XCENTR -- USED AS 'POLE' IN POLAR CALCULATIONS
           YCENTR -- THE Y-COORD OF 'POLE'
           RAD   -- RADIUS (LENGTH) OF DISTANCE VECTOR
           ANG   -- ANGLE DISTANCE VECTOR FORMS WITH X-AXIS

   OUTPUTS: DX    -- DISTANCE PARALLEL TO X-AXIS FROM X CENTER
                     TO X POSITION
            DY    -- DISTANCE PARALLEL TO Y-AXIS FROM Y CENTER
                     TO Y POSITION
            XPOS   -- LOCATION OF DESTINATION POINT
            YPOS   -- LOCATION OF DESTINATION POINT

   CALCULATE DISTANCE VECTORS AND LENGTH OF DISTANCE VECTOR.
_POLYGON.GRS Download: Source File
   THIS SUBROUTINE DRAWS A POLYGON BASED ON THE NUMBER OF SIDES,
   RADIUS OF A CIRCLE, STARTING ANGLE AND INSCRIBE/CIRCUMSCRIBE

   VARIABLE USAGE:
    NPOS   - LOCATION OF CENTER POINT
    MODEX  - MEANING OF RAD0: (1-INSCRIBED, 2-LENGTH OF SIDE,
               3-CIRCUMSCRIBED)
    RADX   - RADIUS OF INSCRIBE/CIRCUMSCRIBE CIRCLE/LENGTH OF SIDE
    ANG0   - ANGLE TO START FIRST SIDE
    NSIDES - NUMBER OF SIDES
    GRP    - ENTITY TO RETURN GROUP IN
_PT2PT.GRS Download: Source File
   PT2PT
   SUBROUTINE TO SLIDER-SLIDER, SLIDER-CRANK, AND 3BAR.
_PUTPARAMS.GRS Download: Source File
 THIS IS A PROGRAM TO RESET THE DRAFTING PARAMS
 AT THE END OF A  MAIN PROGRAM

 TO USE IN A MAIN PROGRAM, THE CALL WILL
 LOOK LIKE THIS:

 CALL/'_PUTPARAMS',LNDENZ,LPHONT,CCIZE,WORKL

Q

_QUICKGEN_AS_OPER.GRS Download: Source File
   ASSIGN OPERATION.
_QUICKGEN_HELP.GRS Download: Source File
  ADMINISTER HELP.

R

_READ_SYS_COLORS.GRS Download: Source File
   THIS SUBROUTINE READS THE CURRENT COLOR SETTINGS FROM THE
   SYSTEM. THIS ALLOWS COLORS TO BE LISTED IN MENUS, ETC.
_READ_TOOLPATH.GRS Download: Source File
   THIS SUBROUTINE READS IN TOOL PATH STATEMENT(S). IT
   WILL READ 1 LINE IF THIS IS V9, AND TWO LINES IF
   IT IS V10.

   TLPATH IS THE TOOL PATH/ STATEMENT LINE, AND TPLINE IS
   THE LINE NUMBER WHERE THE TOOL PATH OCCURS.

   TLDATA IS THE TLDATA/ LINE (V10 ONLY), AND TDLINE IS
   THE LINE NUMBER WHERE THE TLDATA OCCURS.

   SRESP IS SET TO: 3 IF WE PROCESSED A TOOL PATH,
                    2 IF WE FOUND A TOOL PATH, BUT IT WAS
                      INCOMPLETE
               AND  1 IF THE LINE WAS NOT A TOOL PATH.

   NOTE: THIS ROUTINE CAN BE USED BY ITSELF TO GET VERY
         BASIC INFORMATION ABOUT A TOOL PATH OR IT CAN
         BE FOLLOWED BY A CALL TO _DECODE_TOOL_PATH TO
         GET MORE INFORMATION FROM THE TOOL PATH/ STATEMENT.
_RECT_TO_POLAR.GRS Download: Source File
   THIS SUBROUTINE CALCULATES THE POLAR DISTANCE VECTOR
   AND POSITION FROM THE RECTANGULAR VECTOR GIVEN (2D ONLY)

   INPUTS: XCENTR -- USED AS 'POLE' IN POLAR CALCULATIONS
           YCENTR -- THE Y-COORD OF 'POLE'
           XPOS   -- LOCATION OF DESTINATION POINT
           YPOS   -- LOCATION OF DESTINATION POINT

   OUTPUTS: DX    -- DISTANCE PARALLEL TO X-AXIS FROM X CENTER
                     TO X POSITION
            DY    -- DISTANCE PARALLEL TO Y-AXIS FROM Y CENTER
                     TO Y POSITION
            RAD   -- RADIUS (LENGTH) OF DISTANCE VECTOR
            ANG   -- ANGLE DISTANCE VECTOR FORMS WITH X-AXIS

   CALCULATE DISTANCE VECTORS AND LENGTH OF DISTANCE VECTOR.
_REMOVE_CONTROL_CHARS.GRS Download: Source File
   THIS SUBROUTINE REMOVES ALL CONTROL CHARACTERS FROM A STRING:
_RESTORE_CALCULATOR.GRS Download: Source File
   THIS SUBROUTINE RESTORES THE CURRENT VALUES OF THE
   CALCULATOR FROM A 12-NUMBER ARRAY.
_RESTORE_DISP_CONTROL.GRS Download: Source File
   THIS ROUTINE RESTORES THE DISPLAY CONTROL PARAMETERS.
   (ACTUALLY ENTITY DISPLAY PARAMETERS &
   SYSTEM DISPLAY PARAMETERS AND BORDER DISPLAY CONTROL)
_RESTORE_LAYER_STATUS.GRS Download: Source File
   THIS PROGRAM RESTORES THE CURRENT GLOBAL LAYER MASK FROM
   THE STRING ARRAY CALLED LAYERS. THE CODES USED ARE:
     0 - INVISIBLE
     1 - VISIBLE
     2 - SELECTABLE
     3 - WORK

   LAYERS SHOULD BE DIMENSIONS AS A STRING OF (256,1)
   SRESP RETURNS A 3 IF THE RESTORE WAS SUCCESSFUL AND
   A 2 IF THERE WAS AN ERROR
_RESTORE_MOD_PARAMS.GRS Download: Source File
   THIS ROUTINE RESTORES THE CURRENT VALUES OF MODULE PARAMETERS
   FROM A NUMERIC ARRAY AND TWO STRINGS. THE TWO STRINGS MUST BE
   DIMENSIONED (IN THE CALLING ROUTINE) TO LENGTHS OF 6 CHARS.

   THE ARRAY IS 50 ELEMENTS, EVEN THOUGH ONLY 45 ARE NEEDED.
   (THE EXTRAS ARE FOR FUTURE ENHANCEMENTS)

   IT DOES NOT HANDLE FONT SETTINGS (HARDLY EVER NEEDED) NOR DOES
   IT HANDLE OTHER ENVIROMENT SETTINGS (NOT AVAILABLE FROM GRIP)
_RESTORE_PARAMS.GRS Download: Source File
   THIS ROUTINE RESTORES THE DISPLAY CONTROL PARAMETERS.
   (ACTUALLY ENTITY DISPLAY PARAMETERS &
   SYSTEM DISPLAY PARAMETERS AND BORDER DISPLAY CONTROL)

   THIS ROUTINE RESTORES THE CURRENT VALUES OF MODULE PARAMETERS
   FROM A NUMERIC ARRAY AND TWO STRINGS. THE TWO STRINGS MUST BE
   DIMENSIONED (IN THE CALLING ROUTINE) TO LENGTHS OF 6 CHARS.

   THE ARRAY IS 50 ELEMENTS, EVEN THOUGH ONLY 45 ARE NEEDED.
   (THE EXTRAS ARE FOR FUTURE ENHANCEMENTS)

   IT DOES NOT HANDLE FONT SETTINGS (HARDLY EVER NEEDED) NOR DOES
   IT HANDLE OTHER ENVIROMENT SETTINGS (NOT AVAILABLE FROM GRIP)

   THIS SUBROUTINE RESTORES THE SYSTEM PARAMETER VALUES
   FROM A NUMERIC ARRAY, AND FOUR STRINGS. THE FOUR STRINGS
   MUST BE DIMENSIONED (IN THE CALLING ROUTINE) TO LENGTHS
   OF 8, 100, 100, AND 100, RESPECTIVELY FOR OPERATION IN A
   UGFM ENVIRONMENT.

   THERE ARE SOME RESTRICTIONS: IF THE LIST DEVICE
   WAS SET TO A FILE, THIS ROUTINE CAN'T TELL WHICH
   FILE IT WAS, AND WILL SET IT TO CRT.

   DUE A BUG IN GRIP BATCH, LIST DEVICE SETTINGS HAVE NO
   EFFECT. (THEY ARE CHANGED, BUT IT DOES NOT SEEM TO EFFECT
   OUTPUT).

   WCS DATA IS NOT SAVED.
_RESTORE_SYS_PARAMS.GRS Download: Source File
   THIS SUBROUTINE RESTORES THE SYSTEM PARAMETER VALUES
   FROM A NUMERIC ARRAY, AND FOUR STRINGS. THE FOUR STRINGS
   MUST BE DIMENSIONED (IN THE CALLING ROUTINE) TO LENGTHS
   OF 8, 100, 100, AND 100, RESPECTIVELY FOR OPERATION IN A
   UGFM ENVIRONMENT.

   THERE ARE SOME RESTRICTIONS: IF THE LIST DEVICE
   WAS SET TO A FILE, THIS ROUTINE CAN'T TELL WHICH
   FILE IT WAS, AND WILL SET IT TO CRT.

   DUE A BUG IN GRIP BATCH, LIST DEVICE SETTINGS HAVE NO
   EFFECT. (THEY ARE CHANGED, BUT IT DOES NOT SEEM TO EFFECT
   OUTPUT).

   WCS DATA IS NOT SAVED.
_ROTATE_ANGLES_TO_MATRIX.GRS Download: Source File
   This routine takes three rotation angles and calculates the
   resulting 3x3 matrix of direction cosines. The data is stored in a
   3x4 for compatibility with UG's TRANSF command.

   The rotation sequence is: Rotate about X-axis, rotate about Y-axis,
   rotate about Z-axis

S

_SAVE_CALCULATOR.GRS Download: Source File
   THIS SUBROUTINE SAVE THE CURRENT VALUES OF THE
   CALCULATOR IN A 12-NUMBER ARRAY.
_SAVE_DISP_CONTROL.GRS Download: Source File
   THIS ROUTINE SAVES THE DISPLAY CONTROL PARAMETERS.
   (ACTUALLY ENTITY DISPLAY PARAMETERS &
   SYSTEM DISPLAY PARAMETERS AND BORDER DISPLAY CONTROL)
_SAVE_LAYER_STATUS.GRS Download: Source File
   THIS PROGRAM READS THE CURRENT GLOBAL LAYER MASK AND
   STORES IT IN THE STRING ARRAY CALLED LAYERS. THE
   CODES USED ARE:
     0 - INVISIBLE
     1 - VISIBLE
     2 - SELECTABLE
     3 - WORK

   LAYERS SHOULD BE DIMENSIONED AS A STRING OF (256,1).
   SRESP RETURNS A VALUE OF 3 FOR SUCCESSFUL SAVE AND
   2 FOR ERROR CONDITIONS
_SAVE_MOD_PARAMS.GRS Download: Source File
   THIS ROUTINE SAVES THE CURRENT VALUES OF MODULE PARAMETERS
   IN A NUMERIC ARRAY AND TWO STRINGS. THE TWO STRINGS MUST BE
   DIMENSIONED (IN THE CALLING ROUTINE) TO LENGTHS OF 6 CHARS.

   THE ARRAY IS 50 ELEMENTS, EVEN THOUGH ONLY 45 ARE NEEDED.
   (THE EXTRAS ARE FOR FUTURE ENHANCEMENTS)

   IT DOES NOT HANDLE FONT SETTINGS (HARDLY EVER NEEDED) NOR DOES
   IT HANDLE OTHER ENVIROMENT SETTINGS (NOT AVAILABLE FROM GRIP)
_SAVE_PARAMS.GRS Download: Source File
   THIS SUBROUTINE SAVES THE SYSTEM PARAMETER VALUES
   IN A NUMERIC ARRAY, AND FOUR STRINGS. THE FOUR STRINGS
   MUST BE DIMENSIONED (IN THE CALLING ROUTINE) TO LENGTHS
   OF 8, 100, 100, AND 100, RESPECTIVELY FOR OPERATION IN A
   UGFM ENVIRONMENT.

   THERE ARE SOME RESTRICTIONS: IF THE LIST DEVICE
   WAS SET TO A FILE, THIS ROUTINE CAN'T TELL WHICH
   FILE IT WAS, AND WILL SET IT TO CRT.

   WCS DATA IS NOT SAVED.

   THIS ROUTINE SAVES THE DISPLAY CONTROL PARAMETERS.
   (ACTUALLY ENTITY DISPLAY PARAMETERS &
   SYSTEM DISPLAY PARAMETERS AND BORDER DISPLAY CONTROL)

   THIS ROUTINE SAVES THE CURRENT VALUES OF MODULE PARAMETERS
   IN A NUMERIC ARRAY AND TWO STRINGS. THE TWO STRINGS MUST BE
   DIMENSIONED (IN THE CALLING ROUTINE) TO LENGTHS OF 6 CHARS.

   THE ARRAY IS 50 ELEMENTS, EVEN THOUGH ONLY 45 ARE NEEDED.
   (THE EXTRAS ARE FOR FUTURE ENHANCEMENTS)

   IT DOES NOT HANDLE FONT SETTINGS (HARDLY EVER NEEDED) NOR DOES
   IT HANDLE OTHER ENVIROMENT SETTINGS (NOT AVAILABLE FROM GRIP)
_SAVE_SYS_PARAMS.GRS Download: Source File
   THIS SUBROUTINE SAVES THE SYSTEM PARAMETER VALUES
   IN A NUMERIC ARRAY, AND FOUR STRINGS. THE FOUR STRINGS
   MUST BE DIMENSIONED (IN THE CALLING ROUTINE) TO LENGTHS
   OF 8, 100, 100, AND 100, RESPECTIVELY FOR OPERATION IN A
   UGFM ENVIRONMENT.

   THERE ARE SOME RESTRICTIONS: IF THE LIST DEVICE
   WAS SET TO A FILE, THIS ROUTINE CAN'T TELL WHICH
   FILE IT WAS, AND WILL SET IT TO CRT.

   WCS DATA IS NOT SAVED.
_SC_CLOSE_GAP.GRS Download: Source File
   THIS SUBROUTINE TAKES TWO CURVES AND DETERMINES THE BEST WAY TO
   CLOSE THE GAP BETWEEN THEM.

   IT REPORTS BACK THE METHOD USED, AND CAN BE CALLED SEVERAL
   TIMES TO SWITCH BETWEEN DIFFERENT METHODS.
_SC_INPUT.GRS Download: Source File
   THIS SUBROUTINE ASKS FOR ALL THE INITIAL SETTINGS FOR THE SUPER CHAIN
   PROGRAM.
_SELECT_POINT.GRS Download: Source File
     THIS SUBPROGRAM FINDS THE ENTITY SELECT
     POINT FOR A POINT, LINE, ARC, CONIC OR
     SPLINE WHEN USING AN IDENT STATEMENT
_SELECT_POINT2.GRS Download: Source File
   THIS SUBPROGRAM FINDS THE ENTITY SELECT
   POINT FOR A POINT, LINE, ARC, CONIC OR
   SPLINE WHEN USING AN IDENT STATEMENT.
_SELECT_VIS_IN_VIEW.GRS Download: Source File
   THIS ROUTINE EXAMINES A VIEW AND MAKES THE LAYERS THAT ARE
   VISIBLE IN THAT VIEW ALSO SELECTABLE.

   IF THE VIEW IS USING THE GLOBAL MASK, THEN ALL LAYERS THAT
   ARE VISIBALE ALSO BECOME SELECTABLE.

   A CALL TO SAVE LAYER STATUS BEFORE CALLING THIS ROUTINE AND
   RESTORE AFTER THE PROCESS IS  DONE
_SET_MIN_KNOT_POINTS.GRS Download: Source File
   THIS SUBROUTINE EXAMINES A SPLINE AND ADDS KNOT POINTS
   TO IT IF NEEDED. (SINCE GRIP CAN'T EDIT A SPLINE, IT
   ACTUALLY RE-CREATES THE SPLINE USING POINTS CREATED
   AT EQUAL PARAMETER DISTANCES, RE-USING EXISTING KNOT
   POINTS ALONG THE WAY).

   NOTE: THIS ROUTINE WORKS FOR MINIMUM POINT VALUES [=11
_SET_WCS.GRS Download: Source File
   USED IN:  TAPS-3D
             PROJ2PLN
             BIMBA-AIR
   TO INTERACTIVELY DETERMINE THE WCS
   DWCS AND WCS  ARE SET AT THE SAME VALUES
   ONE FOR WORK AND ONE FOR SAVE
_SMART_SORT.GRS Download: Source File
   THIS ROUTINE TAKES A NAME (OPERATION NAME, FILE NAME, ETC),
   BUILDS A SORT FIND, SORTS THE FILE, REMOVES THE SORT FIELDS
   AND EXITS WITH THE NUMBER OF LINES IN THE FILE.

   LIMITS: NAMES ARE LIMITED TO 30 CHARACTERS OF LESS, AND
           10 ALPHANUMERIC GROUPS OR LESS. IF A GROUPS OF
           LETTERS OR NUMBERS IS LONGER THE 10 CHARACTERS
           THE SORT OPERATION MAY BE EFFECTED.

   FUTURE ENHANCEMENTS: MAKE BUILDING THE INDEX A TWO-PASS
                        OPERATION. FIRST PASS WOULD DETERMINE
                        THE WIDTH OF EACH FILE, THE SECOND
                        PASS WILL BUILD THE SORT KEYS.
_SOCKET_HEAD.GRS Download: Source File

_SORT_STRING_LIST_301.GRS Download: Source File
   THIS ROUTINE TAKES DATA FROM A STRING ARRAY, PUTS IT INTO
   A SCRATCH FILE, SORTS IT AND PUTS IT BACK.

   ENTRIES SET TO &NULSTR ARE IGNORED.

   A COUNT OF THE LINES PROCESSED WILL BE RETURNED IN LINCNT.

   THE 301 IN THE NAME INDICATES THAT THIS ROUTINE HANDLES UP TO
   301 LINES OF TEXT.
_SPCP_CALC_FROM_FILE.GRS Download: Source File
   This routine reads a file containing raw SPC data and
   calculates all the numbers needed to create an SPC chart.
   It does not plot this data.
_SPCP_DECODE_LINE.GRS Download: Source File
   This routine takes a string containing numbers separated by commas
   and converts it into numeric values and puts them into an array.
   This was designed to read raw data for SPC analysis but can be used
   whenever a string of numbers needs to be read in with good error
   checking.
_SPCP_DE_GRID.GRS Download: Source File
   This routine uses the routines from Multiplot to generate SPC
   graphing data. There are two types of output: Blank Charts, which
   have an area for filling in data but have no points plotted and
   Plotted Charts which use already acquired data to generate charts.
_SPCP_MARK_GROUPS.GRS Download: Source File
   This routine marks a group of points (to identify special conditions).
_SPCP_PLOT_CHART.GRS Download: Source File
   This routine uses the routines from Multiplot to generate SPC
   graphing data. This routine creates a blank chart. If data plotting
   and reading is needed, it must be done by routines following this one.
_SPCP_PLOT_DATA.GRS Download: Source File
   This routine reads the SPC raw data file and plots it on
   the chart (which should already exist).

   This routine does a lot less error-checking because the file was
   read previously by _spcp_calc_from_file.grs and processing would not
   reach this point if any errors were detected.
_SPCP_READ_PLOT.GRS Download: Source File
   This routine reads the SPC by locating points that indicate
   special conditions are present. (Trends, Shifts and Strays).
_SPCP_SETTINGS_FROM_FILE.GRS Download: Source File
   This routine reads a file containing raw SPC data and
   processes any settings embedded in the data. (Command
   lines look &[name]=[value]).
_SPEC.GRS Download: Source File
      ADD SPECIFICATION TAIL TO WELD SYMBOL
_SPEC2.GRS Download: Source File
   ADD SPECIFICATION TAIL TO WELD SYMBOL
_SPLINE_MERGE.GRS Download: Source File
   THIS SUBROUTINE MERGES SPLINES TOGETHER INTO ONE SPLINE.

   IT LOOKS AT THE SPLINES AND DETERMINES THE DIRECTION OF
   ORDER OF THE SPLINES. NEXT, IT READS IN THE KNOT POINT
   COORDINATES AND CREATES A NEW SPLINE.

   THIS IS A LITTLE BETTER THAN "SPLINE APPROX CURVES"
   BECAUSE IT USES AN AVERAGING AGORYTHM FOR HANDLING
   THE AREAS AROUND END-POINTS OF THE SPLINE.
_SPLINE_MERGE_INP.GRS Download: Source File
   THIS SUBROUTINE INPUTS INFORMATION NECESSARY
   TO MERGE SPLINES TOGETHER. IT CAN ALSO BE USED
   TO CONVERT A B-SPLINE TO A REGULAR SPLINE.
_SPLINE_REDUCER.GRS Download: Source File
   THIS ROUTINE READS AN EXISTING SPLINE AND DETERMINE WHICH POINTS
   MUST BE ELIMINATED TO AVOID "LOOP BACKS" IN THE NEW SPLINE. IT
   ALSO ELIMINATES POINTS THAT ARE WITHIN A MINIMUM DISTANCE AND
   CHANGE THE ANGLE OF THE SPLINE LESS THEN A MINIMUM ANGLE.

   SINCE THIS ROUTINE CAN DRASTICALLY ALTER THE SHAPE OF A SPLINE,
   IT SHOULD BE USED VERY CAREFULLY WHEN ACCURACY IS IMPORTANT.
   (SETTING THE MINANG TO -1, THE MAXANG TO 90 AND THE MINDST TO 0
   WILL SUPPRESS THE ELIMINATION OF CLOSE POINTS WHILE STILL FIXING
   SWITCH BACKS).

   NOTE: SPLINE POINT TANGENTS WERE NOT USED BECAUSE VECTORS FROM
         POINT TO POINT GAVE A CLEARER PICTURE OF SPLINE SWITCH BACK.
_SPLINE_REDUCER_INPUT.GRS Download: Source File
   THIS ROUTINE REDUCES THE KNOT POINTS IN A SPLINE. IT CAN BE
   USED WHEN CREATING "TRANSITION CURVES" THAT DO NOT REQUIRE
   HIGH ACCURACY BUT MUST BE SMOOTH.
_SPLINE_REDUCER_MANUAL.GRS Download: Source File
   THIS ROUTINE READS AN EXISTING SPLINE AND ALLOWS THE USER TO
   SELECT POINTS TO IGNORE.

   SINCE THIS ROUTINE CAN DRASTICALLY ALTER THE SHAPE OF A SPLINE,
   IT SHOULD BE USED VERY CAREFULLY WHEN ACCURACY IS IMPORTANT.

   NOTE: SPLINE POINT TANGENTS WERE NOT USED BECAUSE VECTORS FROM
         POINT TO POINT GAVE A CLEARER PICTURE OF SPLINE SWITCH BACK.
_SPLINE_REVERSER.GRS Download: Source File
   THIS ROUTINE READS AN EXISTING SPLINE EXTRACTS KNOT POINTS &
   TANGENTS THEN GENERATES A SPLINE USING THE KNOT POINTS IN
   REVERSE ORDER.

   NOTE: SPLINE POINT TANGENTS WERE NOT USED BECAUSE VECTORS FROM
         POINT TO POINT GAVE A CLEARER PICTURE OF SPLINE SWITCH BACK.
_STAG.GRS Download: Source File

_STAG2.GRS Download: Source File

_STRING_COMPRESS.GRS Download: Source File
   This subroutine removes leading, trailing and adjecent blanks from
   a string.
_STRING_PROCESS_PARAM.GRS Download: Source File
   This subroutine extracts parameter information from a string of the form:
     &[param name]=[value]  or
     &[param name]([subscript])=[value]
_STRING_TOKEN.GRS Download: Source File
 ABSTRACT:This routine is passed three parameters
	     1) str - the string to be tokenized
	     2) delims - a list of delimeters 	 	
           3) tokens - an empty 3D array
              The calling program would declare
              something like this:
              tokens(n,2,128)

              (n)-----(1) - thetoken
                       |
                      (2) - the associated delimeter

	     The routine then parses the string using the
	     list of delimeters. It stores the
	     delimeted token in the first sub element
           of the array labeled tokens
	     and the delimeter associated with the token
           is stored in the 2nd sub element

           NOTE: the first element of the tokens array
		   is reserved for the number of tokens
                 in the array, this routine stores that
                 number in the array.
_STRING_TRUNCATE.GRS Download: Source File
   This subroutine removes any trailing blanks from a string.
_SUPER_CHAIN.GRS Download: Source File
   THIS PROGRAM CHAINS ENTITIES WITHOUT USEING THE "CHAIN" STATEMENT.

 VARIABLES:
   INPUT:
     ZTOLER - Z-AXIS TOLERANCE  (MAXIMUM Z-DEVIATION ALLOWED)
     CHDIST - MAXIMUM DISTANCE TO CHAIN ACROSS
     STARTC - INITIAL COLOR ASSIGNED TO ENTITIES WHEN THEY
              ARE LOADED INTO THIS ROUTINE
     ERRORC - ERROR COLOR, USED TO HIGHLIGHT NON-PLANAR ENTITIES
     DONEC  - COLOR ASSIGNED TO CHAINED ENTITIES
     ATTSW  - ATTRIBUTE SWITCH, IF &YES, ENTITIES ASSIGNED
              CHAIN NUMBERS.
     DIAGLV - DIAGNOSTIC LEVEL

   OUTPUT:
     CHGRP  - GROUP OF CHAINED ENTITIES, IN REVERSE ORDER
     SRESP  - SUBROUTINE RESPONSE (3-SUCCESS)
_SURF_PROJ.GRS Download: Source File
   THIS SUBROUTINE PROJECTS A CURVE ONTO A LIST OF SURFACES,
   EXTRACTS THE CURVES FROM THE RETURNED GROUP, THEN
   MERGES THE CURVES INTO ONE SPLINE.

   NOTE: WHILE THIS ROUTINE CAN HANDLE UP TO 500 SURFACES, ONLY
         100 PROJECTIONS ARE ALLOWED PER CURVE. (THIS LIMIT IS
         SET DOWN IN _SPLINE_MERGE.GRS)

T

_TABLET_INPUT.GRS Download: Source File
   THIS PROGRAM READS IN TABLET DATA FROM THE NUMONICS TABLET

   OUTPUTS: KEY -- A VALUE FROM -5 TO 16 INDICATING DIGITIZER/
                   FUNCTION KEYBOARD INPUT. (0-16 ARE KEYS ON
                   DIGITIZER, 0-15 REPRESENT 0-F ON "MOUSE", 16
                   IS THE DIGITIZER PEN). -5 TO -1 IS THE VALUE
                   OF "RESPONSE" IF A DIGITIZER KEY WAS NOT
                   HIT (-5 -- DATA SENT, JUST NO KEY DATA,
                   -3 -- NO DATA SENT, -2 -- "TERMINATE",
                   -1 -- "REJECT")

            XPOS - X-AXIS LOCATION, 0[XPOS[99.999 OR -99.999[XPOS[0
                   OR ANYWHERE IN BETWEEN, DEPENDING ON ORIGIN.

            YPOS - Y-AXIS LOCATION, SAME RANGE AS XPOS
_TABLET_NORM.GRS Download: Source File
   NORMALIZES TABLET INPUT DATA (SCALE, REF.TO ZERO POINT)
_TAPPED_HOLE.GRS Download: Source File

_TEMPLATE_MATCH.GRS Download: Source File
   THIS ROUTINE USES THE OUTPUT FROM _TEMPLATE_SETUP.GRS TO DO TEMPLATE
   MATCHING IN GRIP. TO SPEED UP THE PROCESS, VARIOUS "ACELLERATORS" ARE
   USED: STRING LENGTH CHECKING IS USED TO ELIMINATE STRINGS THAT
   ARE TOO SHORT TO MATCH, AND VARIOUS SUBSTRING MATCHES ARE USED TO
   ELIMINATE SEARCH TIME.

   (SEE TEMPLATE_SETUP FOR A LIST OF PARAMTERS & VALUES)
_TEMPLATE_SETUP.GRS Download: Source File
   THIS SUBROUTINE SETS UP THE TEMPLATE PARAMETERS. IT IS CALLED
   ONCE, AFTER THE TEMPLATE IS ENTERED, BUT BEFORE IT IS USED FOR
   MATCHING.

   SOME PERFORMANCE GAINS CAN BE HAD BY:
     SKIPPING TEMPLATE MATCHING ENTIRELY AND ASSUMING A MATCH WHEN MODE = -1,
     AND ATTEMPTING AN EXACT MATCH AND SKIPPING THE TEMPLATE MATCHING ROUTINE
     WHEN MODE = 0.
_TERMINATOR.GRS Download: Source File
      THIS SUBPROGRAM GENERATES AN ARROW,DOT,
      TILDE ON THE END OF A LINE, ARC, CONIC, OR
      SPLINE
_TEXT_EDITOR.GRS Download: Source File
 ABSTRACT: PERFORM TEXT EDITING WITHIN GRIP.
            In it's current state, it is used as sub-program but it can
            also run as a main by editing the first and last line
_TICK.GRS Download: Source File
 Called by:
   fasteners.grs
_TIMER.GRS Download: Source File
   This routine is used to time processes within a GRIP program. It
   was originally written to time different programming techniques
   for a talk at the September User's meeting.

   SCRFIL should be set to a scratch file number that is not
   used by the calling routine. It is not used until this routine
   is called with MODSTR set to END.

   MODSTR is used to control how the timing process is run. Possible
          values are: START    - used to reset log files & start timing
                      INTERVAL - used to time several steps in a process
                      END      - finishes timing & generates listing
                                 of timing intervals.

   MESSGX contains the message that should be associated with a given
          process, such as "STARTING SURFACE GENERATION". This string
          should be 103 characters or less for 132 char display or
          53 characters or less for 80 column output.

   DSPMOD if set to &YES, outputs timing info, in real time, to the
          ugii window. (This window is usually in the background)

   EVENTC Event count - this number is used to determine a processing
          rate. If zero, it is ignored.

   SRESP  Subroutine Response variable. Set by this routine to
          1=Parameter Error, 2=Failure, 3=Success.
_TIME_TO_COMP.GRS Download: Source File
   THIS SUBROUTINE CONVERTS A TIME STRING TO COMPUTATIONAL TIME.
   FUNCTIONAL OPERATION SIMILAR TO UF3611.OB, EXCEPT FORMULA FOR
   CTIME IS HOURS*3600+MINUES*60+SECONDS. DIVIDE THIS ROUTINE'S
   COMPUTATIONAL TIME BY SIX TO USE WITH MCAUTO'S ROUTINES)

   STRING SIZE (CHARS)  FORMAT EXPECTED
       4       HHMM     (COMPRESSED HOURS:MINUTES)
       5       HH:MM    (STANDARD HOURS:MINUTES)
       6       HHMMSS   (COMPRESSED HOURS:MINUTES:SECONDS)
       8       HH:MM:SS (STANDARD HOURS:MINUTES:SECONDS)
       9       HHH:MM:SS (ELAPSED TIME HOURS:MINUTES:SECONDS)
_TIME_TO_CONV.GRS Download: Source File
   THIS SUBROUTINE CONVERTS A COMPUTATIONAL TIME TO A TIME STRING
   FUNCTIONAL OPERATION SIMILAR TO UF3610.OB, EXCEPT FORMULA FOR
   CTIME IS HOURS*3600+MINUES*60+SECONDS. MULTIPLY MCAUTO'S
   COMPUTATIONAL TIME BY SIX TO USE THIS ROUTINE.

 TFORMAT VALUE  FORMAT
      1         HHMM     (COMPRESSED HOURS:MINUTES)
      2         HH:MM:SS (STANDARD HOURS:MINUTES:SECONDS)
      3         HH:MM    (STANDARD HOURS:MINUTES)
      4         HHMMSS   (COMPRESSED HOURS:MINUTES:SECONDS)
      5         HHH:MM:SS (ELAPSED TIME HOURS:MINUTES:SECONDS)
_TRANSITION_SPLINE.GRS Download: Source File
   THIS ROUTINE CREATES A TRANSITION SPLINE BETWEEN TWO CURVES,
   WHILE PRESERVING TANGENCIES, ETC.

   THE MIDPNT ENTITY CAN BE ONE OF THREE VALUES: NULL - MEANING
   THERE IS NO MID-POINT, A POINT, TO BE USED AS A MID POINT IN
   THE RESULTING SPLINE, AND A GROUP OF UP TO 10 POINTS TO CONTROL
   THE TRANSITION SPLINE EVEN MORE PRECISELY.

U

_U.GRS Download: Source File
   THIS SUBPROGRAM GENERATES THE LEADER
   ORIGIN FOR A WELD SYMBOL
_UCASE.GRS Download: Source File
   THIS SUBROUTINE CONVERTS A STRING TO ALL UPPERCASE.
   IT IS USED IN UNIX FILENAMES BEFORE DISPLAYING ON UG MENUS.
_UF3610A.GRS Download: Source File
   THIS ROUTINE IS AN ENHANCED VERSION OF UF3610.OB
   IT CONVERTS COMPUTATION DATE & TIME DATA TO CONVENTIONAL
   DATE & TIME STRINGS. IT ALLOWS FROM SEVERAL FORMATS. SEE
   DOCUMENTATION ON DATE_TO_CONV.F77 AND TIME_TO_CONV.F77
   FOR MORE INFORMATION. IT IS 100% MCAUTO COMPATIBLE.
_UF3611A.GRS Download: Source File
   THIS ROUTINE IS AN ENHANCED VERSION OF UF3611.OB
   IT CONVERTS CONVENTIONAL DATE & TIME STRINGS TO COMPUTATIONAL
   DATE & TIME DATA. IT ALLOWS FROM SEVERAL FORMATS. SEE
   DOCUMENTATION ON _DATE_TO_COMP.GRS AND _TIME_TO_COMP.GRS
   FOR MORE INFORMATION. IT IS 100% MCAUTO COMPATIBLE.
_UG_VERSION_MAP.GRS Download: Source File
   THIS ROUTINE DETERMINE THE 3-4 DIGIT VERSION NUMBER FROM A UG VERSION
   NAME OR VICE VERSA.

   THE VERSION NUMBER IS THE LAST PART OF THE NAME OF THE DIRECTORY:
   FOR 9.1, IT WOULD BE 091, FOR 10.5 IT WOULD BE 105 AND SO ON.

   THE VERSION NAME IS THE VALUE DISPLAYED BY &RELNO OR &UGVERS
_UPPERCASE.GRS Download: Source File
    This code will receive a string and then return the string
    converted to uppercase.

V

_VALF.GRS Download: Source File
   THIS ROUTINE CONVERTS NUMBERS TO STRINGS, WITH ERROR CHECKING.
_VEE.GRS Download: Source File

_VEE2.GRS Download: Source File

_VERFT.GRS Download: Source File
 Called by:
   str_ft_in.grs

W

_WASHER.GRS Download: Source File

_WELD_ORIGIN.GRS Download: Source File
      THIS SUBPROGRAM GENERATES THE LEADER
      ORIGIN FOR A WELD SYMBOL
_WELD_ORIGIN2.GRS Download: Source File
   THIS SUBPROGRAM GENERATES THE LEADER
   ORIGIN FOR A WELD SYMBOL

X

_XF_REPOSITION.GRS Download: Source File
   THIS SUBROUTINE CREATES A MATRIX TO REPOSITION FROM ONE
   COORDINATE SYSTEM TO ANOTHER. IT WORKS BY USING THE
   AXIS VECTORS AND ORIGIN OF THE SECOND CSYS WITH RESPECT TO
   THE FIRST. IF THE SUPPLIED ENTITY IS DEFINED, IT WILL
   TRANSFORM IT.

   CSYS1  - REFERENCE COORDINATE SYSTEM
   CSYS2  - DESTINATION COORDINATE SYSTEM
   MAT0   - TRANSFORMATION MATRIX
   GRP    - GROUP/ENTITY TO BE TRANSFORMED
            (SET TO &NULENT IF JUST "MAT0" IS NEEDED)
   GRP2   - NEW GROUP (IF COPIED)
   MOVESW - SWITCH TO DETERMINE IF TRANSFORM IS A MOVE
            (SET TO &YES FOR MOVE, &NO FOR COPY)
   SRESP  - SUBROUTINE RESPONSE
            (2=TERMINATE/ERROR, 3=ENTRY COMPLETE/SUCCESS)

 NOTE: THIS SUBROUTINE WAS COPIED FROM V10 (PRE-RELEASE) OF
       THE GRIP INTERNATIONAL LIBRARY.
_XF_ROTATE.GRS Download: Source File
   THIS SUBROUTINE CREATES A MATRIX THAT WILL ROTATE ENTITIES ABOUT
   AN ARBITRARY POINT.  THE PLANE OF ROTATION IS DETERMINED BY RPLN
   IF THE SUPPLIED ENTITY IS DEFINED, IT WILL TRANSFORM IT.

   XC, YC, ZC - COORDINATES OF POINT TO ROTATE ABOUT
   ANG    - ANGLE TO ROTATE
   RPLN   - PLANE OF ROTATION: (1-XY, 2-YZ, 3-ZX)
   MAT0   - TRANSFORMATION MATRIX
   GRP    - GROUP/ENTITY TO BE TRANSFORMED
            (SET TO &NULENT IF JUST "MAT0" IS NEEDED)
   GRP2   - NEW GROUP (IF COPIED)
   MOVESW - SWITCH TO DETERMINE IF TRANSFORM IS A MOVE
            (SET TO &YES FOR MOVE, &NO FOR COPY)
   SRESP  - SUBROUTINE RESPONSE
            (2=TERMINATE/ERROR, 3=ENTRY COMPLETE/SUCCESS)

 NOTE: THIS SUBROUTINE WAS COPIED FROM V10 (PRE-RELEASE) OF
       THE GRIP INTERNATIONAL LIBRARY.
_XF_SCALE.GRS Download: Source File
   THIS SUBROUTINE CREATES A MATRIX THAT WILL SCALE ENTITIES ABOUT
   AN ARBITRARY POINT.  IF ONLY XS IS NON-ZERO, THE SCALING OPERATION
   IS DONE USING ONLY THIS FIRST SCALE.  IF THE SUPPLIED ENTITY IS
   DEFINED, IT WILL TRANSFORM IT.

   XC, YC, ZC - COORDINATES OF POINT TO SCALE ABOUT
   XS, YS, ZS - SCALE FACTORS
                (TO SCALE USING ONE FACTOR, SET YS & ZS
                TO ZERO)
   MAT0   - TRANSFORMATION MATRIX
   GRP    - GROUP/ENTITY TO BE TRANSFORMED
            (SET TO &NULENT IF JUST "MAT0" IS NEEDED)
   GRP2   - NEW GROUP (IF COPIED)
   MOVESW - SWITCH TO DETERMINE IF TRANSFORM IS A MOVE
            (SET TO &YES FOR MOVE, &NO FOR COPY)
   SRESP  - SUBROUTINE RESPONSE
            (2=TERMINATE/ERROR, 3=ENTRY COMPLETE/SUCCESS)

 NOTE: THIS SUBROUTINE WAS COPIED FROM V10 (PRE-RELEASE) OF
       THE GRIP INTERNATIONAL LIBRARY.
_XSPAWN_COMMAND.GRS Download: Source File
   THIS ROUTINE PERFORMS THE XRUN/XSPAWN COMMAND. (THE ACTUAL COMMAND USED
   IS DEPENDENT ON THE VERSION OF UG THAT IS USED TO COMPILE THIS ROUTINE)
   IT DOES NOT RETURN ANY RESULTS OR VERIFY OPERATION OTHER THAN TO TRAP
   FAILURE.

   THIS VERSION IS USED TO RUN A UNIX COMMAND.
_XSPAWN_SCRIPT.GRS Download: Source File
   THIS ROUTINE PERFORMS THE XRUN/XSPAWN COMMAND. (THE ACTUAL COMMAND USED
   IS DEPENDENT ON THE VERSION OF UG THAT IS USED TO COMPILE THIS ROUTINE)
   IT DOES NOT RETURN ANY RESULTS OR VERIFY OPERATION OTHER THAN TO TRAP
   FAILURE.

   THIS VERSION IS USED TO RUN A UNIX SCRIPT. IT FIRST CHANGES PERMISSION
   ON THE SCRIPT TO "rwx------" (700) THEN EXECUTES IT.
_XYROT_TRACE.GRS Download: Source File
   THIS ROUTINE GENERATES TRACE CURVES FOR AN XY ROTATION