flächeninhalt einer vektordatei
LeadToDeath 14.08.2006 - 15:12 913 6
LTD
frecher fratz
|
hallo leute ... ich hab folgendes problem: eine vektordatei - aber keinen flächeninhalt davon. wie rechne ich jetzt aus, wieviel flächeninhalt die datei einschließt (es geht um einen red-bull-bullen) ... mit integral und co werde ich zum schwammerl (abgesehen davon das ich ein mathegenie bin und keine funktionen hab)
ja thx erstmal
|
gue
Addicted
|
Ich nehme an, du meinst eine Vektorgrafik? Wenn ja, dann probier es mit einem Monte-Carlo-Algorithmus. Wenn's nicht so genau sein muss, dann rastere das Ding einfach und tu Pixelzählen
|
LTD
frecher fratz
|
haja das mit den pixeln is ne super idee ... und jetzt kommt die super frage: wie zähl ich alle nicht transparenten pixel in nem dokument???
|
Spikx
My Little Pwny
|
Hm.. Summe aller Pixel - Summe aller Histogrammbalkenwerte = Summe der transparenten Pixel, oder? Nächste Frage ist wahrscheinlich, mit welchem Programm man die Werte der Histogrammbalken ablesen kann.. weil i find im Photoshop nix diesbezüglich
|
gue
Addicted
|
Das könnte man z.B. mit diesem schönen kleinen Java-Programm machen: import javax.imageio.*;
import java.awt.image.*;
import java.io.*;
class PixelCounter {
public static int countNonOpaquePixels(BufferedImage b) {
int cnt = 0;
for (int y = 0; y < b.getHeight(); y++) {
for (int x = 0; x < b.getWidth(); x++) {
if ((b.getRGB(x, y) & 0xff) != 0xff) {
cnt++;
}
}
}
return cnt;
}
public static void main(String[] args) throws Exception {
BufferedImage b = ImageIO.read(new File(args[0]));
System.out.println("Pixels: " + countNonOpaquePixels(b));
}
}
|
LTD
frecher fratz
|
ja vollkuhl und wie führ ich das teil aus? und woher weiß er welches bild gemeint is mit buffered image???
|
murcielago
Dr. Doom
|
schreibst den code von oben in die Datei PixelCounter.java, lädst dir von sun.java.com das j2se sdk runter, gehst in die commandline, machst javac PixelCounter.java
dann hast eine class-datei, die du so ausführst: java PixelCounter <filename>
wobei <filename> die datei ist.
|