Не получается :( need help..
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Не получается :( need help..

Не получается :( need help..

Ответ
Поиск в этой теме
Непрочитано 25.05.2005, 22:52 #1
Не получается :( need help..
yogeny
 
Регистрация: 12.05.2005
Сообщений: 8

Не получается начертить следующий чертёж (прикреплен jpg файл)
Помогите найти ошибку, или поделитесь своей версией :wink: пожалуйста! до утра, очень нужно..



(defun C:rabota()

(command "osnap" "none")

(command "-layer" "n" "kontur" "s" "kontur" "c" "green" """")

(setq t1 (getpoint "\n Vvedite to4ku priviazyvanija:" ))

(setq R1 (getreal "\n Vvedite radius R1<15-25>:"))

(if (= R1 nil)
(setq R1 R1))

(while
(or (<= R1 15) (>= R1 25))
(prompt "\n ")

(setq R1 (getdist "\n Vvedite sledujushij radius R1<10-25>:"))

)

(setq R2 (getreal "\n Vvedite radius R2<10-20>:"))

(if (= R2 nil)(setq R2 R2))

(while
(or (<= R2 10) (>= R2 20))
(prompt "\n ")

(setq R2 (getdist "\n Vvedite sledujushij radius R2<10-20>:"))

)

(command "circle" t1 R1 "")

(command "circle" t1 R2 "")

(setq t2 (polar t1 0.0 R1))

(setq t3 (polar t2 (* pi 1.5) 50))
(setq t4 (polar t1 pi R1))
(setq t5 (polar t4 (* pi 1.5) 50))

(command "line" t2 t3 "")

(command "line" t4 t5 "")

(setq t6 (polar t1 (* pi 1.5) 80))

(setq c1 (polar t6 0.0 35))

(setq c2 (polar t6 pi 35))

(command "circle" c1 R2"" )

(command "circle" c2 R2"" )

(setq t7 (polar c1 pi R1))

(setq t8 (polar c2 0.0 R1))

(command "line" t7 t8 "")

(setq f1 (polar c1 (* pi 0.5) R1))

(setq f2 (polar c2 (* pi 0.5) R1))

(setq p1 (polar c1 (* pi 1.5) R1))

(setq p2 (polar c2 (* pi 1.5) R1))

(command "ARC" t7 f1 p1 "")

(command "ARC" t8 f2 p2 "")

(setq R3 (getreal "\n Vvedite radius R3<10-20>:"))

(if (= R3 nil)(setq R3 R3))

(while
(or (<= R3 10) (>= R3 20))
(prompt "\n ")

(setq R3 (getdist "\n Vvedite sledujushij radius R3<10-20>:"))

)

(command "fillet" t3 f1 R3 "")

(command "fillet" t5 f2 R3 "")

(setq t9 (polar p1 (* pi 1.5) 10))

(setq t10 (polar p2 (* pi 1.5) 10))

(command "line" p1 t9"")

(command "line" p2 t10 "")

(setq t11 (polar t1 (* pi 1.5) 120))

(setq t12 (polar t11 0.0 25))

(setq t13 (polar t11 pi 25))

(command "line" t12 t13 "")

(command "line" t12 t9 "")

(command "line" t13 t10 "")

(command "ARC" "C" c1 f1 t7 "")

(command "ARC" "C" c2 t8 f2 "")

(command "-layer" "n" "razmery"

"s" "dannye" "c" "yellow" """")

(setq m1 (polar t1 ( * pi 1.5) 140))

(setq m2 (polar c2 ( * pi 0.6) (+ 10 R1)))

(setq d1 (polar c2 ( * pi 0.6) R1))

(setq m3 (polar t1 ( * pi 0.3) (+ 10 R1)))

(setq d2 (polar t1 ( * pi 0.3) R1))

(setq d3 (polar t1 ( * pi 0.6) R2))

(setq m4 (polar t1 ( * pi 0.6) (+ 20 R2)))

(command "dimdiameter" d2 m3 "")

(command "dimlinear" t9 t10 m1 "")

(command "dimradius" d1 m2 "")

(command "dimdiameter" d3 m4 "")

(setq m5 (polar t1 0.0 60))

(setq x1 (polar c1 0.0 R1))

(command "dimlinear" x1 t1 m5 "")

(setq m6 (polar t1 ( * pi 1.5) 130))

(command "dimlinear" t9 t12 m6 "")

(command "dimlinear" t10 t13 m6 "")

(setq m7 (polar t11 0.0 20))

(setq m8 (polar t11 pi 45))

(command "dimlinear" t12 t9 m7 "")

(command "dimlinear" t13 t10 m8 "")

(command "layer" "n" "asys" "c" "red" "" "")

(command "_.linetype" "_s" "acad_iso10w100" "")

(setq a1 (polar t1 (* pi 0.5)(+ 5 R1)))

(setq a2 (polar t1 (* pi 1.5) 125))

(command "line" a1 a2 "")

(setq a3 (polar t1 0.0 (+ 5 R1)))

(setq a4 (polar t1 pi (+ 5 R1)))

(command "line" a3 a4 "")

(setq a5 (polar c1 0.0 (+ 5 R1)))

(setq a7 (polar c1 pi (+ 5 R1)))

(setq a6 (polar c2 pi (+ 5 R1)))

(setq a8 (polar c2 0.0 (+ 5 R1)))

(setq a9 (polar c1 ( * pi 0.5) (+ 5 R1)))

(setq a10 (polar c2 ( * pi 0.5) (+ 5 R1)))

(command "line" a5 a7 "")

(command "line" a6 a8 "")

(command "line" a9 p1 "")

(command "line" a10 p2 "")


(command "_REGENAll")
)
[ATTACH]1117047142.jpg[/ATTACH]
Просмотров: 3376
 
Непрочитано 26.05.2005, 00:07
#2
VG

Конструктор
 
Регистрация: 21.05.2004
Петрозаводск
Сообщений: 148


попробуй самый простоой способ поиска ошибки - копируешь построчно в командную строку и отслеживаешь результат. Копируешь ессно выполняемые команды (defun не надо) =))) и в командную строку Автокада, а не системы. Так, на всякий случай сказал =)))
VG вне форума  
 
Автор темы   Непрочитано 26.05.2005, 00:20
#3
yogeny


 
Регистрация: 12.05.2005
Сообщений: 8


ну, с командной строкой это ты хорошо пошутил А способ не помогает :roll:
yogeny вне форума  
 
Непрочитано 26.05.2005, 00:28
#4
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


Мне категорически не нравится строка
Цитата:
(if (= R1 nil)
(setq R1 R1))
Если, как обычно, требуется ввести предыдущее значение, то должно быть:

(setq R1 (getreal (strcat "\n Vvedite radius R1<15-25>: <"
(if (= R0 nil) "" (rtos R0))
">")))
(if (= R1 nil) (setq R1 R0) (setq R0 R))

Аналогично для R2.
Лентяй вне форума  
 
Непрочитано 26.05.2005, 00:57
#5
{Smirnoff}

Инженер по системам безопасности
 
Регистрация: 23.11.2003
Рига
Сообщений: 1,099


Вообще "косяк на косяке" или "артилерия не стреляла по 33-м причинам". Кое как привел в порядок, но конечно не все. Попробуй дальше сам разобратся с простановкой размеров.
[ATTACH]1117054634.gif[/ATTACH]
Даже не буду перечислять все ошибки, просто сравни внимательно. Ну и конечно... Нет воздержусь, а то пол страницы придется написать 8)
Код:
[Выделить все]
(defun C:rabota(/ A1 A10 A2 A3 A4 A5 A6 A7 A8 A9
		C1 C2 D1 D2 D3 F1 F2 M1 M2 M3 M4
		M5 M6 M7 M8 P1 P2 R1 R2 R3 T1 T10
		T11 T12 T13 T2 T3 T4 T5 T6 T7 T8
		T9 X1)

(command "osmode" 0) 

(command "-layer" "_n" "kontur" "_s" "kontur"

	 "_c" "green" "kontur" "" "")


  (setq t1(getpoint "\n Vvedite to4ku priviazyvanija:" ))
  (while(or(null R1)(< R1 15)(> R1 25))
    (setq R1(getreal "\n Vvedite radius R1<15-25>:"))
    ); end while
  (while(or(null R2)(< R2 10)(> R2 20))
    (setq R2(getreal "\n Vvedite radius R2<10-20>:"))
    ); end while
  (while(or(null R3)(< R3 10)(> R3 20))
    (setq R3(getreal "\n Vvedite radius R3<10-20>:"))
    ); end while
    

(command "_.circle" t1 R1 "")

(command "_.circle" t1 R2 "")

(setq t2 (polar t1 0.0 R1))

(setq t3 (polar t2 (* pi 1.5) 50))
(setq t4 (polar t1 pi R1))
(setq t5 (polar t4 (* pi 1.5) 50))

(command "_.line" t2 t3 "")

(command "_.line" t4 t5 "")

(setq t6 (polar t1 (* pi 1.5) 80))

(setq c1 (polar t6 0.0 35))

(setq c2 (polar t6 pi 35))

(command "_.circle" c1 R2"" )

(command "_.circle" c2 R2"" )

(setq t7 (polar c1 pi R1))

(setq t8 (polar c2 0.0 R1))

(command "_.line" t7 t8 "")

(setq f1 (polar c1 (* pi 0.5) R1))

(setq f2 (polar c2 (* pi 0.5) R1))

(setq p1 (polar c1 (* pi 1.5) R1))

(setq p2 (polar c2 (* pi 1.5) R1))

(command "_.arc" t7 f1 p1 "")

(command "_.arc" t8 f2 p2 "")

(command "_.fillet" t3 f1)

(command "_.fillet" t5 f2)

(setq t9 (polar p1 (* pi 1.5) 10))

(setq t10 (polar p2 (* pi 1.5) 10))

(command "_.line" p1 t9 "")

(command "_.line" p2 t10 "")

(setq t11 (polar t1 (* pi 1.5) 120))

(setq t12 (polar t11 0.0 25))

(setq t13 (polar t11 pi 25))

(command "_.line" t12 t13 "")

(command "_.line" t12 t9 "")

(command "_.line" t13 t10 "")

(command "_.ARC" "_C" c1 f1 t7 "")

(command "_.ARC" "_C" c2 t8 f2 "")

(command "-layer" "_n" "razmery" "_c" "yellow"
	 "razmery" "_S" "razmery" "" "")

(setq m1 (polar t1 ( * pi 1.5) 140))

(setq m2 (polar c2 ( * pi 0.6) (+ 10 R1)))

(setq d1 (polar c2 ( * pi 0.6) R1))

(setq m3 (polar t1 ( * pi 0.3) (+ 10 R1)))

(setq d2 (polar t1 ( * pi 0.3) R1))

(setq d3 (polar t1 ( * pi 0.6) R2))

(setq m4 (polar t1 ( * pi 0.6) (+ 20 R2)))

(command "_dimdiameter" d2 m3 "")

(command "_dimlinear" t9 t10 m1 "")

(command "_dimradius" d1 m2 "")

(command "_dimdiameter" d3 m4 "")

(setq m5 (polar t1 0.0 60))

(setq x1 (polar c1 0.0 R1))

(command "_dimlinear" x1 t1 m5 "")

(setq m6 (polar t1 ( * pi 1.5) 130))

(command "_dimlinear" t9 t12 m6 "")

(command "_dimlinear" t10 t13 m6 "")

(setq m7 (polar t11 0.0 20))

(setq m8 (polar t11 pi 45))

(command "_dimlinear" t12 t9 m7 "")

(command "_dimlinear" t13 t10 m8 "")

(command "__layer" "_n" "asys" "_c" "red"
	 "asys" "_s" "asys" "" "")

(command "_.linetype" "_s" "acad_iso10w100" "")

(setq a1 (polar t1 (* pi 0.5)(+ 5 R1)))

(setq a2 (polar t1 (* pi 1.5) 125))

(command "_.line" a1 a2 "")

(setq a3 (polar t1 0.0 (+ 5 R1)))

(setq a4 (polar t1 pi (+ 5 R1)))

(command "_.line" a3 a4 "")

(setq a5 (polar c1 0.0 (+ 5 R1)))

(setq a7 (polar c1 pi (+ 5 R1)))

(setq a6 (polar c2 pi (+ 5 R1)))

(setq a8 (polar c2 0.0 (+ 5 R1)))

(setq a9 (polar c1 ( * pi 0.5) (+ 5 R1)))

(setq a10 (polar c2 ( * pi 0.5) (+ 5 R1)))

(command "_.line" a5 a7 "")

(command "_.line" a6 a8 "")

(command "_.line" a9 p1 "")

(command "_.line" a10 p2 "")


(command "_.REGENAll")
)
{Smirnoff} вне форума  
 
Автор темы   Непрочитано 26.05.2005, 01:21
#6
yogeny


 
Регистрация: 12.05.2005
Сообщений: 8


Fontomas! Жаль рядом не живем! С меня б пива получил:)) Спасибо большущее
yogeny вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Не получается :( need help..

Реклама i
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск