Require: |
coordinate matrix and primitive direction . |
Ensure: |
. |
. Let correspond to points . |
Initialize an empty event queue . Next, insert the point into . (Rename to |
[Remark 7] by the insert-order [Remark 6] of lattice points). |
Initialize an empty stack and an empty linked list . |
while ( is not empty) do |
Determine the next event point in and delete it. |
HANDLEEVENTPOINT |
ORIGINSYMMETRY |
end while |
Initialize an empty variable [Remark 9]. |
if () then |
. |
else |
. |
end if |
Compute the value of [Remark 8], and assigned to . |