Error: too many arguments - AutoLISP

Узнай цену своей работы

Формулировка задачи:

При отладке показывает на кусок кода:
Листинг программы
  1. (IF (= J 1)
  2. (SETQ TT1 BT ; координаты первого угла офиса
  3. TT2 T1 ; координаты второго угла офиса
  4. TT3 T2 ; координаты третьего угла офиса
  5. TT4 T3 ; координаты четвертого угла офиса
  6. )
  7. ; определение координат точек для ввода текста
  8. (SETQ BTT (POLAR BT (+ UR (/ PI 2.7)) (/ H 2))
  9. BTX (POLAR BT (+ UR (/ PI 3.7)) (/ H 1.7))
  10. H1 (ITOA H)
  11. D1 (ITOA D)
  12. TTT " "
  13. TTT (IF (> J 2)
  14. (STRCAT D1 "*" H1)
  15. )
  16. J (+ J 1)
  17. )
  18. ; введение текстовой информации в прямоугольник
  19. (COMMAND "TEXT"
  20. "C"
  21. BTT
  22. (/ D 5)
  23. (+ 90 UG)
  24. TXT
  25. "TEXT"
  26. "C"
  27. BTX
  28. " "
  29. " "
  30. TTT
  31. )
  32. )
Вот вся запись
Листинг программы
  1. (DEUN BOX
  2. (X Y D H TXT UG)
  3. ; определение координат вершин прямоугольника
  4. (SETQ BT (LIST X Y) ; базовая точка офиса (мебели)
  5. UR (* PI (/ UG 180.0)) ; преобразование градусов в радианы
  6. T1 (POLAR BT (+ UR (/ PI 2)) H)
  7. T2 (POLAR T1 UR D)
  8. T3 (POLAR BT UR D)
  9. )
  10. ; создание изображения прямоугольника
  11. (COMMAND "LINE" BT T1 T2 T3 BT " ")
  12. (IF (= J 1)
  13. (SETQ TT1 BT ; координаты первого угла офиса
  14. TT2 T1 ; координаты второго угла офиса
  15. TT3 T2 ; координаты третьего угла офиса
  16. TT4 T3 ; координаты четвертого угла офиса
  17. )
  18. ; определение координат точек для ввода текста
  19. (SETQ BTT (POLAR BT (+ UR (/ PI 2.7)) (/ H 2))
  20. BTX (POLAR BT (+ UR (/ PI 3.7)) (/ H 1.7))
  21. H1 (ITOA H)
  22. D1 (ITOA D)
  23. TTT " "
  24. TTT (IF (> J 2)
  25. (STRCAT D1 "*" H1)
  26. )
  27. J (+ J 1)
  28. )
  29. ; введение текстовой информации в прямоугольник
  30. (COMMAND "TEXT"
  31. "C"
  32. BTT
  33. (/ D 5)
  34. (+ 90 UG)
  35. TXT
  36. "TEXT"
  37. "C"
  38. BTX
  39. " "
  40. " "
  41. TTT
  42. )
  43. )
  44. (DEFUN OFFICE (X Y LDD LD) ; создание плана офиса
  45. (SETVAR "CMDECHO" 0) ; отключение эха команд
  46. (SETVAR "BLIPMODE" 0) ; отключение изображения маркера
  47. (COMMAND "LIMITS" "0,0" "192,168" "ZOOM" "A")
  48. (SETQ N (NTH 0 LDD) ; номер угла отсчета двери
  49. D2 (NTH 1 LDD) ; расстояние от двери до угла
  50. HD (NTH 2 LDD)
  51. ) ; ширина двери
  52. (SETQ J 1)
  53. ; цикл изображения плана офиса и мебели в нем
  54. (FOREACH EL LD
  55. (SETQ X (NTH 0 EL) ; координаты по оси X
  56. Y (NTH 1 EL) ; координаты по оси Y
  57. D (NTH 2 EL) ; длина офиса (мебели)
  58. H (NTH 3 EL) ; ширина офиса (мебели)
  59. TXT (NTH 4 EL) ; название мебели
  60. U (NTH 5 EL)
  61. ) ; угол установки мебели, градусы
  62. (IF (EQ J 1)
  63. (SETQ X1 X)
  64. )
  65. (IF (EQ J 2)
  66. (SETQ H0 (- X X1))
  67. ) ; толщина стены офиса
  68. (BOX X Y D TXT U) ; изображение офиса (мебели)
  69. )
  70. ; определение координат расположения точек двери
  71. (COND ((= N 1)
  72. (SETQ TR1 (POLAR TT1 (/ PI 2) D2)
  73. TR2 (POLAR TR1 (/ PI 2) HD)
  74. TP1 (POLAR TR1 0 HO)
  75. TP2 (POLAR TR2 0 HO)
  76. )
  77. )
  78. ((= N 2)
  79. (SETQ TR1 (POLAR TT2 0 D2)
  80. TR2 (POLAR TR1 0 HD)
  81. TP1 (POLAR TR1 (* (/ 3 2.0) PI) HO)
  82. TP2 (POLAR TR2 (* (/ 3 2.0) PI) HO)
  83. )
  84. )
  85. ((= N 3)
  86. (SETQ TR1 (POLAR TT3 (* (/ 3 2.0) PI) D2)
  87. TR2 (POLAR TR1 (* (/ 3 2.0) PI) HD)
  88. TP1 (POLAR TR1 PI HO)
  89. TP2 (POLAR TR2 PI HO)
  90. )
  91. )
  92. ((= N 4)
  93. (SETQ TR1 (POLAR TT4 PI D2)
  94. TR2 (POLAR TR1 PI HD)
  95. TP1 (POLAR TR1 (/ PI 2) HO)
  96. TP2 (POLAR TR2 (/ PI 2) HO)
  97. )
  98. )
  99. (SETQ TR3 (POLAR TP1 (- (/ PI 4) (* (/ PI2) (- N1))) HD))
  100. ; изображение двери
  101. (COMMAND "BREAK" TR1 TR2
  102. ; удаление части стенки офиса
  103. "BREAK" TP1 TP2 ; удаление части стенки офиса
  104. "LINE" TP1 TR1 "" ; соединение кончиков стен офиса
  105. "LINE" TP2 TR2 "" ; соединение кончиков стен офиса
  106. "LINE" TP1 TR3 "" ; изображение открытой двери
  107. "ARC" TR3 "END" TP2 TR2
  108. ; изображение следа двери
  109. )
  110. (OFFICE
  111. 24
  112. 24
  113. '(3 10 30)
  114. '((24 24 144 120 " " 0)
  115. (28 28 136 112 " " 0)
  116. (29 29 24 60 "Стол" 0)
  117. (80 29 30 60 "Доска" 0)
  118. (145 29 18 36 "Шкаф" 0)
  119. (56 48 24 "Кресло" 0)
  120. (132 100 12 18 "Стул" 206)
  121. (140 56 16 24 "Кресло" 162)
  122. )
  123. )
  124.  
  125. )
  126. )
  127. )

Решение задачи: «Error: too many arguments»

textual
Листинг программы
  1. (defun box

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы