Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.04;
Скачать: CL | DM;

Вниз

Простейшая линейная интерполяция...   Найти похожие ветки 

 
Кефир87   (2005-05-11 17:46) [0]

Я уже третий день бъюсь... Вроде все просто... Я даже формулу знаю... Но вот никак ничего подставить в нее не могу...
Задача:
Дан полигон у которого все четыре точки заданны координатами x,y,z. Дана некая точка... скажем M заданная координатами x,z... Так вот как для нее интерполировать y...
Это у меня карта высот 8)


 
Кефир87   (2005-05-11 18:08) [1]

Я хотел сделать так... По формуле

      x-x1          x-x0
f(x) = ----- * y0 + ------ * y1
      x0-x1        x1-x0


Для одной стороны... потом для другой... А потом интерполировать между результатами предидущих действий... Не получилось... Надоело думать!


 
Asteroid ©   (2005-05-11 18:10) [2]

Пусть точки заданы как
0...1
.   .
2...3


function Lerp( a, b, t: Single ): Single;
begin
 Result := ( 1 - t ) * a + t * b;
end;

Сначала интерполируем y по координате x:
tx := ( x - x0 ) / ( x1 - x0 );  // x1 - x0 - это шаг сетки по x
ya := Lerp( y0, y1, tx );
yb := Lerp( y2, y3, tx );

А теперь полученные ya и yb по z:
tz := ( z - z0 ) / ( z2 - z0 ); // z2 - z0 - шаг сетки по z
y := Lerp( ya, yb, tz );

Вот и все...


 
Asteroid ©   (2005-05-11 18:16) [3]

Попробую поточнее нарисовать (если не собьется):
0...a..1   +-->
.   .  .   |   x
.   .  .   v
.   .  .    z
....y...
.   .  .
2...b..3


 
Кефир87   (2005-05-12 17:39) [4]


> Asteroid

Спасибо! Я все понял. Все получилось 8)



Страницы: 1 вся ветка

Текущий архив: 2005.09.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.058 c
14-1123743359
Труп Васи Доброго
2005-08-11 10:55
2005.09.04
SOS!!! Надо воостановить данные!!!


3-1122314456
Оран Гутангович
2005-07-25 22:00
2005.09.04
Доступ к ADO таблице


3-1122226226
sach
2005-07-24 21:30
2005.09.04
объекты и БД


14-1123661739
REP
2005-08-10 12:15
2005.09.04
XP, DOS программы и клавиатура


1-1123751173
Русланка
2005-08-11 13:06
2005.09.04
Как программно выделить один из Item в TreeView?