Информационные и коммуникационные технологии. Дешко И.П - 122 стр.

UptoLike

122
нижний горизонт» опускается). При использовании таких мас-
сивов текущая кривая в какой-либо точке полагается видимой,
если при заданном значении
x значение у либо больше соответст-
вующего значения в массиве верхнего горизонта, либо меньше
аналогичного значения в массиве нижнего горизонта. Если кри-
вая в данной точке видима, значение
у заносится в один из масси-
вов на место прежнего элемента.
При аналитическом задании исходной функции расчет кри-
вых с единичной дискретностью изменения
х, как правило, не
вызывает трудностей. Если же по каким-либо причинам (напри-
мер, при обработке результатов экспериментальных исследова-
ний) шаг задания точек по оси
x больше 1, при расчете значений
y в промежуточных точках применяется интерполяция (чаще все-
го линейная) значений
y между известными значениями. Полу-
ченные таким образом значения
y используются затем как при
анализе видимости кривых в этих точках, так и при заполнении
массивов верхнего и нижнего горизонтов.
Приведем уравнение, соответствующее линейной интерпо-
ляции кривой между двумя известными точками с координатами
(
x
n
, y
n
) и (x
n+k
, y
n+k
) (здесь kшаг задания точек по оси х):
(
)
(
)
(
)
nnnknnkn
yxx*xxyyy
+
=
++
.
При изложенном подходе,
когда обрабатываемая текущая
кривая появляется слева или
справа из-под множества ранее
обработанных кривых, может
появиться некорректность в
изображении поверхности
эффект зазубренного ребра
(на рис.5 приводящие к иска-
жению фрагменты кривой по-
казаны пунктиром). Избежать такого эффекта можно относитель-
но простым приемом: при обработке каждой текущей кривой (за
исключением первой) создаются ложные боковые ребра, соеди-
няющие соответственно крайние левые и крайние правые точки
текущей и предыдущей кривых (на рис.5 – штрихпунктирные ли-
Рис.5.Устранение эффекта за-
зубренного ребра
y
x
0
2 4 6 8 10 12 14
                                  122

(«нижний горизонт» опускается). При использовании таких мас-
сивов текущая кривая в какой-либо точке полагается видимой,
если при заданном значении x значение у либо больше соответст-
вующего значения в массиве верхнего горизонта, либо меньше
аналогичного значения в массиве нижнего горизонта. Если кри-
вая в данной точке видима, значение у заносится в один из масси-
вов на место прежнего элемента.
       При аналитическом задании исходной функции расчет кри-
вых с единичной дискретностью изменения х, как правило, не
вызывает трудностей. Если же по каким-либо причинам (напри-
мер, при обработке результатов экспериментальных исследова-
ний) шаг задания точек по оси x больше 1, при расчете значений
y в промежуточных точках применяется интерполяция (чаще все-
го линейная) значений y между известными значениями. Полу-
ченные таким образом значения y используются затем как при
анализе видимости кривых в этих точках, так и при заполнении
массивов верхнего и нижнего горизонтов.
       Приведем уравнение, соответствующее линейной интерпо-
ляции кривой между двумя известными точками с координатами
(xn , yn) и (xn+k , yn+k) (здесь k – шаг задания точек по оси х):
                y = ( yn+ k − yn ) ( xn+ k − xn )* ( x − x n ) + y n .
 y                                                При изложенном подходе,
                                            когда обрабатываемая текущая
                                            кривая появляется слева или
                                            справа из-под множества ранее
                                            обработанных кривых, может
                                       x появиться некорректность в
0 2 4 6 8 10 12 14                          изображении поверхности –
 Рис.5.Устранение эффекта за- эффект зазубренного ребра
          зубренного ребра                  (на рис.5 приводящие к иска-
                                            жению фрагменты кривой по-
казаны пунктиром). Избежать такого эффекта можно относитель-
но простым приемом: при обработке каждой текущей кривой (за
исключением первой) создаются ложные боковые ребра, соеди-
няющие соответственно крайние левые и крайние правые точки
текущей и предыдущей кривых (на рис.5 – штрихпунктирные ли-