Clases
bicotiImageIterator
bicotiImageIterator2D
bicotiImageIterator2DArray
bicotiImageIterator2DSparse
bicotiImageIterator3D
bicotiImageIterator3DArray
bicotiImageIterator3DLinear
Templates Clases
PixelType
class bicotiImageIterator2D < class PixelType >
virtual
~bicotiImageIterator2D
( )
PixelType
&operator
* ( )
void
operator
++ ( int )
void
operator
-- ( int )
void
operator
+= ( unsigned )
void
operator
-= ( unsigned )
void
First
( )
void
Last
( )
void
Locate
( int , int )
boolIsDone
( )
void
X0Increment
( unsigned =1 )
void
X0Decrement
(
unsigned =1 )
void
X1Increment
( unsigned =1 )
void
X1Decrement
( unsigned =1 )
int
GetCurrentX0
(
)
int
GetCurrentX1
(
)
PixelType
* GetCurrentPixel ( )
virtual
void
SetCurrentPixel
(
PixelType ) = 0
bicotiCoordinate<
INTEGER > GetCurrentCoordinateInteger ( )
bicotiCoordinate<
REAL > GetCurrentCoordinateReal ( )
virtual
void SetExtremeCoordinates ( int , int , int
, int ) = 0
void
UseBorderStrategyX0
(
bicotiImageBorderStrategy2DX0< PixelType > )
void
UseBorderStrategyX1(
bicotiImageBorderStrategy2DX1< PixelType > )
Destrutor. A pesar de ser virtual necesita tener definido un destructor virtual.
Esta función
se declara e implementa en la clase base.
Ver operator
*( ) de bicotiImageIterator
Esta función
se declara en la clase base y se implementa en esta clase.
Ver operator
++ de bicotiImageIterator
Esta función
se declara en la clase base y se implementa en esta clase.
Ver operator
-- de bicotiImageIterator
Esta función
se declara en la clase base y se implementa en esta clase.
Ver operator
+= de bicotiImageIterator
Esta función
se declara en la clase base y se implementa en esta clase.
Ver operator
-= de bicotiImageIterator
Esta función
se declara en la clase base y se implementa en esta clase.
Ver First()
de bicotiImageIterator
Esta función
se declara en la clase base y se implementa en esta clase.
Ver Last()
de bicotiImageIterator
Esta
función permite ubicar al iterador en el punto de coordenadas (
x_0 , x_1 )
Por ejemplo
si quiero pararme en la fila 2, columna 3 hago :
iterator.Locate( 3 , 2 );
Esta función
se declara e implementa en la clase base.
Ver IsDone(
) de bicotiImageIterator
Incrementa la coordenada x_0 tantos lugares como lo indique step ( por defecto es 1 ).
Figura 3.1.15
En el ejemplo de la figura 3.1.15 hacemos :
pix = * iterator ; // pix = 2 ( x_0 = 3 , x_1 = 1 )
iterator.X0Increment() ; // aumento x_0 en 1
pix = * iterator ; // pix = 1 ( x_0 = 4 , x_1 = 1 )
iterator.X0Increment(3) ; // aumento x_0 en 3
pix = * iterator ; // pix = 4 ( x_0 = 2 , x_1 = 2 )
Decrementa la coordenada x_0 tantos lugares como lo indique step ( por defecto es 1 ).
Figura 1.3.16
En el ejemplo de la figura 3.1.16 hacemos :
pix = * iterator ; // pix = 2 ( x_0 = 3 , x_1 = 1 )
iterator.X0Decrement() ; // bajo x_0 en 1
pix = * iterator ; // pix = 2 ( x_0 = 2 , x_1 = 1 )
iterator.X0Decrement(2) ; // bajo x_0 en 2
pix = * iterator ; // pix = 1 ( x_0 = 0 , x_1 = 1 )
Incrementa la coordenada x_1 tantos lugares como lo indique step ( por defecto es 1 ).
Figura 3.1.17
En el ejemplo de la figura 3.1.17 hacemos :
pix = * iterator ; // pix = 3 ( x_0 = 3 , x_1 = 0 )
iterator.X1Increment() ; // aumento x_1 en 1
pix = * iterator ; // pix = 2 ( x_0 = 3 , x_1 = 1 )
iterator.X1Increment(2) ; // aumento x_1 en 2
pix = * iterator ; // pix = 1 ( x_0 = 3 , x_1 = 3 )
Decrementa la coordenada x_1 tantos lugares como lo indique step ( por defecto es 1 ).
Figura 3.1.18
En el ejemplo de la figura 3.1.18 hacemos :
pix = * iterator ; // pix = 2 ( x_0 = 4 , x_1 = 3 )
iterator.X1Decrement() ; // aumento x_1 en 1
pix = * iterator ; // pix = 0 ( x_0 = 4 , x_1 = 2 )
iterator.X1Decrement(2) ; // aumento x_1 en 2
pix = * iterator ; // pix = 4 ( x_0 = 4 , x_1 = 0 )
Retorna
la componente x_0 de la coordenada de la posición actual, es decir
la columna actual.
En el ejemplo
de la figura 3.1.10.
Figura 3.1.10
Si hago :
columna = iterator.GetCurrentX0(); // obtengo columna = 4
Retorna
la componente x_1 de la coordenada de la posición actual, es decir
la fila actual.
En el ejemplo
de la figura 3.1.10.
Si
hago :
fila = iterator.GetCurrentX1(); // obtengo fila = 1
Esta función
se declara e implementa en la clase base.
Ver GetCurrentPixel(
) de bicotiImageIterator
Esta función
se declara e implementa en la clase base.
Ver SetCurrentPixel(
) de bicotiImageIterator
Esta función
se declara e implementa en la clase base.
Ver GetCurrentCoordinateInteger(
) de bicotiImageIterator
Esta función
se declara e implementa en la clase base.
Ver GetCurrentCoordinateReal(
) de bicotiImageIterator
Esta
función permite redefinir los valores extremos del iterador.
En un caso
más general, el iterador recorrerá una sub-imagen cuyos extremos
son los puntos de
coordenadas
( first_x_0 , first_x_1 ) y ( last_x_0 , last_x_1 ).
Figura 3.1.10
En la imagen
de la figura 3.1.10. Cuando se crea el iterador, se toma por defecto
first_x_0 = 0
first_x_1 = 0
last_x_0 = 5 ( dim_x_0 - 1 )
last_x_1 = 3 ( dim_x_1 - 1 )
Pero por ejemplo si redefinimos estos valores haciendo :
iterator.SetExtremeCoordinates( 1 , 1 , 4 , 2 );
first_x_0 = 1
first_x_1 = 1
last_x_0 = 4
last_x_1 = 2
La imagen efectiva que se recorrerá será lo que se marca en verde en la figura 3.1.19
Figura 3.1.19
Esta
función asigna la estrategia de borde horizontal.
Ver Estrategias
de Borde para más detalles.
Esta
función asigna la estrategia de borde vertical.
Ver Estrategias
de Borde para más detalles.