Avatar billede artiz Nybegynder
09. maj 2002 - 10:18 Der er 10 kommentarer og
1 løsning

Hent Color fra Canvas

hvordan henter man Color på en specifik pixel fra canvas i en Applet??? ( bruger kun AWT)
Avatar billede logical Nybegynder
09. maj 2002 - 20:52 #1
Det kan man ikke !

Du kan fra et Image finde pixelværdier, men du kan ikke læse fra canvas.
Avatar billede el_gnu Nybegynder
09. maj 2002 - 21:01 #2
Som logical siger så kan du ikke direkte finde farverne direkte fra Canvas, MEN der er et trick hvis du selv står for at tegne dit Canvas.

Du laver simpelthen et Image med samme dimensioner som dit Canvas, som du tegner på og så kopierer over på dit Canvas. Når du så skal finde farven på en bestemt pixel på Canvas'et, så finder du det bare på billedet (der jo grafisk er magen til)
Avatar billede artiz Nybegynder
09. maj 2002 - 22:27 #3
okey hvis i skal have 150 point så må i hellere svare på hvordan man gør det!!! :) hvordan får man pixelværdien i et Image ( da jeg bruger doublebuffering har jeg jo et Image)
Avatar billede el_gnu Nybegynder
09. maj 2002 - 22:54 #4
Du skal have en instans af BufferedImage og bruge getData() til at få et Raster med billedets data.
Raster har så forskellige metoder til at hente data for enkelte pixels ud.
Avatar billede artiz Nybegynder
09. maj 2002 - 23:11 #5
øhhh jeg er helt tosset med kode eksempler :)
Avatar billede bearhugx Nybegynder
10. maj 2002 - 14:21 #6
Hmm ...lytter ....
Avatar billede el_gnu Nybegynder
12. maj 2002 - 14:19 #7
Jeg har flikket et lille eksempel sammen, som kan ses på http://espen.dk/eksperten/Koord2Pixel.html, hvor kildekoden også befinder sig.
Avatar billede artiz Nybegynder
12. maj 2002 - 14:53 #8
smid et svar så får du lige 150 !!!
det er bare perfekt !!!
Avatar billede el_gnu Nybegynder
12. maj 2002 - 14:54 #9
np :-)
Avatar billede bearhugx Nybegynder
12. maj 2002 - 16:09 #10
Jeg er overrasket over, hvor simplet den kode egenlig er, el_gnu - hatten af for det...

Jeg ledte oppe og nede, langt og bredt, efter en metode, som kunne udtage en farveværdi fra et punkt...
Og at det så kan gøres på 3 linier- Det er utroligt :-)

Jeg havde dog mere forestillet mig at løsningen ville have været noget ala
Color col = raster.getPixel( x, y );

I stedet for, hvad der ser ud som en kopiering af en array...

Men den ser også overskuelig ud (omend lidt kunstig - men det er jo smag og behag)

/Søren
Avatar billede el_gnu Nybegynder
12. maj 2002 - 16:15 #11
jeg er også selv lidt overrasket, for det er ikke noget jeg har kigget på før, og jeg troede egentlig det ville være mere besværligt.

Men med hjælp fra API docs'ne tog det kun et øjeblik
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester