|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
14.09.2006, 13:30 | 4 | | #1 |
Новые команды для работы с полилинией
Инженер LISP
Минск
Регистрация: 11.05.2005
Сообщений: 6,992
|
||
Просмотров: 369475
|
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,627
|
Замечания к программам (командам).
"Добавить новую вершину в полилинию." Не обрабатывается нажатие правой кнопки мыши. В программе предполагается, что новую вершину мы куда-то переместим мышью. но если нам не надо перемещать вершину, а подтвердить уже указанную точку, то напрашивается нажатие правой кнопки мыши и вот тут программа срывается. По-моему, kpblc дорабатывал эту программу. "Удалить вершину полилинии". Результат может оказаться непредсказуемым, если удаляется вершина между линейным и дуговым сегментами. В зависимости от направления полилинии вместе с вершиной удаляется или дуговой или линейный сегмент. "Аппроксимация дуговых сегментов линейными". В русской версии не работает контекстное меню. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Дорабатывал, но не добил. Stretch все равно слетает черт-те куда. Там на оригинальном адресе, по-моему, Евгений Елпанов показывал обработку. Его вариант, насколько мне помнится, работал более устойчиво.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Цитата:
Цитата:
Другое дело, что тот кто удаляет вершину должен отдавать себе отчет как направлена полилиния. Но как помочь ему в этом [sm2100] >kpblc В результате плотного общения с Лентяем, доработавшего код Евгения Елпанова, удалось добиться главного: избавиться от _break (полилинии не теряют ассоциативность). В этой версии вершины добавляются без _strech (там основная сложность была в пересчете bulge), что на мой взгляд более корректно. Последний раз редактировалось VVA, 19.09.2015 в 20:42. |
|||
|
||||
Гидрорезка Регистрация: 18.09.2006
г Владимир
Сообщений: 2
|
"Аппроксимация дуговых сегментов линейными".
Как сделать следующее: Есть полилиния состоящая из нескольких прямых и дуг с разными радиусами до 500 мм и более 500 мм. Надо аппроксимировать дуги с радиусом более 500 мм с отклонением 0.1 мм.
__________________
Гидро абразивная резка waterjet 4000 Атм |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Я бы сделал так:
1. _break в точке ->Выделить дуговые сегменты с радиусом более 500 мм в отдельные полилинии (вариант: скопировать полилинию и обрезать) 2. Аппроксимировать их с отклонением 0.1 (имеется ввиду предельное отклонение хорды, т.е. высота стрелки дуги) 3. PL-JOIN собрать все обратно в полилинию 4. При необходимости ENTREVS задать нужный порядок обхода |
|||
|
||||
Гидрорезка Регистрация: 18.09.2006
г Владимир
Сообщений: 2
|
Так и делаю, но это очень долго. Уходят часы и дни на обработку нескольких полилиний.
Хотелось бы автоматически. Задать радиус дуги болше которого полилиния должна обрабатываться и отклонение.
__________________
Гидро абразивная резка waterjet 4000 Атм |
|||
|
||||
Решил тоже добавить код в копилку...
Программа аппроксимирует дуговые сегменты полилинии по заданной высоте, т.е я использую подобный код для генерации векторной картинки полилинии в диалоговых окнах, задавая максимальную высоту в один пиксел. Предложенная программа только пример, никакой оптимизации... Я ее наспех выдернул из другого кода и слегка адаптировал для форума... Код:
|
||||
|
||||
Регистрация: 20.01.2004
Москва
Сообщений: 154
|
посмотрел понравилось, но я думаю что стоит добавит еще 1 команду
или чуть-чуть изменить существующую- PL-DIV -Разбивает выбранный сегмент полилинии на указанное количество сегментов или через указанное расстояние что бы можно было делить не только один сегмент но и всу полилинию вместе, с сохранением текущих вершин А програмка супер молодцы |
|||
|
||||
Инженер-конструктор, магистр СПбГПУ. Регистрация: 27.11.2005
Санкт-Петербург
Сообщений: 78
|
Цитата:
__________________
Начинаю писать магистерскую диссертацию на тему нелинейных методов совместных расчетов оснований и фундаментов. Буду рад любой помощи со стороны профессионалов. |
|||
|
||||
Шаражпроектхалтурмонтаж Регистрация: 29.10.2004
Талды-Париж
Сообщений: 5,992
|
Спасибо за замечательный набор программ!
Может быть уважаемым авторам не составит труда добавить программку, которая бы по одиночному клику на полилинии строила бы фаску и скругление смежных сегментов, ближайших к точке выбора. |
|||
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,627
|
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,848
|
Это не сделать, наколько я помню, вообще никак. Только если изготовить новый тип линии и его назначать на полилинию
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||