На: построение линий уровня

From
Алексей Д. ()
To
Alexey Osokin
Date
2002-06-27T10:38:25Z
Area
RU.ALGORITHMS
From: "Алексей Д." <odegtyarenko@ukrtelecom.net>

> Озадачен целью создать функцию построения
> изолиний - не подскажешь, с чего начать?
> Теорию, алгоритмы или может кто знает где готовое можно нарыть?

    Я бы эту задачу решал так:
1. Все точки соединить линиями в треугольники так, чтобы
при построении описанной окружности вокруг любого построенного
треугольника внутри окружности не было точек
 (правильно выполненная триангуляция).
2. Если предположить, что от точки к точке функция, от которой тебе надо
изолинии, изменяется линейно, то вычисляешь координаты точек,
через которые будут проходить изолинии с нужным тебе шагом.
Так, например, если в точке i значение функции =5, а в точке j
значение этой функции = 2, и ты хочешь строить изолинии с шагом 1,
то у тебя появятся еще две точки со значениями функции 3 и 4.
При этом эти точки будут лежать на стороне треугольника,
которая соединяет точки i и j, и делить эту сторону на три равные
части. Если закон изменения функции не линейный, то соответствующим
образом вычисляются и координаты этих двух точек, которые
в любом случае располагаются на стороне треугольника.
3. Полученные точки с одинаковыми значениями функции
сглаживаешь сплайнами. Конец.

    Это не лучший способ построения изолиний, зато наиболее
удобный для объяснения.

            Алексей Д.



--- ifmail v.2.15dev5
 * Origin: MTU-Intel ISP (2:5020/400)