| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Автоматизация построения профиля (лисп)
проектировшик
СССР
Регистрация: 01.01.2007
Сообщений: 5,143
|
||
Просмотров: 18619
|
|
||||
проектировщик-новобранец Регистрация: 14.09.2005
Minsk
Сообщений: 324
|
Не нашел темы лучше этой!
Помогите избавиться от рутинной работы по построению профиля трассы. Если быть конкретней, то вставки блоков из списков Lookupа (макс.5 шт, но пользоватся приходится от 2 до 3 ) с определенным шагом (шаг у каждой опоры свой). Посмотрите приложение p.s. Нетрудно догадаться что Lookup заполняется не в ручную (выражаю благодарность Supermaxу). |
|||
![]() |
|
||||
Инженер дорожник Регистрация: 22.10.2007
Израиль
Сообщений: 1,859
|
100% в Civil_е точно можно, тем более что там заложено построение трубопроводных сетей и в плане ив профиле.
В общем конечно кому как, лучше убить кучу времени и писать программу в Лиспе. Просто нужно создать нужные стили оформления профиля и плана. И в Civil_е это реально. |
|||
![]() |
|
||||
проектировшик Регистрация: 01.01.2007
СССР
Сообщений: 5,143
|
Valery Brelovsky, расскажи более подроно про эту программу, какая версия куда надстраивается и т.п. буду благодарен если приложишь скриншоты показывающие работу в данной программе, хоть посмотреть хде автоматизм сидит....
__________________
инженер проектировшик с опттом программа авто гад образование высшие |
|||
![]() |
|
||||
Инженер дорожник Регистрация: 22.10.2007
Израиль
Сообщений: 1,859
|
Речь идёт о построении продольного профиля. И 3-D динамические блоки в профиле как то вроде как не к чему. Что касаемо плана то 3-D блоки вставить нет проблем да собствено и в профиль. Вопрос динамики в Civil_е он решается немного иначе.
В общем ливневый строится без проблем и колодцы подымаются в зависимости от глубины заложения до уровня рельефа. Да собственно говоря закладывая в чертёж динамические блоки Вы сразу предполагаете вносить изменения. Та же ситуация с динамические блоки сохранится и при написании Лиспа для построения профиля. |
|||
![]() |
|
||||
Цитата:
Я конечно ценю чужие навороты, и условность во многом приветствую, но так сложилось, что теперь возможности возврата или перехода у меня нет. Надо наращивать элементную базу "виртуальных иделий" и делать так, чтобы Автокад их и в фас и в профиль умел расставлять. |
||||
![]() |
|
||||
Инженер дорожник Регистрация: 22.10.2007
Израиль
Сообщений: 1,859
|
Цитата:
Так что у Вас можно сказать частный случай. |
|||
![]() |
|
||||
Инженер дорожник Регистрация: 22.10.2007
Израиль
Сообщений: 1,859
|
Вот тут сыслка. Это вроде по вашей части.
http://www.caduser.ru/cgi-bin/f1/board.cgi?t=34987tq |
|||
![]() |
|
||||
проектировщик-новобранец Регистрация: 14.09.2005
Minsk
Сообщений: 324
|
Профиль строится плоский (используем для построения профиля теплотрасс, газопроводов, эстакад и межцеховых комуникаций)
Моя рутинная работа заключается в том, что приходится копировать опоры с определенным шагом друг за другом (из 5 Loockupов) строго по списку, шаг написан посредине между опорами, и выбирать из списка номер опоры. dextron3 если интересно , то алгаритм моей работы по профилям трасс слудеющем: 1) есть файл в Excelе + задание от смежников (отметка земли и верха траверсы) 2) после игры в цифры в excele (формируется информация для Loockup) 3) В зависимости кол-ва опор (в один Loockup 25 опор) записывается один файл в один Loockup (может быть до 5 екселевских файлов); 4) потом вставляю блок (см. пост #2) и выбираю из списка номер опоры, потом попирую с шагом поры, и снова выбираю из списка след. опору, и так пока не вставлю весь профиль в модель. Для измения каких-то геометрических параметров можно изменить в екселе, а можно в непосредственно в свойствах блока (обычно это происходит после жесткой унификации конструкций! |
|||
![]() |
|
||||
Чтобы тема не заглохла, подкину дровишек.
Задача №1 - создать 3D полилинию поверх 2D полилинии с установленным шагом. То есть ставим в точку номер 1 2D полилинии круг, с радиусом равным установленному шагу и находим пересечение с 2D полилинией, из чего бы она не состояла. Координаты пересечения записываем в память и перемещаем круг центром в точку пересечения, ну и далее в цикле аж пока пересечения не кончатся. Потом по точкам из памяти строим 3D полилинию. Пересечений будет два. Одно ближе к началу, а другое ближе к концу. Надо то, что ближе к концу. Определить кто из них кто можно вычислив расстояние до края 2D полилинии. Где-то я это тут уже видел. Кто первый найдет - будет молоток. |
||||
![]() |
|
||||
Supermax,
Про круги может это вычисление списка точек на объекте расстояния между которыми равны?
__________________
Как использовать код на Лиспе читаем здесь |
||||
![]() |
|
||||
Конструирование в области нефтеразведки Регистрация: 10.02.2006
Гомель
Сообщений: 321
|
>Supermax
Сдается мне, что это здесь - http://www.caduser.ru/cgi-bin/f1/boa...44304Oy&page=2 Пока писал - уже опередили... |
|||
![]() |
|
||||
Ну прям, как я тут и писал. Это же надо такое совпадение!
Читал, читал, читал. Так и не понял, какой же код самый лучший. Вы там экспериментировали, экспериментировали, так к чему пришли? Ладно. надо не такое и сложное переварить. Первая функция в кармане. Теперь надо посчитав количество полученных точек поделить другую полилинию на кучу кусочков и заменить их 3D полилинией. Общий смысл следующий: Есть две 3D полилинии разной длинны и кривые до безобразия. Но обе разбиты на одинаковое количество сегментов. Это правая и левая границы рельефа. Они получаются из двух обычных 2D полилиний, которые пользователь сам рисует ограничивая свою трассу. Процесс превращения абы как нарисованных границ в красивые равношаговые линии,я думаю ясен? Пользователь выбирает одну из них и задает шаг. Первая функция дает кучу точек по которым строится 3D полилиния с установкой 0 по Z всем точкам. Затем пользователь указывает на вторую границу рельефа и эту полилинию прога разбивает на заданное количество точек (взятое с первой полилинии). Далее пользователь проставляет высоты в некоторые точки 3D полилинии. Тыкая в текст с отметкой высоты, а затем в точку на 3D полилинии. Затем программа выстраивает все точки 3D полилиний с равномерным распределением по Z от одной установленной точки до другой. Затем программа чертит вспомогательные линии от одинаковых номеров точек. ( что-то я уже по кругу пошел). Нужен код деления кривой на заданное количество отрезков. |
||||
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Интересно где работают ЛИСП программисты? | dextron3 | LISP | 114 | 17.12.2017 13:53 |
Лисп: моментальное редактирование цифр в предложениях | dextron3 | LISP | 12 | 27.09.2008 09:33 |
Лисп для копирования данных нескольких мтекстов по принципу расположения. | Red Nova | LISP | 14 | 18.06.2008 22:08 |
каркас на дом с профиля Помогите! | VZOR | Конструкции зданий и сооружений | 2 | 18.05.2008 00:51 |
Нужен лисп (пронизыватель лайаутов) | dextron3 | LISP | 91 | 25.07.2007 07:37 |