Реклама i
|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Касательная примитивов.
Регистрация: 19.08.2009
Сообщений: 91
|
||
Просмотров: 3689
|
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,189
|
solo123, если это надо использовать в проге, так и скажи. Может помочь vlax-curve-getclosestpointto
По поводу "точка не должна быть окончанием или началом линии": именно в этом случае у меня привязка "касательная" не работала или работала совсем коряво Последний раз редактировалось kp+, 07.11.2009 в 20:55. |
|||
![]() |
|
||||
solo123, так касательную или ближайшую?
С ближайшей проблем нет, а вот найти касательную - vlax-curve-getClosestPointTo не поможет. Я вообще не представляю что может помочь. Разве что через command с отключением всех других привязок и видимости элементам. Привязка такая есть, но вот в лиспе с касательными никогда не встречал функций. |
||||
![]() |
|
||||
Есть соображение... Из геометрии: геометрический смысл производной - тангенс угла наклона касательной. Для эллипса можно вычислить вектор производной в точке, заданной параметром кривой функцией vlax-curve-getfirstderiv. Возвращаемое значение этой функции - список трех вещественных чисел, производные: (dx/dt dy/dt dz/dt). Производная dy/dx = dy/dt : dx/dt. То есть, нужно найти тангенс угла наклона прямой к оси X (это несложно), и каким-то способом найти точку на эллипсе, в которой dy/dt : dx/dt будет равно этому тангенсу (это посложнее, кстати, таких точек будет две, надо найти ближайшую к прямой). От этой точки вычислить ближайшую точку на прямой с помощью vlax-curve-getclosestpointto и за эту точку перетащить прямую в найденную ранее точку на эллипсе.
|
||||
![]() |
|
||||
Цитата:
vlax-curve-getFirstDeriv vlax-curve-getSecondDeriv Обе функции возвращают вектор, одна по касательной, другая к центру. Оба вектора имеют длину, равную радиусу, если в данной точке есть кривизна, для линий - длина итд... ps. solo123 видимо тебе никто не захотел писать программу в теме "Требуеться написать программку для столярной мастерской." и ты решил сам? Мне интересно, к тебе обращались и предлагали написать или нет, и еще, если предлагали, то сколько было предложений? Уже прошел целый месяц...
__________________
Чем гениальнее ваш план, тем меньше людей с ним будут согласны. /Сунь Цзы/ Последний раз редактировалось Елпанов Евгений, 10.11.2009 в 23:11. |
||||
![]() |
|
||||
Елпанов Евгений, ты меня заинтриговал.
У меня есть точка в пространстве МСК и есть двугорбый кусок сплайна. От моей точки я насчитал (руками) аж три касательные. Функции vlax-curve-getFirstDeriv и vlax-curve-getSecondDeriv никаким боком о моей точке знать не знают. Как мне с их помощью узнать координаты всех трех касательных? Мне ведь надо проводить прямую из моей точки, а не рассматривать сплайн как график функции. |
||||
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP для поиска групп (наборов) одинаковых примитивов и замена их блоком | ElectroBOG | LISP | 22 | 29.07.2025 16:05 |
Как создать массив для группы примитивов в Bricscad? | Tonic | Программирование | 8 | 19.12.2007 09:22 |
список свойств параметров примитивов | leonardo23 | AutoCAD | 7 | 10.01.2007 09:02 |
Выбор всех примитивов одним кликом | DANZZ | AutoCAD | 5 | 12.08.2006 17:49 |