DEFINE Format_fit
  LOCAL F
  LOCAL Ll
  LOCAL Ce
  LOCAL Hf
  LOCAL Df
  READ STRING 'Enter format name' F
  LET F (UPC F)
  INQ_ENV 7
  LET Ll (INQ 101)
  LET Hf ((INQ 102 - Ll)/2)
  LET Ce (Ll+Hf)
  INQ_ENV 6
  IF (F='A4')
    LET Df 297,210
  ELSE_IF (F='A3')
    LET Df 420,297
  ELSE_IF (F='A2')
    LET Df 594,420
  ELSE_IF (F='A1')
    LET Df 841,594
  ELSE_IF (F='A0')
    LET Df 1189,841
  ELSE_IF (F='A')
    LET Df 279.4,215.19
  ELSE_IF (F='B')
    LET Df 431.8,279.4
  ELSE_IF (F='C')
    LET Df 558.8,431.8
  ELSE_IF (F='D')
    LET Df 863.6,558.8
  ELSE_IF (F='E')
    LET Df 1117.6,863.6
  ELSE
    LET Df (Hf*1.1*INQ 4*2)
  END_IF
  LET Df (Df/INQ 2/INQ 4/2)
  WINDOW (Ce - Df) (Ce+Df)
END_DEFINE

DEFINE Circle_center_lines
  LOCAL P
  LOCAL R
  LOCAL C
  LOCAL L
  END
  INQ_ENV 3
  LET C (INQ 201)
  LET L (INQ 301)
  LOOP
    LINE
    RGB_COLOR C
    LINEPATTERN L
    END
    LOOP
      READ PNT 'Identify circle' P
      INQ_ELEM P
    EXIT_IF (INQ 403=
      CIRCLE)
      BEEP
    END_LOOP
    LET P (INQ 101)
    LET R (1.1*INQ 3)
    LINE
    YELLOW
    DOT_CENTER (P - PNT_XY R 0) (P+PNT_XY R 0) (P - PNT_XY 0 R) (P+PNT_XY 0
    R)
    END
  END_LOOP
END_DEFINE

DEFINE Window_move
  LOCAL N
  LOCAL Ll
  LOCAL X
  LOCAL Y
  READ NUMBER 'Enter number (1..9)' N
  INQ_ENV 2
  LET Ll (INQ 101)
  LET X (X_OF (INQ 102 - INQ 101))
  LET Y (Y_OF (INQ 102 - INQ 101))
  WINDOW
  IF (N=1)
    (Ll - PNT_XY X Y) Ll
  ELSE_IF (N=2)
    (Ll - PNT_XY 0 Y) (Ll+PNT_XY X 0)
  ELSE_IF (N=3)
    (Ll+PNT_XY X (- Y)) (Ll+PNT_XY (2*X) 0)
  ELSE_IF (N=4)
    (Ll+PNT_XY (- X) 0) (Ll+PNT_XY 0 Y)
  ELSE_IF (N=6)
    (Ll+PNT_XY X 0) (Ll+PNT_XY (2*X) Y)
  ELSE_IF (N=7)
    (Ll+PNT_XY (- X) Y) (Ll+PNT_XY 0 (2*Y))
  ELSE_IF (N=8)
    (Ll+PNT_XY 0 Y) (Ll+PNT_XY X (2*Y))
  ELSE_IF (N=9)
    (Ll+PNT_XY X Y) (Ll+PNT_XY (2*X) (2*Y))
  ELSE
    END
  END_IF
END_DEFINE

DEFINE T_rot
  LOCAL T
  LOCAL Cp
  LOCAL Sp
  LOCAL A
  LOCAL N
  LOCAL Da
  READ STRING 'Enter text' T
  READ PNT 'Enter center point' Cp
  READ PNT 'Enter start point' Sp
  READ NUMBER 'Enter angle' A
  LET N (LEN T)
  LET Da (A/N)
  LET A (ANG (Sp - Cp))
  LET N 1
  WHILE (N<=LEN T)
    TEXT_ANGLE (A - 90)
    TEXT (SUBSTR T N 1) Sp
    LET A (A - Da)
    LET Sp (Cp+PNT_RA (LEN (Sp - Cp)) A)
    LET N (N+1)
  END_WHILE
  END
  TEXT_ANGLE 0
END_DEFINE

DEFINE Dim_def_2_02
  CURRENT_DIM_UNITS MAIN_DIM MM
  CURRENT_DIM_UNITS MAIN_DIM DEGREE
  CURRENT_DIM_UNITS SEC_DIM NONE
  SELECT_DIM_ARROW FIRST_ARROW RELATIVE 1 FILL_ON ARROW_TYPE
  SELECT_DIM_ARROW SEC_ARROW RELATIVE 1 FILL_ON ARROW_TYPE
  CURRENT_DIM_TEXTS MAIN_NUM FONT 'hp_i3098_v'
  CURRENT_DIM_TEXTS MAIN_NUM ABSOLUTE 3.5
  CURRENT_DIM_TEXTS MAIN_NUM
  YELLOW
  CURRENT_DIM_TEXTS MAIN_NUM RATIO 1
  CURRENT_DIM_TEXTS MAIN_NUM SLANT 0
  CURRENT_DIM_TEXTS MAIN_TOL FONT 'hp_i3098_v'
  CURRENT_DIM_TEXTS MAIN_TOL RELATIVE 0.7
  CURRENT_DIM_TEXTS MAIN_TOL
  YELLOW
  CURRENT_DIM_TEXTS MAIN_TOL RATIO 1
  CURRENT_DIM_TEXTS MAIN_TOL SLANT 0
  CURRENT_DIM_TEXTS SEC_NUM FONT 'hp_i3098_v'
  CURRENT_DIM_TEXTS SEC_NUM RELATIVE 1
  CURRENT_DIM_TEXTS SEC_NUM
  YELLOW
  CURRENT_DIM_TEXTS SEC_NUM RATIO 1
  CURRENT_DIM_TEXTS SEC_NUM SLANT 0
  CURRENT_DIM_TEXTS SEC_TOL FONT 'hp_i3098_v'
  CURRENT_DIM_TEXTS SEC_TOL RELATIVE 0.7
  CURRENT_DIM_TEXTS SEC_TOL
  YELLOW
  CURRENT_DIM_TEXTS SEC_TOL RATIO 1
  CURRENT_DIM_TEXTS SEC_TOL SLANT 0
  CURRENT_DIM_TEXTS PREFIX FONT 'hp_i3098_v'
  CURRENT_DIM_TEXTS PREFIX RELATIVE 1
  CURRENT_DIM_TEXTS PREFIX
  YELLOW
  CURRENT_DIM_TEXTS PREFIX RATIO 1
  CURRENT_DIM_TEXTS PREFIX SLANT 0
  CURRENT_DIM_TEXTS POSTFIX FONT 'hp_i3098_v'
  CURRENT_DIM_TEXTS POSTFIX RELATIVE 1
  CURRENT_DIM_TEXTS POSTFIX
  YELLOW
  CURRENT_DIM_TEXTS POSTFIX RATIO 1
  CURRENT_DIM_TEXTS POSTFIX SLANT 0
  DIM_FORMAT MM '1.11'
  DIM_FORMAT CM '1.11'
  DIM_FORMAT MT '1.11'
  DIM_FORMAT KM '1.11'
  DIM_FORMAT INCHES '1.111'
  DIM_FORMAT FRACT_INCH 64 '1.111'
  DIM_FORMAT FT_FR_INCH 64 '1.111'
  DIM_FORMAT FT_FR_IN_SIGN 64 '1.111'
  DIM_FORMAT FT_FR_IN_TEXT 64 '1.111'
  DIM_FORMAT DEGREE '1.11'
  DIM_FORMAT RADIAN '1.11'
  DIM_FORMAT DEG_MIN_SEC '1.11'
  DIM_TEXT_ORIENTATION PARALLEL
  DIM_TEXT_LOCATION ABOVE
  DIM_LINES_COLOR
  YELLOW
  DIM_FRAME OFF
  DIM_BROKEN OFF
  DIM_DATUM_STEP 8
  DIM_MIN_SPACE 10
  DIM_CATCH_RANGE 2
  DIM_EXTENSION_LENGTH 2
  DIM_TEXT_GAP 2
  DIM_TEXT_SPACE 2
  DIM_OFFSET_LINE 2
  DIM_OFFSET_POINT 0
END_DEFINE

DEFINE Execute
  PARAMETER Statement
  LET Statement (VAL Statement) Statement
END_DEFINE

