Trabalho Prático 2
Processamento de Linguagens
Referência ao ficheiro imageraster.h

Contem as instruções necessárias para manipular imagem PNM. Mais...

Ir para o código fonte deste ficheiro.

Macros

#define MAXLINE   1024
 

Funções

void imageFill (int *img_in, int x_size, int y_size, int r, int g, int b)
 Preenche uma imagem completa com uma cor (utilizado para fazer backgrouds) Mais...
 
void writeImage (FILE *f, int *img_out, char *img_out_fname, int x_size, int y_size)
 Grava num ficheiro uma imagem. Mais...
 
void readImageHeader (FILE *f, int *x_size, int *y_size)
 Le o cabeçalho de uma imagem ficheiro e devolve o x_size e y_size. Mais...
 
void readImage (FILE *f, int *img_in)
 Le a informação da imagem Esta funcao deve ser executada depois da readImageHeader. Mais...
 
int getArrayIndex (int x, int y, int x_size, int y_size)
 Devolve o index no array para uma determinada coordenada. Mais...
 
void getImagePosition (int position, int x_size, int y_size, int *x, int *y)
 Devolve a coordenada x e y para um determinado posicao no array. Mais...
 
void drawPoint (int *img_in, int x_size, int y_size, int x, int y, int r, int g, int b)
 Desenha um pixel na imagem. Mais...
 
void drawCircle (int *img_in, int x_size, int y_size, int raio, int x, int y, int r, int g, int b)
 Desenha um circulo com um raio desde o ponto x e y. Mais...
 
int max (int a, int b)
 Devolve o máximo de dois inteiros. Mais...
 
int min (int a, int b)
 Devolve o minimo de dois inteiros. Mais...
 
void drawLine (int *img_in, int x_size, int y_size, int x1, int y1, int x2, int y2, int c_r, int c_g, int c_b)
 Desenha uma linha entre dois pontos x1,y1 x2,y2. Mais...
 

Descrição detalhada

Contem as instruções necessárias para manipular imagem PNM.

Autor
  • José Moura <a13742|at|alunos.ipca.pt>
  • Óscar Silva <a14383|at|alunos.ipca.pt>
  • Daniel Filipe <a17442|at|alunos.ipca.pt>
Data
01 Jan 2020

Definido no ficheiro imageraster.h.

Documentação das macros

◆ MAXLINE

#define MAXLINE   1024

Definido na linha 15 do ficheiro imageraster.h.

Documentação das funções

◆ drawCircle()

void drawCircle ( int *  img_in,
int  x_size,
int  y_size,
int  raio,
int  x,
int  y,
int  r,
int  g,
int  b 
)

Desenha um circulo com um raio desde o ponto x e y.

Veja também
drawPoint
Parâmetros
img_inarray dos pixels da imagem
x_sizetamanho da imagem em x
y_sizetamanho da imagem em y
raioraio do circulo
xcoordenada x do centro
ycoordenada y do centro
rcor vermelha
gcor verde
bcor azul

Definido na linha 78 do ficheiro imageraster.c.

Referências drawPoint().

◆ drawLine()

void drawLine ( int *  img_in,
int  x_size,
int  y_size,
int  x1,
int  y1,
int  x2,
int  y2,
int  c_r,
int  c_g,
int  c_b 
)

Desenha uma linha entre dois pontos x1,y1 x2,y2.

Veja também
drawPoint
Parâmetros
img_inarray dos pixels da imagem
x_sizetamanho da imagem em x
y_sizetamanho da imagem em y
x1coordenada x1
y1coordenada y1
x2coordenada x2
y2coordenada y2
c_rcor vermelha
c_gcor verde
c_bcor azul

Definido na linha 103 do ficheiro imageraster.c.

Referências drawPoint(), max() e min().

◆ drawPoint()

void drawPoint ( int *  img_in,
int  x_size,
int  y_size,
int  x,
int  y,
int  r,
int  g,
int  b 
)

Desenha um pixel na imagem.

Parâmetros
img_inarray da imagem
x_sizetamanho da imagem em x
y_sizetamanho da imagem em y
xponto em x
yponto em y
rcor vermelha
gcor verde
bcor azul

Definido na linha 53 do ficheiro imageraster.c.

Referências getArrayIndex().

Referenciado por drawCircle() e drawLine().

◆ getArrayIndex()

int getArrayIndex ( int  x,
int  y,
int  x_size,
int  y_size 
)

Devolve o index no array para uma determinada coordenada.

Veja também
getImagePosition
Parâmetros
xcoordenada a encontrar
ycoordenada a encontrar
x_sizetamanho em x da imagem
y_sizetamanho em y da imagem
Retorna
inteiro do indice no array correspondente

Definido na linha 154 do ficheiro imageraster.c.

Referenciado por drawPoint().

◆ getImagePosition()

void getImagePosition ( int  position,
int  x_size,
int  y_size,
int *  x,
int *  y 
)

Devolve a coordenada x e y para um determinado posicao no array.

Veja também
getArrayIndex
Parâmetros
positioninteiro da posicao no array
x_sizetamanho em x da imagem
y_sizetamanho em y da imagem
x*POINTER - coordenada x devolvida por ref
y*POINTER - coordenada y devolvida por ref

Definido na linha 168 do ficheiro imageraster.c.

◆ imageFill()

void imageFill ( int *  img_in,
int  x_size,
int  y_size,
int  r,
int  g,
int  b 
)

Preenche uma imagem completa com uma cor (utilizado para fazer backgrouds)

Parâmetros
img_inimg_in array dos pixels da imagem
x_sizetamanho da imagem em x
y_sizetamanho da imagem em y
rcor vermelha
gcor verde
bcor azul

Definido na linha 184 do ficheiro imageraster.c.

◆ max()

int max ( int  a,
int  b 
)

Devolve o máximo de dois inteiros.

Parâmetros
ainteiro 1
binteiro 2
Retorna
máximo ente a e b

Definido na linha 37 do ficheiro imageraster.c.

Referenciado por drawLine().

◆ min()

int min ( int  a,
int  b 
)

Devolve o minimo de dois inteiros.

Parâmetros
ainteiro 1
binteiro 2
Retorna
minimo ente a e b

Definido na linha 26 do ficheiro imageraster.c.

Referenciado por drawLine().

◆ readImage()

void readImage ( FILE *  f,
int *  img_in 
)

Le a informação da imagem Esta funcao deve ser executada depois da readImageHeader.

Veja também
readImageHeader
Parâmetros
ffile pointer
img_inimg_in array dos pixels da imagem

Definido na linha 203 do ficheiro imageraster.c.

◆ readImageHeader()

void readImageHeader ( FILE *  f,
int *  x_size,
int *  y_size 
)

Le o cabeçalho de uma imagem ficheiro e devolve o x_size e y_size.

Parâmetros
ffile pointer
x_size*POINTER - tamanho da imagem em x
y_size*POINTER - tamanho da imagem em y

Definido na linha 229 do ficheiro imageraster.c.

◆ writeImage()

void writeImage ( FILE *  f,
int *  img_out,
char *  img_out_fname,
int  x_size,
int  y_size 
)

Grava num ficheiro uma imagem.

Parâmetros
ffile pointer
img_outarray dos pixels da imagem
img_out_fnamenome que damos à imagem (usado para comentario)
x_sizetamanho da imagem em x
y_sizetamanho da imagem em y

Definido na linha 284 do ficheiro imageraster.c.