| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Бася, такие задачи решались столько раз, что лень писать еще раз такой же код.
расставить вхождения блоков по полилинии можно таким куском кода: Код:
(sad-get-CurrentSpace) - заменить на указатель пространства в котором надо рисовать Лень - двигатель прогресса! Лень рисовать ручками - учись кодить.
__________________
Не труд сделал из обезьяны человека, а лень и жажда халявы... |
||||
|
||||
Регистрация: 09.06.2010
Сообщений: 126
|
Vladimir_Sergeevich, спасибо за помощь! не пыталась писать ибо не умею, а ясно, что эта задача не мною придумана и уже давно решена. тут лучше не мучать своими измышлениями гуру, а спросить уже готовое решение.
по поводу кода - вылезла ошибка Цитата:
Последний раз редактировалось Бася, 22.11.2016 в 09:52. |
|||
|
||||
Регистрация: 21.11.2016
Сообщений: 2
|
Цитата:
Ваша программа станет еще лучше, если сможет сохранять для полилинии помимо координат вершин еще и кривизну участка) № x y z bulg (при этом bulg относится к участку который начинается в данной точке) Насколько сложно это реализовать? |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Команда COORN из архива ECoorE rev10b.zip
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Регистрация: 25.07.2007
Сообщений: 2,508
|
Так у меня уже есть эта программа. Или тут что-то новое?
Аа, вроде разобрался. Спасибо! VVA подскажи еще. Нужен лисп, если такой существует...Например есть текст, с значением, нужно чтобы этот текст суммировался и далее вставлялся с новым значением. Например 0, 20, 40, 60, 80, 100 и так далее Последний раз редактировалось Рyslan, 19.05.2017 в 13:23. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Разверни линию и все. команда _reverse/Обратить
__________________
Не труд сделал из обезьяны человека, а лень и жажда халявы... |
||||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Нумерация идет в порядке выбора. Отрисуй по точкам полилинию и нумеруй вершины. Полилинию, если что, можно и реверсировать
----- добавлено через ~2 мин. ----- О, не заметил, что речь идет уже про готовую полилинию
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Gti Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121
|
VVA, протестировал код в каждом из режимов, мполигоны обрабатываются. Два момента, если это возможно, нуждаются в корректировке:
1. Принудительная нумерация вершин в списке координат всех контуров мполигона по часовой стрелке. При создании мполигона из полилиний, вне зависимости от порядка задания внутреннего и внешнего контура и порядка чередования вершин в каждом контуре, результирующий мполигон получает чередование вершин внешнего контура против часовой стрелки, а внутреннего ПО часовой. Необходимо, что бы все контуры в списке координат нумеровались ПО часовой стрелке. 2. Не включать в список координат центроиды мполигонов (1-1 и 2-10).
__________________
Каждая система стремится к равновесию. |
|||
|
||||
Gti Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121
|
VVA, проверял работу кода в режиме COORNP.
1. По нумерации вершин: тестил мполигоны созданные конвертацией из существующих прямоугольников, так и созданные напрямую по команде mpolygon с указанием точек. Так и не смог понять логику по которой нумеруются вершины внешнего и внутренних контуров. Желательно, что бы вершины нумеровались по часовой стрелке всегда в каждом контуре и при этом начало нумерации шло с внешнего контура, что не получилось ни в одном из тестов. На рисунке слева большими цифрами показал, в каком порядке показал создавал мполигон, справа результат с правильной последовательностью нумерациии вершин. 2. Центроиды учитываться перестали, это то что нужно. 3. Пропала очень удобная особенность-номер контура, к которому относится вершина (ИМХО такая опция при сортировке и фильтации в эксель гораздо важней флага-разделителя), верните её пожалуйста! 4. Заинтересовал недокументированный режим "COORVIK" - было бы здорово допилить его до таблицы румбов (№, x, y, румб, длина линии), получилась бы тоже очень полезная опция как для мполигонов, так и для остальных примитивов.
__________________
Каждая система стремится к равновесию. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Агент СмиТ, Выложи пример с парой разных мполигонов. Я не нашел описания принципа формирования dxf кодов мполигона.
----- добавлено через ~2 ч. ----- Нашел пару примеров в интернете. Немного поменял логику. Тестируй
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Gti Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121
|
VVA, протестировал код в режиме coornp:
1. Во всех случаях (в т.ч. при порядке вершин против часовой стрелки) нумерация вершин происходит по часовой стрелке - то что нужно! 2. При создании мполигона напрямую (указанием точек вручную) порядок нумерации контуров противоположен порядку их создания, а нумерация в каждом контуре противоположня порядку указания вершин. 3. При создании мполигона путём конвертации существующих прямоугольников важен только порядок указания примитивов, а порядок их создания роли не играет. Offtop: В процессе тестирования появился вопрос, возможен ли реверс тех контуров мполигона, где чередование вершин идёт против часовой стрелки? Было бы здорово перед снятием координат приводить все мполигоны к единообразию.
__________________
Каждая система стремится к равновесию. |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
внес небольшие правки
надо будет попробовать
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Gti Регистрация: 14.01.2010
МО Железнодорожный
Сообщений: 121
|
VVA, попробовал работу COORNP на двух мполигонах в один приём:
1. насколько я понял, программа правильно обрабатывает только те мполигоны, у которых внешний контур создан раньше внутренних (розовый цвет); 2. те мполигоны, у которых создание происходило начиная с внутренних контуров, обрабатываются также в порядке создания контуров, а не начиная с внешнего, что приводит к неправильному порядку нумерации вершин (зелёный цвет). Т.е. желательно начинать нумерацию принудительно с внешнего контура, а внутренние контуры обрабатывать в порядке их создания.
__________________
Каждая система стремится к равновесию. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Экспорт координат из dxf в txt | eilukha | Вертикальные решения на базе AutoCAD | 14 | 26.04.2008 21:53 |
Нумерация точек на плане и вывод их координат в полярной системе | kukuikar | Программирование | 1 | 17.02.2008 11:15 |
Получение текстового массива координат точек. | Камыч | AutoCAD | 5 | 30.07.2007 12:28 |
Помощь по Лире | Серега М | Лира / Лира-САПР | 52 | 28.05.2007 02:47 |
простановка реальных ординатных размеров (координат точек) | AnnaT | AutoCAD | 7 | 15.06.2005 17:56 |