|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
27.11.2018, 02:40 | #1 | |
Знатоки Lisp, помогите найти середину сегмента сплайна.
Регистрация: 13.06.2012
Сообщений: 98
|
||
Просмотров: 6752
|
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
Цитата:
cur.GetPointAtParameter((cur.EndParam+cur.StartParam)/2) cur.GetPointAtDist() cur.GetParameterAtPoint() 1. Находим параметры точек 2. Находим растояние до точек 3. Находим точку по среднему растоянию Последний раз редактировалось trir, 27.11.2018 в 07:57. |
|||
|
||||
Регистрация: 13.06.2012
Сообщений: 98
|
Цитата:
Я обращаюсь к акаду как к СОМ объекту, а не дополнение на SDK пишу... |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
См. в сторону функций vlax-curve-*. Только учитывай их тонкости и параметры (добро пожаловать в справку)
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
Официальная справка
Русскоязычный официальный сайт разработчиков а для разгона Один из первых русскоязычных источников от Бушмана Андрея ну и инет в целом. Например, есть блоги программистов Аутодеска, где тоже можно достаточно много интересного найти в виде живых примеров. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
Если полезли в программирование - будьте готовы перелопачивать сотни страниц, постепенно выходя на нужные фрагменты кода или идеи, как их реализовать) Программирование - ресурсоёмкий процесс достаточно.
Есть и на лиспе по первой ссылке из 7-ого поста. |
|||
|
||||
Регистрация: 13.06.2012
Сообщений: 98
|
Я это понимаю, но вопрос что в топике, всеголишь маленький кусок задачи, с автокадом вобщемто мало связанной - в автокаде нужно сделать лишь пометки на готовом чертеже и напечатать ПДФ. Это вполне удачно получается и через СОМ. Но бросить все и в спешном порядке изучать ARX для того чтоб найти точку на сплайне ИМХО перебор...
|
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588
|
Цитата:
Вот ссылка, как выделить и открыть объект: https://sites.google.com/site/bushma...ktov-v-certeze . Ссылку на этот ресурс Вам Сергей812 дал, как привести выбранный объект к типу кривая, это азы ООП, какими методами объекта кривая воспользоваться, для получения точек, Вам trir, привет. Что еще нужно то? Причем тут теория и инструкция часов? Причем тут ARX и C++, если разговор про С#... ИМХО, Ответы были даны максимально точные и прямые. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
iskatel111, в заголовке разговор о лиспе, но ни слова не было о работе с другим документом.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
Цитата:
Ну как не связано, если задача относительно примитива акада. Но что писал в посте №6 Алексей по поводу лиспа - вы просто проигнорировали. |
|||
|
||||
Регистрация: 13.06.2012
Сообщений: 98
|
Вы просто меня переоцениваете, я кроме как с СОМ не работал, и даж не знаю куда эти ответы применить. Образно понимаю что надо сдк скачать, но вобщем темный лес это для меня.
Цитата:
ну да, на лиспе и надо, я его хоть через interop смогу вызвать. я так понял vlax-curve-* меня спасут, только остался один вопрос - параметры то я могу передать через запрос, а результат этой функции как в программу вернуть? |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
Цитата:
Например, через UserR. |
|||
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
Цитата:
достаточно написать одну функцию изучить NET API проще, чем заморачиваться с lisp'ом - документации больше Последний раз редактировалось trir, 28.11.2018 в 18:27. |
|||
|
||||
|
||||
|
||||
trir,
1. tc не использует .NET 2. tc нужно было на лиспе -> voilà 3. как он будет его использовать, и будет ли вообще - это ему решать ----- добавлено через ~2 мин. ----- если в лиспе можно вызывать команды, определённые в net, то наоборот это не работает? |
||||
|
||||
Регистрация: 18.12.2010
Сообщений: 5,057
|
Цитата:
Цитата:
как то так: Код:
Цитата:
Код:
Последний раз редактировалось trir, 29.11.2018 в 11:02. |
|||
|
||||
Регистрация: 13.06.2012
Сообщений: 98
|
код выглядит логично, но выдает какую-то фигню
Во вложении примеры: точки начала и конца - те что лежат на зеленой линии, окружность с центром в точке res Что я делаю не так? ЗЫ. сплайн против часовой ЗЫЫ. наконецто добрался до API, оказывается не сложно. |
|||
|
||||
Регистрация: 13.06.2012
Сообщений: 98
|
Небольшой косяк нашел - номера точек я смотрел в автокаде в свойствах, а они там с единицы, так что по факту вычислялось от точек на зеленой линии +1. Но сути не меняет - полученная точка даже не лежит на сплайне
Проект то не проект - копипаста с хабра: Код:
----- добавлено через ~7 мин. ----- Сорри, сам дурак, все нормально работает. там сотые миллиметра сильно влияют, я округлил, окружность и уползла |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Круто, и снова в lisp участвует код C#
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588
|
Не совсем так, автор пишет на С#... а лисп спрашивал от незнания... =о)
Простите, но это плохой код, просто плохой, там много лишнего. я еще только учусь, но я бы написал так: Код:
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
Offtop: так можно уже переносить ветку
----- добавлено через ~14 мин. ----- И Аутодеск рекомендует использовать транзакции всетаки: Цитата:
Цитата:
|
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588
|
Сергей812, именно, что рекомендует. Авто производители также много чего рекомендуют... ну что бы не заморачиваться, делайте так и будет норм, а если на второй, третьей, пятой вложенной транзакции вылетит фатал, то там раздеретесь...
Я не против транзакций, но пройдясь по граблям и фаталам, желания совать транзакцию куда не попадя пропало напрочь. Транзакция - инструмент и его надо использовать только там где уместно и аккуратно, с умом и пониманием. В данном случае, метод ничего не меняет в базе чертежа, просто читает некоторые данные, в случае внезапного прекращения работы данного кода ничего в базе не изменится, откатывать изменения назад не нужно, соответственно и транзакция не сильно то и нужна, а если можно обойтись без нее, то зачем плодить сущности... |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите найти прогоны длиной 6000мм, сечением 180х600мм | Toxel | Поиск литературы, чертежей, моделей и прочих материалов | 3 | 22.01.2011 07:28 |
Помогите найти СП 31-115-2008 Открытые физкультурно-спортивные сооружения. Часть 4. Экстремальные виды спорта | Aragorn | Поиск литературы, чертежей, моделей и прочих материалов | 2 | 02.12.2010 06:58 |
СНиП 11-10-75. Технология укладки асфальтовой смеси. Помогите найти! | Maxim-t | Поиск литературы, чертежей, моделей и прочих материалов | 5 | 23.09.2010 00:11 |
Помогите найти описание функций lisp'a - vlisp-* | Кулик Алексей aka kpblc | Поиск литературы, чертежей, моделей и прочих материалов | 4 | 30.06.2010 16:45 |
Помогите найти чертежи православных храмов | leonbka | Поиск литературы, чертежей, моделей и прочих материалов | 5 | 12.03.2010 11:31 |