Veröffentlicht 5. Januar 200916 j Hallo! Ich würde gerne Daten, die über eine Funktion ausgelesen werden in eine Text Datei speichern und dann diese über das Programm öffnen. Die Funktion hat folgenden Code: void ProcessImage(CyUserBuffer &userBuffer, CSpyder3GigEInterface *camera) { // Process image unsigned char *tempBuffer = userBuffer.GetBuffer(); long max = -1, maxX, maxY; long min = 0x7fffffff, minX, minY; // unsigned long width=0; unsigned long height=0; unsigned long pixelWidth =0; camera->GetSizeX(width); camera->GetSizeY(height); camera->GetPixelByteSize(pixelWidth); for (int r = 0; r<(int)height; r++) { for (int c = 0; c< (int)width ; c++) { int value; if ( pixelWidth == 1) value = (int)(tempBuffer[ r*width+c]); else { unsigned short indx =(r*width+c) * pixelWidth ; value = tempBuffer[ indx+1 ]&0x0f; value = value<<8; value |= tempBuffer[indx]; } if ( value > max ) { max =value; maxX = c; maxY = r; } if ( value < min ) { min = value; minX = c; minY = r; } if ( r%100 == 0) printf("%d,", value); } if ( r%100 == 0) printf("\n"); } printf( "Maximum Value(%d, %d) = %d\n",maxX,maxY, max); printf( "Minimum Value(%d, %d) = %d\n",minX,minY, min); } Ich möchte als die Werte, die über printf erzeugt werden, in diese Datei schreiben. Wie geht das? Kann mir jemand einen Beispiel Code dazu schicken, wenn das möglich ist? Wäre super, wenn ich ne Antwort bekomme. Ist echt wichtig.
5. Januar 200916 j Hallo, leider kann ich Dir keine einfach Lösung anbieten da mein C/C++ im Moment etwas eingerostet ist. Ich hab aber mal das gemacht was ich machen würde wenn ich das machen wollte was Du vorhast Nämlich die Tante Google gefragt und unter anderem dahin gefunden C-Programmierung - eine Einführung zu Dateien
7. Januar 200916 j Das ist der Code: void ProcessImage(CyUserBuffer &userBuffer, CSpyder3GigEInterface *camera) { // Process image unsigned char *tempBuffer = userBuffer.GetBuffer(); long max = -1, maxX, maxY; long min = 0x7fffffff, minX, minY; // unsigned long width=0; unsigned long height=0; unsigned long pixelWidth =0; camera->GetSizeX(width); camera->GetSizeY(height); camera->GetPixelByteSize(pixelWidth); for (int r = 0; r<(int)height; r++) { for (int c = 0; c< (int)width ; c++) { int value; if ( pixelWidth == 1) value = (int)(tempBuffer[ r*width+c]); else { unsigned short indx =(r*width+c) * pixelWidth ; value = tempBuffer[ indx+1 ]&0x0f; value = value<<8; value |= tempBuffer[indx]; } if ( value > max ) { max =value; maxX = c; maxY = r; } if ( value < min ) { min = value; minX = c; minY = r; } if ( r%100 == 0) printf("%d,", value); // Was soll das? } // next c if ( r%100 == 0) printf("\n"); } // next r printf( "Maximum Value(%d, %d) = %d\n",maxX,maxY, max); printf( "Minimum Value(%d, %d) = %d\n",minX,minY, min); } Was soll die markierte Stelle tun?
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.