Здравствуйте, подскажите, пожалуйста, есть ли такая примочка в автокад, чтоб копировать объект на чертеж по НЕСКОЛЬКИМ базовым точкам? А то чертежи повернуты по-разному и очень сложно их совмещать!
Помогите пожалуйста настроить в автокаде необходимую систему координат. Файл не является топосъемкой, одноко известны некоторые координаты чертежа. Слышала, что это каким то образом можно сделать с помощью команды _align (выровнять). Опишите пожалуйста последовательность действий. Заранее благодарю.
В инструкции сказано с помощью каких команд осуществляется уравнивание, но не сказано куда вводить нужные координаты
А какая именно инструкция имелась ввиду? И о каком уравнивании идет речь? Ваш вопрос совершенно не понятен.
Если двумерный откос, смотри в разделе форума CAD-системы ->Программы для AutoCad от ivsem, стр.4, сообщение 66 http://geodesist.ru/forum/index.php?threads/Программы-для-autocad-от-ivsem.4612/page-4
Копировать с исходного чертежа ---> 'вставить как блок' в необходимый чертеж ---> Крути верти ---> Взорвать блок ---> Очистить чертеж
Добрый день всем! Скачал лисп - выравнивание отрезков l_align_xy, на отрезках работает, но на полилиниях нет... Така как все чертежи полилиниями начерчены, возникает вопрос, мог бы кто нибудь ссылочку скинуть или этот лисп переделать, чтобы все начало работать с полилиниями. Заранее благодарен!
Честно говоря забыл уже на каком сайте по моему Сапр.. в общем хотелось бы чтобы прога не только отрезки воспринимала, но и полилинии и 3вд линии. Например проект отсканировал, затем через CorelTrace его в эл-й вид его загоняю и в автокад. Но некоторые линии например те же оси здания на плане не прямые линии а чуть чуть кривоватые (они собственно и есть полилинии), вот хотел этой прогой их быстренько повыпрямлять. Вот сам лисп: ;;---------------------------------------------------- ;; Программа для выравнивания отрезков по осям X и Y ;; Если отрезки не будут лежать в плоскости МСК ;; результат работы не определен. ;; Автор Александр Ривилис. ;;---------------------------------------------------- (defun C:L_ALIGN_XY ( / ss en e p1 p2 i n dir d dr x y l dl) (setvar "CMDECHO" 0) (if (null L_ALIGN_XY_delta_ang) (progn (setq L_ALIGN_XY_delta_ang 1.0) )) ;; (if (progn (setq d (getreal (strcat "\nМаксимальный угол отклонения от оси в градусах <" (rtos L_ALIGN_XY_delta_ang 2 3) ">: "))) (if d (setq L_ALIGN_XY_delta_ang (abs d))) (setq d (* PI (/ L_ALIGN_XY_delta_ang 180.0))) (princ "\nВыберите отрезки для выравнивания: ") (cond ((setq ss (ssget '((0 . "LINE")))) (setq i 0 n (sslength ss)) (while (< i n) (setq e (entget (ssname ss i))) (setq p1 (cdr (assoc 10 e)) p2 (cdr (assoc 11 e))) (setq l (distance p1 p2)) ;; Длина отрезка (setq dir (angle p1 p2)) ;; Находим угол с осью X ;; Приводим угол в диапазон 0...2*PI (if (< dir 0.0) (setq dir (+ (* 2.0 PI) dir))) (cond ;; Отрезок условно параллелен оси X ((or (equal dir 0.0 d) (equal dir PI d) (equal dir (* 2.0 PI) d)) (setq y (* 0.5 (+ (cadr p1) (cadr p2)))) (setq p1 (list (car p1) y (caddr p1))) (setq p2 (list (car p2) y (caddr p2))) (setq dl (* 0.5 (- l (distance p1 p2)))) ;; Восстанавливаем длину отрезка (setq p1 (polar p1 (angle p2 p1) dl)) (setq p2 (polar p2 (angle p1 p2) dl)) (setq e (subst (cons 10 p1) (assoc 10 e) e)) (setq e (subst (cons 11 p2) (assoc 11 e) e)) (entmod e) ) ;; Отрезок условно параллелен оси Y ((or (equal dir (* PI 0.5) d) (equal dir (* PI 1.5) d)) (setq x (* 0.5 (+ (car p1) (car p2)))) (setq p1 (list x (cadr p1) (caddr p1))) (setq p2 (list x (cadr p2) (caddr p2))) (setq dl (* 0.5 (- l (distance p1 p2)))) ;; Восстанавливаем длину отрезка (setq p1 (polar p1 (angle p2 p1) dl)) (setq p2 (polar p2 (angle p1 p2) dl)) (setq e (subst (cons 10 p1) (assoc 10 e) e)) (setq e (subst (cons 11 p2) (assoc 11 e) e)) (entmod e) ) ) ;; (cond (setq i (1+ i)) ) ;; endof (while ) (T (princ "\nНичего не выбрано, или выбрано что-то не то!") ) ) ;; (cond (princ) )