Ich versuche, eine Matrix von (doubles) in ein Zeichen ohne Vorzeichen zu konvertieren, damit ich dann in eine .pmg-Datei schreiben kann ... Aber es funktioniert nicht.Konvertieren von Double in unsigned char?
void writePNG(vector<double>& matrix)
{
vector<unsigned char> image;
ofstream myfile;
myfile.open("newFile.txt", ios::out); // writing to .txt file for now for testing.
if(!myfile.is_open())
{
cout << "Cannot open file";
}
for(int i=0; (i < 512*512); i++)
{
image[i] = (unsigned char) matrix[i];
}
myfile.close();
}
Die Daten werden nicht konvertiert. Irgendwelche Ideen?? Danke :)
Was genau ist der Fehler? Gibt es einen Compilerfehler? Ist die Datei leer (was definitiv der Fall ist, weil Sie nichts schreiben)? Gibt es einen Laufzeitfehler? – alfa
Ändern Sie die Deklaration in 'vector image (512 * 512);'. –
Was ist der Fehler, den Sie dann sehen? Was sind die Wertebereiche im Matrix-Vektor? Z.B. Wenn -1 ... 1, müssen Sie zuerst die Werte skalieren. –