|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
26.06.2004, 05:22 | #1 | |
Загадочная линия нулевой длины
Engineer
New-York
Регистрация: 05.09.2003
Сообщений: 10,288
|
||
Просмотров: 6993
|
|
||||
Инженер по системам безопасности Регистрация: 23.11.2003
Рига
Сообщений: 1,099
|
В результате опыта получается отрезок с совпадающими, начальной и конечной точками:
Код:
С полилинией ничего не получилось, она у меня нормальная: Код:
Код:
|
|||
|
||||
сисадмин Регистрация: 26.08.2003
Самара
Сообщений: 1,022
|
Если честно, ничего не понял.... может быть я что то не так делаю, но никаких отрезков нулевой длины не получается. Хоть тресни.
А вот с полилинией - в натуре... получаются парные вершины. Да, а в каком АКАДе Вы наблюдали сей глюк? Я в 2002 ковырялся.... |
|||
|
||||
сисадмин Регистрация: 26.08.2003
Самара
Сообщений: 1,022
|
Покурил, подумал, перечитал лог....
Все верно! Команда 'cal не только запоминает в p1, а еще и возвращает в командную строку координаты точки @ в ответ на приглашение указать следующую точку. С отрезками... ну да, сразу не догнал... выдается сообщение "Zero length line created at <координаты>" которым АКАД и уведомляет о таком казусе. Rectangle строится!!! Обратите внимание на маааааленькую точку в @ - это не что иное как полилиния , у которой все четыре вершины имеют одну и ту же координату Нафига он такой нам нужен... |
|||
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Казалось бы, зачем все это? У меня есть кнопка, делающая разрыв трубы, такая кривая, похожая на неполную восьмерку. Я ее начинаю (в макросе) с отрезка. Запоминаю начало как точка Р1. Все нормально работает, а потом приспичило трубы подвинуть. А труб много. Короче, заметил что точки какие-то на экране. Мусор. Вот, разобрался, что это, заменил линию на полилинию и мусор исчез Но почему точки, то бишь отрезки нулевой длины, появляются?
|
|||
|
||||
AutoCAD/AutoLISP Регистрация: 27.08.2003
Seattle/USA
Сообщений: 1,133
|
Вот програмка для обрезания труб - как алтернатива твоей Vova
;============================================== ;By Leonid Nemirovsky 1995/97 ;============================================ (defun cend (/ mode pt1 pt2 pt3 r rad) (setq mode (getvar "osmode")) (setvar "orthomode" 0) (setvar "osmode" 1) (princ "\nSelect points COUNTERCLOCKWISE....") (setq pt1 (getpoint "\nSelect first point: ")) (if (= pt1 nil)(exit)) (setq pt2 (getpoint pt1 "\nSelect second point: ")) (if (= pt2 nil)(exit)) (setvar "osmode" 0) (setvar "orthomode" 1) (setq pt3 (polar pt1 (angle pt1 pt2)(/ (distance pt1 pt2) 2))) (setq r (distance pt1 pt3)) (setq rad (/ r 1.6)) (command "arc" pt1 "e" pt3 "r" rad) (command "arc" "" pt2) (setq last (ssget "l")) (command "mirror" last "" pt3 pt2 "n") (setvar "osmode" mode) (princ) ) |
|||
|
|||||
сисадмин Регистрация: 26.08.2003
Самара
Сообщений: 1,022
|
Цитата:
Цитата:
Цитата:
Цитата:
|
||||