Name
lqr_vmap_new — the LqrVMap object constructor
Synopsis
#include <lqr.h>
LqrVMap* lqr_vmap_new( | gint* buffer, |
| | gint width, |
| | gint height, |
| | gint depth, |
| | gint orientation); |
Description
The function lqr_vmap_new is the constructor for LqrVMap objects. It can
be used to convert saved data in a format which can be loaded in an LqrCarver object.
The parameter buffer must point to an an array of
width * height
ints holding the visibility information.
The parameter depth represents the maximum possible amount of rescaling
with the given map.
The parameter orientation must be 0 if the map is to
be used for horizontal rescaling, 1 if it is to be used for vertical
rescaling.
Visibility maps format
The buffer must be an array of integers of size
width * height. For an
horizontally oriented visibility map, the format is as such: each row must contain all values
between 1 and depth (included) exactly once, with low values indicating
the pixels which will be operated on first during rescaling. All other pixels must be 0, which
means that they won't be affected by rescaling. Such a map allows for horizontal rescaling in
the range from width - depth to
width + depth. The same
applies to vertically oriented visibility maps, with columns in place of rows and
height in place of width.
Return value
The function returns the newly created LqrVMap if successful, or NULL in case of
insufficient memory.