|
 ������ ���������.
����������:
�������������� ���������:
���������� �������� ��������.
QuickHull.
�����: Unknown. �������: ������ �.
���� �������� �������� ������ � �������� ����������������, ������������ ������� ����� ( ������ ��� � ). ������ �����, ������� ��� ��� ����� ������ �� �������� � ����� ��������������� � ����������. ������ ������� ��� ���������������� ������� ����� ���������� ��������� �������� Quickhull. �� ��������� ���� ���������� ��������� ��������-������� ����.
�� ���� � ����� ��������� ����� ����� �, �������� ��������� �� ����� ( a , b ). ��������� ����� �� ���������� ��� ��������� �����: c����� ��� �� ����� ( a , c ) � ������ ��� �� ( c , b ). ��� ��� ����� ��������� ������� Quickhull.
 
���� ���������� ����������� ��������� ������� ���������. ��������� ����� c' ( c�. � ), �������� ��������� �� ����� (a',b'), ������������ ��� ����� ��������� �����: ������ ��� �� (a',c') � (c',b')... ���������� D, ������� �������������� ������..
.
 
�������� ���������� �������� Quickhull ��� ���� ���� ��������. �� ���. E � F ������� ��������� ������ ��� ������� ���������. ���� ��������� ������� ������ �� ���� �����, �������� ���������������, ��������� ��� ��� ����� ��� ������� �������� �������� ( ��� F, ������� ���������� ������ ����� ).
 
����� �������������� ������ ��������� ( ��� G ), � ����� �������� ���������������, ���������� �� ���� �����. � ��� ������������, ���� �� ��������� ���� �������-������ ����. ����� ����� ( ��� H )� ��� ������ �������� �������� ��� ����� �������.
 
����������� �������� �������������� �������-�����, ������-����� � ������-������ ����, ���� �� ������� ������ �������� �������� ( ��� I ).

���������.
������� ��������, ���������, ����� ������ � ����� ������� �����
��������� �� �����������������
��������� QuickHull ��� ������� ����������� �������� ��� ����������������
function QuickHull(a,b,s)
if S={a,b} then return(a,b)
else
c = index of right of
(a,c)
A = ����� ������ ��
(a,c)
B = ����� ������ ��
(a,b)
return QuickHull(a,c,A)
������������ � QuickHull(c,b,B)
| |