SA_getLogPolarScale


Usage:

PolarScale = SA_getLogPolarScale(InnerRadius, DeltaRadius, Segments, Sectors)

InnerRadius: Uint; The radius of innermost circle.
DeltaRadius: Uint; The the delta increase of the radius for each new circle with respect to the previous.
Segments: Uint; The number of segments the circle should be divided into.
Sectors: Uint; The number of Sectors wich each segment should be devided into.

PolarScale: SA_VectorArray; A list of position arrays.


Description

SA_getLogPolarScale works similar to SA_getPolarScale. It generates a mask that divies all pixel with a distance smaller than Radius from the center into (Sectors*Segments) bins. Each bin is an element in the SA_VectorArray structure (PolarScale).

The difference of SA_getLogPolarScale to SA_getPolarScale lies at the distances of the circles (Segments). As the increase of the radius is constant with the normal polar scale, here it increases by DeltaRadius for each new layer of sectors.


r is the InnerRadius and dr denotes DeltaRadius. The formula for the radius of the n-th circle is n*InnerRadius + n*(n-1)*(DeltaRadius/2).

Sectors defines the number into which the angle of the point to the center closes to [1,0] is divided.
Segments defines the number of circles. This means the number of sectors into which each segment is divided.

The order in which the sectors will be stored into the structure is the same as with SA_getPolarScale. The image below shows an example of a polar scale with the numbers beeing the position of the vectors in the SA_VectorArray.




Copyright © 2007 Thomas Oskam, ETH Zürich. All rights reserved.