Перейти к публикации

Gettesspts - глюк или не глюк


Рекомендованные сообщения

Привет всем! Вот уже долго бьюсь над решением задачи отыскания интерполяционных точек распределнных по кривой в соответствии с заданным условием (по стрелке прогиба). рис ниже..

Изображение

как видно на кривую нужно положить точки так, чтобы параметр h (т.е. перпендикуляр, восстановленный из центра хорды до пересечения с участком кривой) не превышал или был равен заданному пользователем численному значению стрелки прогиба, допустим strelka = 0.05 мм..

Удивительно, но SW APi имеет функцию, которая вроде бы решает данную задачу.. вот она -

=====================================================================

retval = Curve.GetTessPts ( chordTolerance, lengthTolerance, startPoint, endPoint )

Input:

(double) chordTolerance - Chord tolerance to be used in tessellation (meters); this is the maximum permitted distance from a cord to the curve between the cord endpoints

Input:

(double) lengthTolerance - Length tolerance to be used to filter out very short segments (meters); this method does not return tessellated segments shorter than this value

Input: (VARIANT) startPoint - SafeArray containing the start point of the curve

Input: (VARIANT) endPoint - SafeArray containing the end point of the curve

Return:

(VARIANT) retval - SafeArray of doubles containing the tessellation points (see Remarks)

=====================================================================

Прочитав ее описание кажется - ОНО! :smile: Однако как показала проверка ее результатов работы -- полученная стрелка по отдельным участкам кривой имеет большие отклонения от заданной - т.е 1-го параметра функции сhordTolerance.. :blink:

Думаю что такой ошибочный результат вызван неверным выбором мной значения 2-го параметра - legthTolerance.. я его принимаю равным стрелке прогиба..

подскажите пожалуйста в чем я ошибся ... а ведь ошибся Я :wallbash: ... так как не может быть такого что неправильно работает метод SW API ? :sad: Как выбрать правильное значение lengthTolerance? Может существует какая-то зависимость или соотношение между значениями chordTolerance и lengthTolerance, например lengthTolerance = 10*chrordTolerance и т.п???????????????????? :g:

Ссылка на сообщение
Поделиться на других сайтах


Еслиб ты картинку оставил, да ещеб и полный код программы вписал (или покрайней мере касающийся твоего вопроса), то уверен ты уже скорей всего получил бы ответ. :smile:

Когда оставляешь картинку на локальной машине её можешь увидеть только ты, так что этот <noindex>http://localhost/new/11.gif</noindex> адрес не подходит, картинку можно оставить либо на <noindex>http://imageshack.us/</noindex> или после девятого сообщения сможешь прикреплять прям в сообщение.

Ссылка на сообщение
Поделиться на других сайтах

спасибо за ссылку :rolleyes:

теперь все видно -- жду Ваших ответов ...

Изображение

PS тут и без картинки можно понять суть проблемы...

Ссылка на сообщение
Поделиться на других сайтах

тут и без картинки можно понять суть проблемы...

Наверное, можно... Однако, обладая ограниченными матушкой-природой способностями к телепатии, имею желание провентилировать следующий момент касательно постановки задачи: что на картинке первично? Сплайн или ломаная линия?
Ссылка на сообщение
Поделиться на других сайтах
:g: Мда...если Вы сталкивались с использованием функции GetTessPts то знаете, что на входе она требует (уже было указано в 1-м сообщении) координаты начальной и конечной точки ИСХОДНОЙ кривой, для которой она и расчитывает Х.У.Z-ды интерполяционных точек в соответствии с заданными значениями chordTolerance и lengthTolerance (ломаную через эти точки я набросал, чтоб и наглядность была и чтоб параметр h = chordTolerance = стрелка прогиба был отчетливо понимаем)... Неужели затронутая мной функция GetTessPts настолько малоизучена.?.?.?.:smile: Принмаются любые ответы ждемс.. :rolleyes:
Ссылка на сообщение
Поделиться на других сайтах
Beg!ner, дружище! Возможно, с Вашей подачи я обращу своё внимание когда-нибудь на свойства чудесной функции "GetTessPts". А мой вопрос был вызван тем, что Вы, похоже, не решаете интерполяционную задачу. Потому что условие задачи показалось мне перевернутым на 180 градусов. Теперь я в этом убедился.
Ссылка на сообщение
Поделиться на других сайтах
:smile: Спасибо, что хоть кто-то (URI-I-I) обрашает внимание и пытается разобраться в таких исключительно темных и скучных методах SW API, вероятность использования которых специалистами составляет 1/1000000... соответственно, относящихся к категории "неприкасаемых"...тем не менее надежда умирает последней..так что жду Ваших ответов.. :rolleyes:
Ссылка на сообщение
Поделиться на других сайтах

Beg!ner, возможно дело в том, что в функцию зашит полиномиальный метод интерполяции. У которого наличествуют, при многих достоинствах, особенности в нюансе равномерного приближения. В любом случае, сомневаюсь, чтобы отцы чудесной функции "GetTessPts" решили эту проблему лучше, чем Чебышев с Лагранжем. Коротенько - здесь, если интересует:

<noindex>http://www-2net.spbstu.ru/Num_Met/Interpol/inter.htm</noindex>

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

..как я понимаю, существующие методы интерполяции, (спасибо за ссылочку :smile: ) предполагают вычисление кривой (сплайна например ), которая пройдет через заданные точки XY...т.е. они дают ответ на вопрос - как "приблизить" построение кривой через заданые узлы (мож конечно не точно выразился, но идея вроде такая :rolleyes: )... а GetTessPts, судя по всему, решает обратную задачу...т.е. кривая есть, и неважно через какие точки она интерполирована..так как эти точки нужно пересчитать заново, используя условия заданные пользователем...вроде так..

..да видимо это неразрешимый вопрос..ну да ладно не будем пока о грустном :)

Подскажите пожалуйста, как мне в контексте этой же задачки реализовать расчет расстояния h (на рисунке ниже ) .. те допустим функция GetTessPts уже отработала, и мне теперь стало любопытно а какие же стрелки получились(h) на каждом из участков кривой ???

в принципе данная задача сводится к решению таких поздач ответы на которые я увы не знаю (уже весь SW API перелопатил:)):

1-я - Как определить координаты середины отрезка (a+b)(SketchSegment), если известны координаты XYначальное и XYконечное (Xнач <> Xкон и Yнач<>Yкон)

2-я вытекает из 1-й > как найти расстояние от полученной точки середины отрезка С до точки D на кривой...причем отрезок CD перпендикулярен хорде a+b - рисунок ниже...

Длина линии CD и есть искомое расстояние h

и как это все сделать??? :wink:

Изображение

Ссылка на сообщение
Поделиться на других сайтах

ИМХО, все ответы могут быть получены от самого Beg!ner-а. Только тогда, когда он станет The_Ender-ом. :blink:

Ссылка на сообщение
Поделиться на других сайтах
  • 6 месяцев спустя...

Меня заинтерисовал этот вопрос, так как тоже нужно, какое-то преобразование сплайна в отрезки прямых, с какой то точностью.

Вопрос: "Решил ли кто эту задачу?"

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • ДОБРЯК
      В уравнении задачи на собственные числа только две матрицы - жесткости и масс. Надеюсь мы не будем обсуждать вопрос. Зависит ли матрица масс от правой части (от нагрузки)? От нагрузки зависит только жесткость. Кстати от температуры тоже зависит нагрузка. И естественно собственные частоты. Если на поверхностном уровне, то надо учитывать гироскопические силы и силы Кориолиса. Насколько эти силы влияют на собственные частоты зависит от конструкции и частоты вращения. Для гидро турбин это вообще ни о чем. Речь идет только про расчеты по МКЭ. Может быть какие то еще силы влияют на жесткость. Нужно глубже разбираться. Но все эти силы одного порядка... Надо смотреть документацию к программе, а если документации нет, то это черный ящик.   
    • taarok
      Комрады, всех с майскими праздниками. Кто нибудь может поделиться постом для fanuc oi-mf Solidcam. Taarok.d@yandex.ru заранее благодарен, быстрых вам подач и хороших фрез))    
    • Tad
      Это предупреждение о необходимости очередного техобслуживания машины. После его выполнения надо проделать некоторые манипуляции, как описано в приложенном документе   2010 0i pc AL2004 .pdf
    • Fedor
      https://www.mathnet.ru/links/70adc00f76e7f355f5e14569f99dd8dc/tm1745.pdf#:~:text=Под полной обобщенной проблемой собственных,из собственных векторов относительно 5.   Хотите посложнее читайте классику по обобщенной проблеме ... :)
    • Jesse
      а что такое этот corioliss в Ansys? что делает эта опция?
    • Борман
      А ну вот как раз вспоминаю про гироскопический момент, как интеграл сил инерции, действующих на смещенное колесо. И вот тут как раз появляется зависимость от направления вращения. В одном случае этот момент будет выворачивать колесо наружу, а в другом пытаться вернуть колесо ближе к оси. Но это эффект следующего порядка, и prestress-модальник его не схватывает. А сиса как-то сама умеет это учитывать, отсюда будут и разные частоты. Много на эту тему почерпнул (для себя) из книги Жирицкого, на которую ссылался в теме по вашей ссылке. Эту тему я забросил в начале 2008 года и больше не касался ее.
    • rocket
      Добрый день, у нас 4 осевой станок Syntec 6MB с поворотной головой вокруг оси Y, покупали б/у и приехал еще с поворотной осью А подключенный но не видящий ось А. В итоге помогло поменять в параметрах в разделе/index 10 поменять на 2 и в index 24 где ось B поменять 4 на 0 а в index 25  поменять с 0 на 4 (чтобы он читал с 4 порта) если посмотреть как идет подключение, то от этого зависят цифры 
    • maxx2000
      Спасибо КЭП, но в ярлыке ничего прописывать не надо, достаточно создать новый ярлык. Вопрос был про вызов справки из приложения. Впрочем, перезагрузка ПК устранило это досадное недоразумение.
    • Maxmore
      Согласен полностью, через всё это пришлось пройти. От себя добавлю что у нас 400ый не PRO а обычный - его еще больше пришлось доводить до рабочего состояния, так как их производят разные заводы. с ITX508MY еще все более печально было - проблемы на пусконаладке, затем замена прокладок, затем пусконаладка уже с участием китайца...в общем да, помучаться пришлось. С большего оборудование рабочее, свои функции выполняет. Фануковские посты можно доработать до HNC без особых проблем.
    • Fedor
      Для любой размерности можно решать полином этой размерности. Такова сущность вопроса существования, а не конкретное явление вычисления. Дух, а не буква :)
×
×
  • Создать...