Согласен, зебра - как раз тот самый инструмент и про него обязательно расскажу. Здесь на рендеринге я показываю прежде всего зачем это все нужно и как линии с различной непрерывностью производят поверхности различного качества, гладкости.
Если больше теории, то можно добавить, что для плоской кривой непрерывность (или гладкость) G0 в некоторой точке А означает непрерывность функции, но разрыв производной (т.е. излом). Непрерывность G1 - непрерывность функции и её первой производной, но разрыв второй производной. Соответственно непрерывность G2 - непрерывность функции, первой и второй производной. Существует и гладкость высших порядков.
А это не меняет сути :) Излом - производная не существует (G0). Если радиус кривизны меняется скачком - вторая производная не существует. Этот эффект давно известен в механике. Например, если железнодорожные рельсы на повороте проложить в виде дуги окружности, сопряженной с прямой (G1), при движении по такому пути возникает так называемый "мягкий удар". Радиус кривизны в точке сопряжения меняется скачком, соответственно центростремительное ускорение и сила инерции возрастают мгновенно. Поэтому для плавного входа поезда в поворот между прямой и дугой окружности вставляют переходную кривую, клотоиду, радиус кривизны которой плавно изменяется от начальной до конечной величины. Клотоида имеет вторую производную и обеспечивает гладкость траектории G2.
Значит нужен промежуточный CV сплайн пятого порядка (в общем случае), который "состыкует" криволинейные отрезки и сможет создать G2 непрерывность на обоих концах
@@dadapasha Спасибо за оперативный ответ. Я тут вопросами Вас мучаю, ответы на них - это Ваша работа или добрая воля?)) Те правильно понимаю, нужно строить еще один дополнительный отрезок(сплайн) помимо двух? Здесь на видео в рино сразу выбирают степень непрерывности th-cam.com/video/tTI18fsCCDI/w-d-xo.html Понимаю, что во фьюжене этого нет. Вместе с тем задачка интересная, для перфекционистов, мне думается.
Зайдём с начала. Есть один отрезок - на конце у него есть координаты точки, касательный вектор (первая производная по координате, или вектор скорости) и некий радиус кривизны (вторая производная, или вектор ускорения). Есть второй отрезок, на его конце то же самое. Для того чтобы достичь G0 первые параметры (координаты) должны совпадать, то есть отрезки должны состыковаться. Если хотим G1, то нужно чтобы была G0 и плюс к этому векторы скоростей в точке стыковки должны совпадать. Если G2, то все описанное, плюс вектора ускорений совпадают. Вот и получается - если вектора не совпадают, то либо изменять кривые, чтобы совпали, либо рисовать переходную кривую. Сплайн пятого порядка так устроен что может обеспечить g2 на обоих концах, независимо от того, какие кривые там дальше, у него на это хватает гибкости.
Это влияет на качество, гладкость поверхности. Каким образом этот факт будет выражаться в вашем изделии - ничего не могу сказать. Не знаю ни ваших задач, ни что именно вы моделируете, может вообще с этим заморачиваться не стоит. Для 3д печати вообще есть рекомендации не fillet, а chamfer использовать, там где есть возможность :)
Этот видос вводит в заблуждение. Не совсем правильно показано что такое G0, G1, G2. Используй CV сплайны и показывай как выстраиваются точки, если ты, конечно , в теме. Если говорить пр о гладкость, то все ок.
Добрый день. Спасибо за отзыв! Буду благодарен за указание что конкретно в ролике озвучено не корректно. Если есть ссылки на какие-то материалы для большего погружения - то вообще прекрасно. Что из некорректного мне известно - это то что я говорю что нет средства автоматического обеспечения одинаковой кривизны на стыке кривых - это ошибка, на самом деле есть Curvature Constraint. Плюс, прошу учесть, что на момент записи видео CV сплайнов во фьюжене не было.
Так а чего не зеброй проверять??? Это же тот самый инструмент, который помогает не вооруженным взглядом оценить те самые стыки поверхностей.
Согласен, зебра - как раз тот самый инструмент и про него обязательно расскажу. Здесь на рендеринге я показываю прежде всего зачем это все нужно и как линии с различной непрерывностью производят поверхности различного качества, гладкости.
Больше теоретических выпусков!
Если больше теории, то можно добавить, что для плоской кривой непрерывность (или гладкость) G0 в некоторой точке А означает непрерывность функции, но разрыв производной (т.е. излом). Непрерывность G1 - непрерывность функции и её первой производной, но разрыв второй производной. Соответственно непрерывность G2 - непрерывность функции, первой и второй производной. Существует и гладкость высших порядков.
Есть подозрение, что вы говорите о параметрической непрерывности С0, C1, C2, Cn. :)
А это не меняет сути :) Излом - производная не существует (G0). Если радиус кривизны меняется скачком - вторая производная не существует. Этот эффект давно известен в механике. Например, если железнодорожные рельсы на повороте проложить в виде дуги окружности, сопряженной с прямой (G1), при движении по такому пути возникает так называемый "мягкий удар". Радиус кривизны в точке сопряжения меняется скачком, соответственно центростремительное ускорение и сила инерции возрастают мгновенно. Поэтому для плавного входа поезда в поворот между прямой и дугой окружности вставляют переходную кривую, клотоиду, радиус кривизны которой плавно изменяется от начальной до конечной величины. Клотоида имеет вторую производную и обеспечивает гладкость траектории G2.
Про рельсы не знал. Спасибо за информацию! По поводу производных - согласен.
+
А как добиться г2 при той же форме?
При той же форме чего?
@@dadapasha в примере 3 Вы изогнули грань вовнутрь. Допустим, у нижней грани нельзя изменять форму.
Значит нужен промежуточный CV сплайн пятого порядка (в общем случае), который "состыкует" криволинейные отрезки и сможет создать G2 непрерывность на обоих концах
@@dadapasha Спасибо за оперативный ответ. Я тут вопросами Вас мучаю, ответы на них - это Ваша работа или добрая воля?))
Те правильно понимаю, нужно строить еще один дополнительный отрезок(сплайн) помимо двух?
Здесь на видео в рино сразу выбирают степень непрерывности th-cam.com/video/tTI18fsCCDI/w-d-xo.html
Понимаю, что во фьюжене этого нет. Вместе с тем задачка интересная, для перфекционистов, мне думается.
Зайдём с начала. Есть один отрезок - на конце у него есть координаты точки, касательный вектор (первая производная по координате, или вектор скорости) и некий радиус кривизны (вторая производная, или вектор ускорения). Есть второй отрезок, на его конце то же самое. Для того чтобы достичь G0 первые параметры (координаты) должны совпадать, то есть отрезки должны состыковаться. Если хотим G1, то нужно чтобы была G0 и плюс к этому векторы скоростей в точке стыковки должны совпадать. Если G2, то все описанное, плюс вектора ускорений совпадают. Вот и получается - если вектора не совпадают, то либо изменять кривые, чтобы совпали, либо рисовать переходную кривую. Сплайн пятого порядка так устроен что может обеспечить g2 на обоих концах, независимо от того, какие кривые там дальше, у него на это хватает гибкости.
А это влияет только на момент во время рендеринга, или допустим после 3д печати будут заметны различия ?
Это влияет на качество, гладкость поверхности. Каким образом этот факт будет выражаться в вашем изделии - ничего не могу сказать. Не знаю ни ваших задач, ни что именно вы моделируете, может вообще с этим заморачиваться не стоит. Для 3д печати вообще есть рекомендации не fillet, а chamfer использовать, там где есть возможность :)
Этот видос вводит в заблуждение. Не совсем правильно показано что такое G0, G1, G2. Используй CV сплайны и показывай как выстраиваются точки, если ты, конечно , в теме.
Если говорить пр о гладкость, то все ок.
Добрый день. Спасибо за отзыв! Буду благодарен за указание что конкретно в ролике озвучено не корректно. Если есть ссылки на какие-то материалы для большего погружения - то вообще прекрасно. Что из некорректного мне известно - это то что я говорю что нет средства автоматического обеспечения одинаковой кривизны на стыке кривых - это ошибка, на самом деле есть Curvature Constraint. Плюс, прошу учесть, что на момент записи видео CV сплайнов во фьюжене не было.
За идею сделать выпуск с показом непрерывности на CV сплайнах спасибо, давно зреет, но никак не дойдут руки.