int main(){
    char grises[] = "@#%xo;:,. ";

    char arteASCII[4501]; // 4500 + el \0

    Imagen origen;

    // Leer la imagen gio.pgm
    if (!origen.leerImagen("imagenes/gio.pgm")){
	   cerr << "error leyendo imagenes/gio.pgm\n";
	   return 1;
    }

    cout << "\nLa imagen en arte ASCII es:\n";
    if(origen.aArteASCII(grises, arteASCII, 4500))
        cout << arteASCII;
    else
        cout << "La conversion no ha sido posible" << endl;

    cout << "Ahora Forzamos que no quepa. Debe aparecer un mensaje de error\n";
    if(origen.aArteASCII(grises, arteASCII, 4199))
        cout << arteASCII;
    else
        cout << "La conversion no ha sido posible" << endl;

    return 0;
}
Beispiel #2
0
int main(int argc, char **argv){
    
    char grises[500]="";   
    char ruta[300] = "imagenes/";
    char ima[100] = "";
    Imagen origen;

    cout<<"Diga el nombre de la imagen con la extension"<< endl;
    cin >> ima;

    strcat(ruta,ima);

    if (!origen.leerImagen(ruta)){
       cerr << "error leyendo "<< ruta << "\n";
       return 1;
    }
    int tama = (origen.filas()*origen.columnas())+1;

    char arteASCII[tama];

    cout<<"Inserta los caracteres: "<< endl;
    cin >> grises;

    cout << "\nLa imagen en arte ASCII es:\n";
    if(origen.aArteASCII(grises, arteASCII, tama))
        cout << arteASCII;
    else
        cout << "La conversión no ha sido posible" << endl;  

}
Beispiel #3
0
int main(){
	char archivo_grises[255];
	char archivo_salida[255];
	char grises[100];
	
	const int TAM=100000;
	
    char arteASCII[TAM]; 
       
    Imagen origen;
    char nombre_imagen[255];
	
	cout << "Introduce el nombre de la imagen .pgm: " << endl;  
	cin >> nombre_imagen;
	
	cout << "Introduce el fichero de grises: " << endl;  
	cin >> archivo_grises;
	
	cout << "Introduce el fichero de salida: " << endl;  
	cin >> archivo_salida;
	
	if (!origen.leerImagen(nombre_imagen)){
	   cerr << "error leyendo " << nombre_imagen << " \n";
	   return 1;
    }
	
	string linea;
	int num_grises;
	ifstream fentrada;
	ofstream fsalida;
	fentrada.open(archivo_grises);
	if(fentrada){
		getline(fentrada,linea);				//Ignorar primera linea
		fentrada >> num_grises;
		for(int x=1; x<=num_grises; x++){
			fentrada>>grises;
		    if(origen.aArteASCII(grises, arteASCII, TAM)){
		    	char nombre_aux[255];
		    	//strcpy(nombre_aux,archivo_salida);
		    	sprintf(nombre_aux, "%s%d%s", archivo_salida,x,".txt");
		    	//strcat(nombre_aux,".txt");
				fsalida.open(nombre_aux);
				fsalida << arteASCII;
				fsalida.close();
			}else{
				cout << "La conversión " << x << " no ha sido posible" << endl;  
			}
		}
		fentrada.close();
	}else{
Beispiel #4
0
int main(){
	const int MAX_CSTR_SIZE = 100;
	const int MAX_ASCII_ART = 4500;
	Imagen imagen;
	char ascii_chars[MAX_CSTR_SIZE], 
		file_path[MAX_CSTR_SIZE],
		ascii_art[MAX_ASCII_ART];

	cout << "Introduzca la ruta del archivo:";
	cin.getline(file_path, MAX_CSTR_SIZE);

	cout << "Introduzca los caracteres de conversion:";
	cin.getline(ascii_chars, MAX_CSTR_SIZE);

	if(!imagen.leerImagen(file_path))
		cout << "Error leyendo imagen" << endl;
	
	if(imagen.aArteASCII(ascii_chars, ascii_art, MAX_ASCII_ART))
		cout << ascii_art;
	else
		cout << "Error transformando a ASCIIart" << endl;
}
int main(){
    char nombre_imagen[131072];
    char arteASCII[131072];
    char grises[10];
    int n_grises=-1;

    Imagen origen;

    cout << "Introduce el nombre de la imagen de entrada: ";
    cin >> nombre_imagen;

    cout << "\nVamos con los caracteres usados para el arte ASCII (0-255)." << endl;
    do{
        cout << "Introduce el numero de caracteres distintos usados (>=4 && <=10): ";
        cin >> n_grises;
    }while(n_grises<0 || n_grises >10);

    cout << "\nAhora introduce dichos caracteres (de uno en uno): ";
    for(int i=0; i<n_grises; i++){
        cout << "Caracter " << i << ": ";
        cin >> grises[i];
    }

    if(!origen.leerImagen(nombre_imagen)){
        cout << "Error leyendo imagen " << nombre_imagen << "...";
        return 1;
    }

    cout << "\nLa imagen en arte ASCII es:\n";
    if(origen.aArteASCII(grises, arteASCII, 131072))
        cout << arteASCII;
    else
        cout << "La conversion no ha sido posible" << endl;

    return 0;
}