Пример #1
0
int main(){

    //Chamando a Função
    desenhaBorda();

    //Imprimindo texto na tela
    printf("hi\n");

    //Chamando a Função
    desenhaBorda();

    return 0;
}
Пример #2
0
int main(int argc, char** argv)
{
  	/** ALOCAÇÃO DE VARIÁVEIS ****************************************/
		Imagem *img;		/*	Estrutura que guarda imagem genérica */
		int altura;			/* 	Dimensao da estrutura imagem 		 */
		int largura;		/* 	Dimensão da estrutura imagem 		 */
		Linha cab;			/* 	Lista com comando para criar linhas	 */
		Linha *atual;		/* 	Ponteiro auxiliar para fazer linhas	 */
		Imagem *R, *G, *B;	/* 	Canais de cores para imagem			 */
		int totalElementos;	/* 	Auxiliar para nº de regiões	achadas	 */
		int i;				/*	Contador 							 */
		CelRegiao cabecas[MAX_REGIOES];
			/* 	Vetor para cabeças das regiões de pixel	da imagem	 */
		float cores[12][3]=
			/*	Matriz para cores a serem colocadas nos canais 		 */
		{
 			{1.0, 0.0, 0.0}, /*  0 vermelho	*/
 		 	{0.0, 1.0, 0.0}, /*  1 verde   	*/
			{0.0, 0.0, 1.0}, /*  2 azul    	*/
			{1.0, 1.0, 0.0}, /*  3 amarelo 	*/
			{1.0, 0.0, 1.0}, /*  4 magenta 	*/
			{0.0, 0.0, 0.0}, /*  5 preto   	*/
			{0.2, 0.7, 0.4}, /*  6 verde 2 	*/
			{0.7, 0.4, 0.2}, /*  7 marrom  	*/
			{0.0, 1.0, 1.0}, /*  8 ciano   	*/
			{0.5, 0.5, 0.5}, /*  9 cinza   	*/
			{1.0, 1.0, 1.0}, /* 10 branco  	*/
			{0.0, 0.0, 0.0}  /* 11 preto   	*/
		};


  	/** LEITURA DE ARQUIVO DE ENTRADA ********************************/
		cab.prox = NULL;
		leMondrian(argv[1], &altura, &largura, &cab);
		printf("\n(LEITURA)\t\taltura = %d largura = %d\n", altura, largura);
	

	/** FUNDO E BORDAS ***********************************************/	
		img = criaImagem(altura, largura);
		pintaImagem(img, COR_FUNDO);
		printf("(FUNDO) \t\tTudo OK\n");	
		desenhaBorda(img, COR_BORDA);
		printf("(BORDAS) \t\tTudo OK\n");
	
	
	/** DESENHO DE LINHAS ********************************************/
		for(atual = cab.prox; atual != NULL; atual = atual->prox)
		{
			printf("%c\n", atual->tipo);
			desenhaLinha(img, atual, COR_BORDA);
		}
		printf("(LINHAS) \t\tTudo OK\n");
	
		
	/** SEGMENTAÇÃO DE REGIÕES ***************************************/
		totalElementos = segmentaRegioes(img, cabecas);
		printf("total de elementos = %d\n", totalElementos);
		printf("(REGIOES) \t\tTudo OK\n");	
		printf("cabela: cabeca[0].tamanho = %d", cabecas[0].tamanho);
	
	
	/** CRIAÇÃO DOS CANAIS DE CORES **********************************/
		R = criaImagem(altura, largura); 
		copiaImagem(R, img);				/* Vermelho */

		G = criaImagem(altura, largura); 
		copiaImagem(G, img);				/* Verde */
	
		B = criaImagem(altura, largura); 
		copiaImagem(B, img);				/* Azul */
		printf("(MALLOC FILTROS) \tTudo OK\n");
		printf("(copia) \t\tTudo OK\n");
	
	
	/** PINTURA ******************************************************/
		for(i = 0; i < totalElementos; i++)
		{
			printf("%d", i);
			pintaRegiao(&cabecas[i].cabpix, R, G, B, cores[i%12]);
			printf("verm = %f,  verde = %f, azul = %f\n", cores[i][0], cores[i][1], cores[i][2]);
		};
		
	
	/** SALVAR IMAGENS ***********************************************/
		salvaImagem("img", img);
		salvaImagem("R", R);
		salvaImagem("G", G);
		salvaImagem("B", B);
		salvaImagemRGB(argv[2], R, G, B);
		printf("(SALVAR) \t\tTudo OK\n");


	/** LIBERAÇÃO DE MEMÓRIA *****************************************/
		free(img);
		free(R);
		free(G);
		free(B);
		printf("(FREE) \t\t\tTudo OK\n");
	
	return 0;
}