Кривая Минковского
Кривая Минковского — классический геометрический фрактал, предложенный Минковским. Инициатором является отрезок, а генератором является ломаная из восьми звеньев (два равных звена продолжают друг друга) — см. рис., где в качестве генератора использован "биполярный скачок"[1][2]
Свойства
- Кривая Минковского нигде не дифференцируема и не спрямляема.
- Кривая Минковского не имеет самопересечений.
- Кривая Минковского имеет Хаусдорфову размерность (поскольку она состоит из восьми равных частей, каждая из которых подобна всей кривой с коэффициентом подобия 1/4). В частности,
- Кривая Минковского имеет нулевую меру Лебега.
Построение
Пример алгоритма на PHP
<?php
$i = 2;
$image = imagecreatetruecolor(600, 400);
imagefilledrectangle($image, 0, 0, imagesx($image) - 1, imagesy($image) - 1,
imagecolorresolve($image, 255, 255, 255));
$color = imagecolorresolve($image, 0, 0, 0);
drawMinkowski($image, 0, imagesy($image) / 2, imagesx($image), imagesy($image) / 2, $i, $color);
/**
* Draws minkowski curve between two points.
* @return void
*/
function drawMinkowski($image, $xa, $ya, $xi, $yi, $i, $color) {
if($i == 0)
imageline($image, $xa, $ya, $xi, $yi, $color);
else {
// C---D
// | |
// A---B E H---I
// | |
// F---G
$xb = $xa + ($xi - $xa) * 1/4;
$yb = $ya + ($yi - $ya) * 1/4;
$xe = $xa + ($xi - $xa) * 2/4;
$ye = $ya + ($yi - $ya) * 2/4;
$xh = $xa + ($xi - $xa) * 3/4;
$yh = $ya + ($yi - $ya) * 3/4;
$cos90 = 0;
$sin90 = -1;
$xc = $xb + ($xe - $xb) * $cos90 - $sin90 * ($ye - $yb);
$yc = $yb + ($xe - $xb) * $sin90 + $cos90 * ($ye - $yb);
$xd = $xc + ($xe - $xb);
$yd = $yc + ($ye - $yb);
$sin90 = 1;
$xf = $xe + ($xh - $xe) * $cos90 - $sin90 * ($yh - $ye);
$yf = $ye + ($xh - $xe) * $sin90 + $cos90 * ($yh - $ye);
$xg = $xf + ($xh - $xe);
$yg = $yf + ($yh - $ye);
drawMinkowski($image, $xa, $ya, $xb, $yb, $i - 1, $color);
drawMinkowski($image, $xb, $yb, $xc, $yc, $i - 1, $color);
drawMinkowski($image, $xc, $yc, $xd, $yd, $i - 1, $color);
drawMinkowski($image, $xd, $yd, $xe, $ye, $i - 1, $color);
drawMinkowski($image, $xe, $ye, $xf, $yf, $i - 1, $color);
drawMinkowski($image, $xf, $yf, $xg, $yg, $i - 1, $color);
drawMinkowski($image, $xg, $yg, $xh, $yh, $i - 1, $color);
drawMinkowski($image, $xh, $yh, $xi, $yi, $i - 1, $color);
}
}
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
?>
Примечания
- ↑ Слюсар, В. Фрактальные антенны. Принципиально новый тип «ломаных» антенн. Часть 2. Электроника: наука, технология, бизнес. — 2007. — № 6. С. 85. (2007).
- ↑ Вишневский В. М., Ляхов А. И., Портной С. Л., Шахнович И. В. Широкополосные беспроводные сети передачи информации. — М.: Техносфера. — 2005.- C. 498—569
Литература
- Вишневский В. М., Ляхов А. И., Портной С. Л., Шахнович И. В. Широкополосные беспроводные сети передачи информации. — М.: Техносфера. — 2005.- C. 498—569.
Для улучшения этой статьи желательно:
|