1

Мне нужно найти voronoi следующих соседей для данной точки, то есть все точки, имеющие ячейки voronoi, которые касаются ячейки первоначальной частицы. Геометрия - это двумерное и периодические граничные условия. Каков наилучший способ для этого (с использованием или без использования внешних библиотек)?Поиск voronoi следующих соседей в периодических граничных условиях

+2

Библиотека [CGAL] (www.cgal.org) обеспечивает [2D периодических триангуляции] (http://doc.cgal.org/latest/Periodic_2_triangulation_2/) пакет. – sloriot

ответ

1

Вы можете попробовать это:

foreach ($this->indices as $key => $arr) 
    { 
    foreach ($this->indices as $ikey => $iarr) 
    { 
     if ($key != $ikey) 
     { 
      if (($arr[0]==$iarr[1] && $arr[1]==$iarr[0]) || 
       ($arr[0]==$iarr[2] && $arr[1]==$iarr[1]) || 
       ($arr[0]==$iarr[3] && $arr[1]==$iarr[2]) || 

       ($arr[1]==$iarr[1] && $arr[2]==$iarr[0]) || 
       ($arr[1]==$iarr[2] && $arr[2]==$iarr[1]) || 
       ($arr[1]==$iarr[3] && $arr[2]==$iarr[2]) || 

       ($arr[2]==$iarr[1] && $arr[3]==$iarr[0]) || 
       ($arr[2]==$iarr[2] && $arr[3]==$iarr[1]) || 
       ($arr[2]==$iarr[3] && $arr[3]==$iarr[2]) 

      ) 
      { 
       $this->voronoi[$key][$ikey]=array($this->cc[$key], $this->cc[$ikey]); 
      } 
     } 
    } 
    } 
+0

На каком языке это? – user3058865

+0

Код находит все ячейки voronoi из триангуляции delaunay. – Bytemain

+0

Я понимаю, но написано, на каком языке программирования? – user3058865

 Смежные вопросы

  • Нет связанных вопросов^_^