Автоматизированное проектирование. Норенков И.П. - 93 стр.

UptoLike

Составители: 

%!#*%!#&F*:,$* $I*:+*
F*)&* !)!@&'! +($*,#)KH (*L*)&M
5@!"! 3
для которых матрица E имеет иной вид и предст авлена в табл. 3.12, а векторы G
x
, G
y
, G
z
содержат со-
ответствующие координаты точек P
i-1
, P
i
, P
i+1
, P
i+2
.
Покажем, что в точках сопряжения для первой и второй производных аппроксимирующего выражения выполняют-
ся условия непрерывности , что требуется по определению I-сплайна. Обозначим участок аппроксимирующего В-сплай-
на, соответствующий участку [P
i
, P
i+1
] исходной кривой, через [Q
i
, Q
i+1
]. Тогда для этого участка и координаты , в точке
сопряжения Q
i+1
имеем t=1 и
dx(t)/dt|
t=1
= [3t
2
,2t,1,0]*M*[x
i-1
,x
i
,x
i+1
,x
i+2
]
T
= [3,2,1,0]*M*[x
i-1
,x
i
,x
i+1
,x
i+2
]
T
= (x
i+2
-x
i
) / 2;
d
2
x(t)/dt
2
|
t=1
= [6t,2,0,0]*M*[x
i-1
,x
i
,x
i+1
,x
i+2
]
T
= [6,2,0,0]*M*[x
i-1
,x
i
,x
i+1
,x
i+2
]
T
= x
i
-2 x
i+1
+ x
i+2
.
Для участка [Q
i+1,
Q
i+2
] в той же точке Q
i+1
имеем t=0 и
dx(t)/dt|
t=0
= [0,0,1,0]*M*[x
i
, x
i+1
,x
i+2
, x
i+3
]
T
= (x
i+2
-x
i
) / 2,
d
2
x(t)/dt
2
|
t=0
= [0,2,0,0]*M*[ x
i
, ,x
i+1
,x
i+2
, x
i+3
]
T
= x
i
-2 x
i+1
+ x
i+2
,
т.е. равенство производных в точке сопряжения на соседних участках подтверждает непрерывность касательного вектора
и кривизны. Естественно, что значение x
q
координаты x точки Q
i+1
аппроксимирующей кривой на участке [Q
i
, Q
i+1
]
x
q
= [1,1,1,1]*M*[x
i-1
,x
i
,x
i+1
,x
i+2
]
T
= (x
i
+4 x
i+1
+x
i+2
) / 6
равно значению x
q
, подсчитанному для той же точки на участке [Q
i+1,
Q
i+2
], но значения координат узловых точек x
q
и x
i+1
аппроксимирующей и аппроксимируемой кривых не совпадают.
Аналогично можно получить выражения для форм Безье и I-сплайнов применительно к поверх-
ностям с учетом того, что вместо (3.48) используются кубические зависимости от двух переменных.
E
.-451 + :D@48+-/1 /:I+0042 @8:H+7+ (345@4-497+ 7 9+?<:D+?:=++). К методам машин-
ной графики относят методы преобразов ания графических объек тов, представления (развертки) линий
в растровой форме, выделения окна, удаления скрытых линий, проецирования, закраски изображ ений.
!"$#2")6#()*'9 8")E'1$+%', #23$%&#( выполняются с помощью операций переноса, масштаби-
рования, поворота.
Перенос точки из положения % в новое положение * можно выполнять по формулам типа
C
xi
= P
xi
+ ,
i
,
где ,
i
приращение по координате x
i
. Однако удобнее операции преобразования представлять в
единой матричной форме
C = P M, (3.50)
где M преобразующая матрица. При этом точки C и P в двумерном случае изображают векторами-
строками 1×3, в которых кроме значений двух координат, называемых при таком представлении одно-
родными, дополнительно указывают масштабный множитель W. Тогда перенос для случая 2D можно
выразить в виде (3.50), где M есть табл. 3.13, а W = 1.
Для операций масштабирования и поворота матрицы M представлены в табл. 3.14 и 3.15 соот-
ветственно, где m
x
, m
y
масштабные множители, ϕ угол поворота.
Удобство (3.50) объясняется тем, что любую комбинацию элементарных преобразований можно
описать формулой (3.50). Например, выражение для сдвига с одновременным поворотом имеет вид
* = % M
сд
M
пов
= % M,
где M = M
сд
M
пов
,
,
M
сд
матрица сдвига, M
пов
матрица поворота.
!"$-+&)(4$*'$ 8")E'1$+%', B4$/$*&#( ( ")+&"#(#; E#"/$ требуется для отображения этих эле-
ментов на битовую карту растровой видеосистемы. Пусть требуется развернуть отрезок AB прямой
y = ax+b, причем 1 a 0. Введем обозначения: C = (xa, ya), ( = (xb, yb); за величину дискрета (пик-
&.+.)$(*),$". !"#$%!#&'&($"!))$* +($*,#&($"!)&*
93
1 00
0 1 0
,
1
,
2
1
cos ϕ sin ϕ
0
-sin ϕ cos ϕ
0
001
m
x
00
0 m
y
0
001
M:BD+=: 3.)3 M:BD+=: 3.)4
M:BD+=: 3.)5
 5@!"! 3                                          %!#*%!#&F*:,$*              $I*:+*F*)&* !)!@&'! +($*,#)KH (*L*)&M

для которых матрица E имеет иной вид и представлена в табл. 3.12, а векторы Gx, Gy, Gz содержат со-
ответствующие координаты точек Pi-1, Pi, Pi+1, Pi+2.
       Покажем, что в точках сопряжения для первой и второй производных аппроксимирующего выражения выполняют-
ся условия непрерывности, что требуется по определению I-сплайна. Обозначим участок аппроксимирующего В-сплай-
на, соответствующий участку [Pi, Pi+1] исходной кривой, через [Qi, Qi+1]. Тогда для этого участка и координаты , в точке
сопряжения Qi+1 имеем t=1 и
           dx(t)/dt|t=1 = [3t2,2t,1,0]*M*[xi-1,xi,xi+1,xi+2]T = [3,2,1,0]*M*[xi-1,xi,xi+1,xi+2]T = (xi+2-xi) / 2;
           d2x(t)/dt2|t=1 = [6t,2,0,0]*M*[xi-1,xi,xi+1,xi+2]T = [6,2,0,0]*M*[xi-1,xi,xi+1,xi+2]T = xi-2 xi+1+ xi+2.
      Для участка [Qi+1, Qi+2] в той же точке Qi+1 имеем t=0 и
           dx(t)/dt|t=0 = [0,0,1,0]*M*[xi, xi+1,xi+2, xi+3]T = (xi+2-xi) / 2,
           d2x(t)/dt2|t=0 = [0,2,0,0]*M*[ xi, ,xi+1,xi+2, xi+3]T = xi-2 xi+1+ xi+2,
т.е. равенство производных в точке сопряжения на соседних участках подтверждает непрерывность касательного вектора
и кривизны. Естественно, что значение xq координаты x точки Qi+1 аппроксимирующей кривой на участке [Qi, Qi+1]
           xq = [1,1,1,1]*M*[xi-1,xi,xi+1,xi+2]T = (xi+4 xi+1+xi+2) / 6
равно значению xq, подсчитанному для той же точки на участке [Qi+1, Qi+2], но значения координат узловых точек xq и xi+1
аппроксимирующей и аппроксимируемой кривых не совпадают.
      Аналогично можно получить выражения для форм Безье и I-сплайнов применительно к поверх-
ностям с учетом того, что вместо (3.48) используются кубические зависимости от двух переменных.
      E.-451 + :D@48+-/1 /:I+0042 @8:H+7+ (345@4-497+ 7 9+?<:D+?:=++). К методам машин-
ной графики относят методы преобразования графических объектов, представления (развертки) линий
в растровой форме, выделения окна, удаления скрытых линий, проецирования, закраски изображений.
      !"$#2")6#()*'9 8")E'1$+%', #23$%&#( выполняются с помощью операций переноса, масштаби-
рования, поворота.
      Перенос точки из положения % в новое положение * можно выполнять по формулам типа
         Cxi = Pxi + ∆,i,
где ∆,i — приращение по координате xi. Однако удобнее операции преобразования представлять в
единой матричной форме
         C = P M,                                                                 (3.50)
где M — преобразующая матрица. При этом точки C и P в двумерном случае изображают векторами-
строками 1×3, в которых кроме значений двух координат, называемых при таком представлении одно-
родными, дополнительно указывают масштабный множитель W. Тогда перенос для случая 2D можно
выразить в виде (3.50), где M есть табл. 3.13, а W = 1.
     Для операций масштабирования и поворота матрицы M представлены в табл. 3.14 и 3.15 соот-
ветственно, где mx, my — масштабные множители, ϕ — угол поворота.
                 M:BD+=: 3.)3                                       M:BD+=: 3.)4                                      M:BD+=: 3.)5
             1         0       0                           mx             0           0                   cos ϕ        sin ϕ    0
             0         1       0                            0           my            0                   -sin ϕ       cos ϕ    0
           ∆,1       ∆,2       1                            0             0           1                      0           0      1


     Удобство (3.50) объясняется тем, что любую комбинацию элементарных преобразований можно
описать формулой (3.50). Например, выражение для сдвига с одновременным поворотом имеет вид
         * = % Mсд Mпов = % M,
где M = Mсд Mпов, ,Mсд — матрица сдвига, Mпов — матрица поворота.
     !"$-+&)(4$*'$ 8")E'1$+%', B4$/$*&#( ( ")+&"#(#; E#"/$ требуется для отображения этих эле-
ментов на битовую карту растровой видеосистемы. Пусть требуется развернуть отрезок AB прямой
y = ax+b, причем 1 ≥ a ≥ 0. Введем обозначения: C = (xa, ya), ( = (xb, yb); за величину дискрета (пик-

 &.+.)$(*),$" . !"#$%!#&'&($"!))$*                          +($*,#&($"!)&*                                                           93