Женская грудь - идеальная упаковка для молока!

Представление кривых

Существует множество способов построения кривых вручную с помощью карандаша, ручки, кисточки, ножа и разнообразных инст­рументов: линейки, лекала, циркуля, плаза, шаблона и т. д. Каждый инструмент служит определенной цели, причем нет пи одного абсо­лютно универсального. Точно так же в машинной графике кривые строятся с помощью разных методов и инструментов.

Кривая может быть представлена совокупностью точек. Если точки расположены близко друг от друга, то, соединяя их отрезками прямой, мы получим изображение кривой. Точки на кривой можно расположить равномерно по ее длине. В результате получается довольно плохое пред­ставление кривой, особенно если мал радиус кривизны. Улучшить вид кривой можно, увеличивая плотность точек в таких участках.

Хотя кривые могут быть достаточно хорошо представлены сово­купностью точек, аналитическое представление во многих отноше­ниях предпочтительнее. Его преимущества — это точность, компакт­ность записи и простота вычисления промежуточных точек. Анали­тическое представление позволяет без труда определить наклон и радиус кривизны, а при точечном представлении для этого требует­ся численное дифференцирование — чрезвычайно неточная проце­дура. Сравните объем памяти для точечного представления окруж­ности с 32 точками на ней и аналитическое представление — коорди­наты центра и радиус.

При аналитическом представлении кривой молено точно определить положение любой точки, а при точечном нужна интерполяция, причем в общем случае результат интерполяции не принадлежит кривой.

Опыт показывает, что аналитически представленные кривые лег­че изображать на рисунке. Аналитическое представление выгоднее, когда для удовлетворения заданному критерию необходимо непре­рывно изменять форму кривой.

Часто требуется аналитическое представление кривой, первона­чально заданной точками. Для того чтобы провести кривую через все заданные точки, применяется метод кусочной полиномиальной апп­роксимации. Для этого требуется определить коэффициенты поли­нома некоторой степени. Вид кривой в промежуточных точках зави­сит от степени полинома и граничных условий.

Если же точки — только приблизительные значения величин, на­пример данные экспериментальных измерений или наблюдений, то нужна кривая, задающая верное направление изменения В общем случае кривая может не проходить ни через одну точк) данных. Здесь применяется метод наименьших квадратов. Этот метод дает кривую в виде у =f{x), которая минимизирует сумму квадратов отклонений по оси у между данными и полученной кривои. Вид у = J[x) выбирают, исходя из характера изучаемого процесса.

Обычно для метода наименьших квадратов используются полино­мы, линейные, степенные и окспоненциа аьные функции. Независимо от выбора вида кривой метод требует решения системы линейных ал гебраических уравнений для определения неизвестных конст ант.

Непараметричсские кривые. Математ ически кривая может бы гь представлена в параметрической или непараметрической форме. Непараметрическая кривая задается в виде явной или неявной фун­кции. Для плоской кривой явное неиараметрическое представле­ние имеет вид: y~jlx). Одному значению л: соответствует только одно значение у, поэтому замкнутые или многозначные кривые, на пример окружность, явно представить нельзя. Неявное представле­ние j{x, У) = 0 позволяет обойти это ограничение.

Как явное, так и неявное непараметрическое представление осе — зависимо, т. е. сложност ь обработки зависит от выбора системы ко­ординат. Например, если в заданной системе координат граничным условием является вертикальный наклон, нужно либо изменить ее, либо аппроксимировать бесконечный коэффициент наклона наи­большей допустимой положительной или отрицательной величиной.

Кроме того, если точки на осезависимой непараметрической кри­вой вычисляются с равномерным приращением по хили у, они не будут равномерно распределены вдоль кривой. Это может повлиять на каче­ство и точность графического изображения. Тем не менее непарамет — рическое представление бывает полезным. Теперь рассмотрим пара­метрическое представление, позволяющее обойти эти ограничения.

Параметрические кривые. В параметрическом виде каждая ко ордината точки кривой представлена как функция одного парамет­ра. Значение параметра задаст координатный вектор точки на кри­вои. Для двумерной кривой с параметром ^координаты точки равны

Х= x(t),y = y(t).

Тохда векторное представление точки на кривой

Л’И*8 уШ.

Чтобы полупить непараметрическую форму, нужно исключить T Из двух уравнении и вывести одно в терминах х и у.

Параметрическая форма позволяет представить замкнутые и мно — гозначные кривые. Производная, т. е. касательный вектор, есть

Р'(‘) = [*'(‘) уШ

Так как точка на параметрической кривой определяется только значением параметра, эта форма не зависит от выбора системы ко­ординат Конечные точка и длина кривой определяются диапазоном изменения параметра. Часто бывает удобно нормализовать параметр на отрезке кривой к 0 < T< 1. Осенезависимость параметрической кривой позволяет с легкостью проводить с ней аффинные преобра­зования.

Самое простое параметрическое представление у прямой. Для двух векторов положения Р и Р2 параметрический вид отрезка прямой между ними такой:

P{t) = P1+(P2-P})2, 0<*<1.

Так как P(l) это вектор, у каждой его составляющей есть пара­метрическое представление x(t) и y(t) между Р] и Р2:

X(t) = x^ + (x2-xi)t-,

0</<1.

Параметрическое представление окружности Параметрическое представление окружности радиуса г с центром в начале координат:

Х = г cosa; у= г sina, 0< а< 271.

Где а — параметр.

Полной окружности соответствует диапазон изменения парамет­ра а от 0 до 271. Равномерное приращение параметра а дает хорошее изображение окружности, поданный алгоритм неэффективен из за частого вызова тригонометрических функций.

Нижеприведенный алгоритм дает лучшие результаты по времени вычислений.

Если рассматривать некоторое фиксированное число равномер но распределенных точек по окружности, то приращение параметра между точками можно считать константой. Координаты любой точ­ки на окружности с центром в начале координат

Х = rcos(a + Да); yrtl = rsm(ai + Aa).

По формуле суммы углов

= r(cosCt, cosAa — sina sinAa); у = r(cosa(sinAa + sina cosAa).

Воспользуемся тем, что для a = a

Л: = г cos a;

TOC o "1-3" h z I г

У = rsina, 0<a <2,

-I I r

И получим рекурсивные у равнения

Х, = х cosAa — — у sinAa;

/»1 I У i ‘

У = х. sinAa + у. cosAa, что соответствует повороту точки (х., у.) на Аа.

Так как Аа постоянно и равно 2п/(п — 1), где п — количество равномерно распределенных но окружности точек, значения sin и cos нужно вычислить только один раз. Во внутреннем цикле исполь­зуются только четыре умножения, вычитание и сложение, поэтому алгоритм работает очень быстро.

Стандартное параметрическое представление единичной Окруж­ности имеет вид

Х = cosa; У = sina, 0 < a < 2П.

Следующее параметрическое представление также имеет вид дуги единичной окружности в первом квадранте:

ДО в 1X0 ><03 = [(1-0/(1 + О 2£/(1 + 0]. 0<f<i.

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

Параметрическое представление эллипса. Стандартное пред­ставление эллипса с центром в начале координат, большой полуосью А и малой полуосью B имеет вид

Х = a cosa;

У = B sina. 0 < a < 2п (6.1 ] 5)

Если рассчитывать точки эллипса через равные приращения угла, изображение будет неверным. Особенно сильно неточности прояв­ляются на концах, где кривизна слишком велика и требуется большое количество точек.

Если задано фиксированное количество точек на эллипсе, мож но, пользуясь формулами суммы углов, получить эффективный алго­ритм. Координаты любой точки на эллипсе:

Х = «cos(a + Да);

= Да),

Где Да = 271/(п — 1) — фиксированное приращение а; п — количество точек на периметре; at — значение параметра для х. и у.. По формуле суммы углов

Х^ = a (cosat cosAa — sina( sinAa); у^ = b( cosa_ sinAa+ sinat cosAa). (6.116)

Используя (6.115), перепишем уравнения (6.116): x^j = x cosAa — (a/b) у. sinAa;

Y.+1= (b/ a)x, sin Aa + y. cosAa. (6.117)

Чтобы получить эллипс с центром не в начале координат и с глав­ной осью, расположенной под углом к горизонтали, сто поворачива­ют вокруг начала координат, а затем переносят.

Как видно из системы уравнений (6.117), окружность является частным случаем эллипса при а = к

Пространственные кривые. Трехмерные или пространственные кривые широко используются в проектировании и разработке самой различной упаковочной продукции: бутылок, банок, коробок и т. д.

До начала применения математических и компьютерных моделей в процессе производства, дизайна и изготовления их использовалась начертательная геометрия. Многие ее методы были перенесены в машинную графику.

Поверхности часто изображаются как сеть кривых, лежащих в ортогональных секущих плоскостях, с трехмерными контурами де­талей. Сечения получаются оцифровкой физической модели или чер­тежа и математическим подбором кривой, проходящей через все за­данные точки. При этом используются два таких метода: кубические сплайны и параболическая интерполяция. Существуют и иные реа­лизации этого подхода.

Другой подход состоит в том, что математическое описание кри­вых генерируется без изначального знания формы кривой. Его при­меры — кривые Безье и их обобщение до В-сгшайнов. Эти методы отли­чаются тем, что кривая может не проходить ни через одну заданную точку. Контрольные точки определяют только направление изгиба.

Трехмерные кривые можно представить параметрически или не­параметрически. Явное непараметрическое представление имеет вид

X=x,y=J{x),z= g(x).

Неявное ненараметрическое представление кривой как пересече­ния двух поверхностей задается уравнениями:

/х, у, z) = 0, g(x, У, z) = 0.

Общий параметрический вид пространственной кривой можно записать в виде

Х — *(t),y = y(t), z=z(l). Где параметр / изменяется в определенных пределах < T < Tr

В приведенном выше явном непараметрическом представлении х можно рассматривать как параметр, х= L Тогда этаже кривая имеет нараметричес кую форму

Х=/,у=Д0, z = g{t).

Кубические сплайны. В промышленном производстве, например судо-, автомобиле — и авиастроении, окончательная форма в реальном или близком к нему масштабе определяется в процессе доводки.

Ав гоматизация этого процесса представляла значительный инте­рес для машинной графики Формл математического сплайна повто­ряет контур физи ческого сплайна, г. е. гибкой деревянной или пласт­массовой линейки (рейки), проходящей через определенные точки. Для изменения формы сплайна используются свинцовые грузики. Меняя их количество и расположение, получившуюся кривую стара­ются сделать более гладкой, красивой и «приятной для глаза >.

В общем случае математическии сплайн — это кусочный полином степени к с непрерывной производной степени к — 1 в точках соедине­ния сегментов. Гак, кубический сплайн имеет в точках соединения не­прерывность второго порядка. Кусочные сплайны из многочленов не­высокого порядка очень удобны для интерполяции кривых, так как они не требу ют больших вычислительных зат| >ат и не вызывают численных отклонений, свойственных многочленам высокого порядка. По анало­гии с физическими сплайнами обычно используе гея серия кубических сегмент ов, причем каждый сегмент проходит через две точки. Кубичес­кий енлайн удобен еще и тем, чт о. это кривая наименьшего порядка, до­пускающая точки перегиба и изгиб в пространстве.

Уравнение одного параметрического сегмента сплайна

P{T)=*$M/- <,<-<■*. (6.118)

I-i

Где I и t значения параметров в начале и конце сегмента; P(t) Вектор к любой точке сегмента.

В случае декартовых координат

Я0 = [п*) y(t) z(t).

В цилиндрической системе координат

P(t)=[3 B{t) 2(0], где r(t), 9(/), 2(0 — компоненты цилиндрической системы координат

Каждая составляющая имеет вид, похожий на P(t), т. е.

У«)=й V10 =

Г=1 T<t<l2.

ГГосчрднныс коэффициенты В вычисляются исходя из четырех гра­ничных условий для сегмента сплайна. Запишем уравнение (6 .118) в виде

Д0 = +V’ (бЛ19)

Пусть Р} и Р,— векторы концов сегмента (рис. 6.22). Пусть также Р и Р производные по T, будут касательными векторами в концах сегмеша. Дифференцируя уравнение (6.118), получим

P‘(t)= [xt) I(t) zl)]=iBi(t-iy-2, tx<t<t2.

I=l

Запишем результат:

Предположим, без потери общности, что L = 0, и применим гра­ничные условия:

ДО) = Pi, ДО = Р2, Р'{0) = Р, 4ЩЦ = Р’г.

Получим четыре уравнения для неизвестных В :

Р{0) = В = Р ; ‘ (6.120)

Р'(0) = /?2=Р;; (6.121)

Д Q = ^ + Н В, Q ;

Решения для В и В имеют вид:

Л, 3(Р2 — Я,)/^ — 2РД — К/1,; (6.122)

Д4 — 2(Р, — Я2)/<2′ + Р / + Р. г . 16.123)

Величины В. у В, В^ и задают сегмент кубического сплайна. Оче­видно, что форма сегмента зависит от положения касательных векто­ров в концах сегмента. Далее, заметим, что в результатах присутствует значение параметра TT2 в конце сегмента. Так как каждая конечная точка и вектор касания имеют гри компоненты, параметрическое урав­нение ю бической пространственной кривой зависит от двенадцати векторных компонент и значения параметра t2 в конце cei мента.

Чтобы построить кривую целиком, нужно соединить множество сегментов — На рис. 6.23 показаны два соседних сегмента.

Г’,

Р

Г

Риг 6.23. Один сегмент кубического сплайна

Если известны векторы Р, Р, Р, касательные в< кторы Р’, Р’, Р’ и значения параметров lr t. s (рис. 6.24), то форма каждого сегмента оп­ределяется из уравнения (6.119) Однако маловероятно, что извес­тен касательный вектор Р’ в точке соединения. Его можно вывести из условия непрерывности.

Л-Н __

Представление кривых

Рис. 6.24. Два кусочно кубических сегмента сплайна

Вспомним, что кусочный сплайн степени к имеет непрерывность степени к-1 в точках соединения; непрерывность кубического сплай­на равна двум. Для этого должна быть непрерывна вторая производ­ная Р" (А пли кривизна линии. Дважды продифференцировав урав ненке (6 118), получим

P‘(t)-lxV) yV) = 1)(г- tx <l<t2. (6 124)

I=l

Для первого куска сплайна параметр изменяется в пределах О <t< T2. Подставим t = t в уравнение (6.124).

/

РЛ л2

4 Р"=ЪВА12 + Щ.

Для второго участка сплайна параметр изменяется в диапазоне О <t<1Ъ к Подставим в уравнение (6.124) значение /= 0 в начале второ­го участка

Р" = Щ.

Приравнивая полученные результаты и пользуясь равнениями (6.120)-(6.122), будем иметь

6^[2(P, — Р2) А/+Р/Q+Rwt + — р})м — 2Ц д — к т =

= 2 [ЦР, — M/Q 2 р; /<, — р; /д. (6.125)

Левая чаегь этого уравнения представляет кривизну в конце пер вого сегмента, а правая — в начале второго. Умножим обе части урав­нения (6.125) на t2t$ и сгруппируем члены:

/Зр; +2(^ + ypg + Lp; =з[/21!(р3-р?)^^(р2-р1)]/(у3) (6.126)

Отсюда определяется Р ~ неизвестный касательный вектор в точке соединения. Отметим, что в окончательном уравнении опять присутств^т значения параметра T в концах cei ментоь (2 и.

Формулу можно обобщить для п точек, и для 72-1 сегментов ку­бического сплайна получить непрерывность второго порядка в точ­ках соединения.

Кривые Безье. Существует класс задач, когда решение зависит как от функциональных, так и от эстетических требований, например дизайн поверхности мебели, посуды или упаковки. Кроме количе­ственных критериев здесь требуется учет практического опыта, и часто необходимо интерактивное вмешательс гво разработчика.

Рассмотренные выше методы, в частности кубические сплайны, неудобны для интерактивной работы. Направление и величина каса­тельных не дают необходимого интуитивного представления о кри­вой, так как неочевидна связь между набором чисел и формой соот­ветствующей кривой.

Пьер Безье предложил друг ой метод создания кривых и поверхнос­тей любой ф( >рмы. Безье вывел математическу ю основу своего метода из геометрических соображений, но его результ ат эквивалентен ба­зису Бернштеина или функции полиномиальной аппроксимации.

Кривая Безье задается многоугольн иком, как показано на рис. 6.25. Так как базис Безье является бернштейновским, сразу же известны некоторые свойства кривых Безье, например:

Функции базиса вещественны.

Степень многочлена, определяющего участок кривой, на единицу меньше количества точек соответствующего многоугольника. Осно­ва формы кривой повторяет очертания многоугольника. Первая и последняя точки кривой совпадают с соответствующими точками определяющего многоугольника.

Векторы касательных в концах кривой по направлению совпада­ют с первой и последней сторонами многоугольника.

Кривая лежит внутри выпуклой оболочки многоугольника, т. е. внут­ри самого большого многоугольника, построенного но заданным точкам.

Кривая обладает свойством уменьшения вариации. Это означает, что кривая пересекает любую прямую линию не чаще, чем определя­ющий многоугольник.

Кривая инвариантна относительно аффинных преобразований.

Представление кривых

Рис. 6.25. Кривая Безье и определяющие ее точки

На рис. 6.26 показано несколько четырехточечных многоугольни­ков Безье и соответствующих кривых. На основе перечисленных выше свойств можно легко научиться предсказывать форму кривой по виду многоугольника.

К2

Представление кривых

Рис. 6.26. Многоугольники Безье для кубических кривых

Математическое параметрическое представление кривой Безье имеет вид

/Ч0=ХЧЛ;Ю. О<1<1, (6.127)

Г=0

Где базис Безье или Бернштейна (функция аппроксимации)

П

<‘(1-0

Г

П-г

(6.128)

У

У1 J

П

I{n — i)

(W

Г Г

I

V J

1

3!

Г!(3-1)!’

Ai (0=ЗД-0*; АО = + A A, + &Jv2 + As =

Коэффициенты для кривои Безье

Рассмотрим построение кривои Безье на примере. Пусть заданы вершины прямоугольника Безье: Л()[1 1], В{[2 3]; В2[4 3]; В%[Ъ 1]. Найти семь точек, лежащих на кривой Ьезье. В нашем случае п = 3, так как имеется четыре вершины. Отсюда

Итак,

Таблица 6.5

T

JCI

Л>

Ла

Аз

0

1

0

0

0

0,15

0,614

0,325

0,058

0.С04

0,35

0,275

0,444

0,239

0.042

0,5

0,125

0.375

0,375

0,125

0,65

0 042

0,239

0 444

0,275

0,85

0,003

0,058

0.325

0 614

1

0

0

0

1

Значения^ для различных значений T приведены в табл. 6.5. Точ­ки на кривой: Р(0)=В1Г[ 1];

ДО, 15) =0,614 Bi + 0,825 В{ + 0,058 Д, + 0,008 Bs = [1,5 1,765]; Д0,35) = 0,275^’+ 0,444Я + 0.239Д, + 0,042 = [2,248 2,367]; ДО,5) =0,125 Вп + 0,375 В1 + 0,375 В, + 0,125 1% = [2,75 2,5]; ДО,65) = 0,042До + 0,239 Д, + 0,444 В2 + 0,275В.} = [3,122 2,367]; Р(0,85) = 0,003 В0 + 0,058Bj + 0.325Д, + 0,614Л, = [3,248 1,765]; Д1) = /?3 = [3 1].

Эти точки показаны на определяющем многоугольнике на рис. 6.27.

Представление кривых

Рис. 6.27. Сегмент кривой Ьезье

Fio *

Уравнение кривой Безье можно записать в матричном виде, так же как уравнения для кубических сплайнов и параболическом интерполяции:

P(l) = TNG= FG, Здесь 7 = [Г г’ … 1 1], / = Ц,.0 Л, … /,.„], С — [В0 Вх … Я],

H

Fn"

-n

V J

V

/

(-1)’

ПУп-1 1 п-1

О

П-1

1-1 г

НГ1

(-1)

0

Ч

Г пУ п-1 1 п-2

Ч

П Y п 0 п-1

П-2

(-1)

О

/

Л =

ПУп-Г

О

И)1

О

О

Ч1

ПУп О 0

О

(-■У

О

/

Особенный интерес представляют матричные формы для малых значений п. Для многоугольника из четырех точек (п = 3) кривая Бе­зье имеет вид

Be

B

&

Р(*) = [(1-03 3/(1 — tf 3t2(l-t) ;3j

Во

Bi

Щ,

Группируя коэффициенты, получим

P(t) = [l* ПГ

-1 3 -3

3-6 3 -3 3 О 1 О О

= 4),

Аналогично, кривая Безье четвертого порядка (г? многоугольником из пяти точек:

"-1

-4

6

-4

1"

‘Во

-4

12

-12

4

0

Bl

6

-12

6

0

0

Fh

-4

4

0

0

0

В*

1

0

0

0

0

В*

Comments are closed.

СИСТЕМЫ АВТОМАТИЗИРОВАННОГО ПРОЕКТИРОВАНИЯ УПАКОВОЧНОГО ПРОИЗВОДСТВА

Использование специализированных САПР в допечатной стадии производства упаковки

Важным этапом произволе тва упаковки является доиечатный про­цесс. Качество готовой упаковки в значительной степени определя­ется допечатной стадией — дизайном. Можно утверждать, что конку­рентоспособность производителя полиграфической продукции оп­ределяется уровнем дизайна, который не в последнюю очередь зави­сит от программ ных с редств. Ксли вспомнить эволюцию систем допечатной подготовки, то можно отметить следующие закономерности Вначале применялись закрытые системы […]

Симплексный метод

Геометрическая интерпретация симплексного метода. В т еории линейного программирования рассмотрены основные теоремы ли­нейного программирования, из которых следует, что если задача ли­нейного программирования имеет оптимальное решение, то оно со­ответствует хотя бы одной угловой точке многогранника решений и совпадает по крайней мере с одним из допустимых базисных реше­ний системы ограничений. Там же указан путь решения любой зада­чи […]

Математическое обеспечение подсистем машинной графики и геометрического моделирования

Изучение математического аппарата, лежащего в основе машин­ной графики и проектирования геометрии упаковки, начнем с рассмот­рения способов вывода и преобразования точек и линий. Эти спосо­бы наряду с соответствующими алгоритмами рисования используют­ся для изображения объектов или визуализации графической инфор­мации. Возможность проводить преобразования точек и линий явля­ется фундаментом машинной графики. Нарисованный объект может быть представлен в нужном масштабе, […]