home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 13 / 13.iso / p / p034 / 2.ddi / ARCA / USERDEF / CROT.CCC < prev    next >
Encoding:
Text File  |  1993-04-18  |  1.7 KB  |  118 lines

  1. %crot.ccc
  2. * update 21.6.92 free axis, 5.9.91 order of prompts
  3. * copy selected entities by rotation.
  4. :i
  5. * check geometric mode activity (c100=' ')
  6. ascii c100 r13
  7. if r13 eq 32 :a
  8. mess illegal command, use \GEOM first !
  9. getwe
  10. goto :i
  11. :a
  12. r4=0
  13. mess rotation axis-x,y,z, <ENTER>-free axis
  14. getc+ c2 1
  15. if r93 ne 0 :B
  16. ascii c2 r7
  17. if r7 lt 120 :a
  18. if r7 gt 122 :a
  19. r9=0;c18=c2
  20. mess center of rotation
  21. getp p1
  22. goto :b
  23. :B
  24. c1='5';c17=c1
  25. r9=1
  26. mess first point of axis
  27. getp p3
  28. mess second point of axis
  29. rubber line
  30. getp p4
  31. rubber off
  32. :b
  33. mess rotation angle (+/- 0-360)
  34. getr r5
  35. if r5 lt -360 :b
  36. if r5 gt 360  :b
  37. r2 = r5
  38. :c
  39. mess number of copies <1>
  40. r1=1
  41. def r1
  42. getr r1
  43. if r1 lt 1 :c
  44. if r9 eq 0 :C
  45. c2 8 = 'tempsave'
  46. c1='2'
  47. ovl autos
  48. i50=1
  49. c1=c17
  50. ovl crtgsm
  51. i50=0
  52. if r4 eq 0 :D
  53. mess could not create gsm file
  54. getwe
  55. goto :z
  56. :C
  57. c2 8 = 'tempsave'
  58. c1='2'
  59. ovl autos
  60. c1 = '2'
  61. :D
  62. c2=c18
  63. ovl copy
  64. if r4 ne 999 :d
  65. ovl copymw
  66. if r1 eq 100 :e
  67. if r1 eq 200 :e
  68. if r1 ne 300 :f
  69. :e
  70. ovl tupdt
  71. :f
  72. if r1 eq 0 :d
  73. if r1 eq 1 :1
  74. if r1 eq 3 :3
  75. if r1 eq 4 :4
  76. if r1 eq 6 :6
  77. :1
  78. mess Illegal operation, problem in data base
  79. getwe
  80. goto :z
  81. :3
  82. mess could not create temporary file
  83. getwe
  84. goto :z
  85. :4
  86. mess could not open temporary file
  87. getwe
  88. goto :z
  89. :6
  90. mess could not find T linked entity
  91. getwe
  92. goto :z
  93. :d
  94. mess keep the result ?
  95. getyn r1
  96. if r1 eq 0 :l
  97. goto :Z
  98. :l
  99. c2 8 = 'tempsave'
  100. c10=c117;c11=c118;c12=c119;c13=c120
  101. c14=c121;c15=c122;c16=c123;c17=c124
  102. c1='4'
  103. ovl autos
  104. c20 = 'n'
  105. r19 = (-1.)
  106. c19='l'
  107. * scale (when \nauto) with current position of origin.
  108. c26 = 'z'
  109. i15=1
  110. * no update of screen target.
  111. r67 = 0
  112. command scale
  113. i49=1
  114. :Z
  115. i49=1
  116. repeat :b
  117. :z
  118.