iLand
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Stamp Class Reference

Stamp is the basic class for the LIP field of a individual tree. More...

#include <stamp.h>

Public Types

enum  StampType {
  est4x4 =4 , est8x8 =8 , est12x12 =12 , est16x16 =16 ,
  est24x24 =24 , est32x32 =32 , est48x48 =48 , est64x64 =64
}
 defines different grid sizes for stamps (4x4 floats, ... 48x48 floats). More...
 

Public Member Functions

 Stamp ()
 
 ~Stamp ()
 
 Stamp (const int size)
 
void setOffset (const int offset)
 
int offset () const
 delta between edge of the stamp and the logical center point (of the tree). e.g. a 5x5 stamp in an 8x8-grid has an offset from 2. More...
 
int count () const
 count of pixels (rectangle) More...
 
int size () const
 logical size of the stamp More...
 
int dataSize () const
 internal size of the stamp; e.g. More...
 
float * data ()
 get a full access pointer to internal data More...
 
const float * end () const
 get pointer to the element after the last element (iterator style) More...
 
float * data (const int x, const int y) const
 get pointer to data item with indices x and y More...
 
void setData (const int x, const int y, const float value)
 
int index (const int x, const int y) const
 get index (e.g. for data()[index]) for indices x and y More...
 
float operator() (const int x, const int y) const
 retrieve the value of the stamp at given indices x and y More...
 
float offsetValue (const int x, const int y, const int offset) const
 
const Stampreader () const
 
void setReader (Stamp *reader)
 
float crownRadius () const
 
float crownArea () const
 
void setCrownRadius (const float r)
 
float distanceToCenter (const int ix, const int iy) const
 
void loadFromFile (const QString &fileName)
 
void load (QDataStream &in)
 load from stream (predefined binary structure) More...
 
void save (QDataStream &out)
 save to stream (predefined binary structure) More...
 
QString dump () const
 

Static Public Member Functions

static void setDistanceGrid (const Grid< float > *grid)
 

Detailed Description

Stamp is the basic class for the LIP field of a individual tree.

In iLand jargon, a Stamp is a LIP (light influence pattern). These patterns are pre-calculated using the "LightRoom" (http://iland-model.org/Lightroom) and stand for a field of influence (w.r.t. light) of a individual tree of a given size and species. see http://iland-model.org/competition+for+light

Member Enumeration Documentation

◆ StampType

defines different grid sizes for stamps (4x4 floats, ... 48x48 floats).

the numeric value indicates also the size of the grid.

Enumerator
est4x4 
est8x8 
est12x12 
est16x16 
est24x24 
est32x32 
est48x48 
est64x64 

Constructor & Destructor Documentation

◆ Stamp() [1/2]

Stamp::Stamp ( )

◆ ~Stamp()

Stamp::~Stamp ( )

◆ Stamp() [2/2]

Stamp::Stamp ( const int  size)
inline

Member Function Documentation

◆ count()

int Stamp::count ( ) const
inline

count of pixels (rectangle)

◆ crownArea()

float Stamp::crownArea ( ) const
inline

◆ crownRadius()

float Stamp::crownRadius ( ) const
inline

◆ data() [1/2]

float * Stamp::data ( )
inline

get a full access pointer to internal data

◆ data() [2/2]

float * Stamp::data ( const int  x,
const int  y 
) const
inline

get pointer to data item with indices x and y

◆ dataSize()

int Stamp::dataSize ( ) const
inline

internal size of the stamp; e.g.

4 -> 4x4 stamp with 16 pixels.

◆ distanceToCenter()

float Stamp::distanceToCenter ( const int  ix,
const int  iy 
) const
inline

◆ dump()

QString Stamp::dump ( ) const

◆ end()

const float * Stamp::end ( ) const
inline

get pointer to the element after the last element (iterator style)

◆ index()

int Stamp::index ( const int  x,
const int  y 
) const
inline

get index (e.g. for data()[index]) for indices x and y

◆ load()

void Stamp::load ( QDataStream &  in)

load from stream (predefined binary structure)

◆ loadFromFile()

void Stamp::loadFromFile ( const QString &  fileName)

◆ offset()

int Stamp::offset ( ) const
inline

delta between edge of the stamp and the logical center point (of the tree). e.g. a 5x5 stamp in an 8x8-grid has an offset from 2.

◆ offsetValue()

float Stamp::offsetValue ( const int  x,
const int  y,
const int  offset 
) const
inline

◆ operator()()

float Stamp::operator() ( const int  x,
const int  y 
) const
inline

retrieve the value of the stamp at given indices x and y

◆ reader()

const Stamp * Stamp::reader ( ) const
inline

◆ save()

void Stamp::save ( QDataStream &  out)

save to stream (predefined binary structure)

◆ setCrownRadius()

void Stamp::setCrownRadius ( const float  r)
inline

◆ setData()

void Stamp::setData ( const int  x,
const int  y,
const float  value 
)
inline

◆ setDistanceGrid()

static void Stamp::setDistanceGrid ( const Grid< float > *  grid)
inlinestatic

◆ setOffset()

void Stamp::setOffset ( const int  offset)
inline

◆ setReader()

void Stamp::setReader ( Stamp reader)
inline

◆ size()

int Stamp::size ( ) const
inline

logical size of the stamp


The documentation for this class was generated from the following files: