Avatar billede kingguro.dk Nybegynder
14. november 2003 - 14:56 Der er 12 kommentarer og
1 løsning

Oprettet et Graphics objekt??

Jeg skal oprette et Graphics objekt med x bredde og y bredde, i en klasse som jeg selv har lavet??

Jeg erklære min Graphics objekt som en member variabel i toppen af klassen':

private Graphics fraktal;

Hvordan får jeg den så til at være x bred og y høj?? Og hvordan kan jeg tegne på den??
Compileren kommer med fejl når jeg prøver at skrive:

fraktal.create(0,0,width,height);
Avatar billede arne_v Ekspert
14. november 2003 - 15:27 #1
Normalt opretter man ikke et Graphics objekt men bliver kaldt med et.
Avatar billede kingguro.dk Nybegynder
14. november 2003 - 15:29 #2
Men kan man ikke på en eller anden måde have en form for objekt, som man kan tegne på og så retunere til den anden klasse med en metode??
Avatar billede soreno Praktikant
14. november 2003 - 21:12 #3
Jeg tror du skal prøve lykken med et BufferedImage, som f.eks. i dette eksempel:

import java.io.*;
import java.util.*;
import javax.imageio.*;
import java.awt.image.*;

public class Main
{
    public static void main(String args[])
    {
        int size = 512;
        BufferedImage image = new BufferedImage(size, size, BufferedImage.TYPE_INT_RGB);
       
        for(int i=0;i<size;i++)
        {
            for(int j=0;j<size;j++)
            {
                image.setRGB(i, j, i*j%256);
            }
        }

        try
        {
            ImageIO.write(image, "png", new File("test.png"));
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }       
    }
}


Ellers tror jeg du skal uddybe/genfortælle dit formål.
Avatar billede kingguro.dk Nybegynder
14. november 2003 - 22:31 #4
Har lige været på arbejde!! Kigger og leger med det i morgen! Påp forhånd tak!
Avatar billede kingguro.dk Nybegynder
15. november 2003 - 19:27 #5
DEt lyder som noget jeg godt kan bruge?? Det eneste jeg ikke lige kan gennemsku er hvordan man selv kan bestemme en specifik farve (f.eks rgb(34,56,123)) ud fra ét heltal?
Avatar billede soreno Praktikant
16. november 2003 - 21:27 #6
Farven (34, 56, 123) laves sådan.

34 dec = 22 hex
56 dec = 38 hex
123 dec = 7b hex

22387b hex = 2242683 dec

Så du skal lave (eller finde) en metode som kan gå baglæs i forhold til ovenstående.
Avatar billede arne_v Ekspert
16. november 2003 - 21:34 #7
Er det ikke der samme som:

  (new Color(34,56,123)).getRGB()

?
Avatar billede soreno Praktikant
16. november 2003 - 21:38 #8
Jow, men han/hun skal jo modsatte vej.

Altså én int til R, G, B.

Jeg så lige lidt på konstruktøren, der ser ud til man kan gøre sådan:

        Color col = new Color(34, 56, 123);
        System.out.println(col.getRGB());
       
        col = new Color(2242683);
        System.out.println(col.getRGB());

Output er ens.
Avatar billede arne_v Ekspert
16. november 2003 - 21:40 #9
Modsat er vel:

Color col = new Color(34, 56, 123);

og:

col.getRed()
col.getGreen()
col.getBlue()
Avatar billede arne_v Ekspert
16. november 2003 - 21:41 #10
Color col = new Color(2242683);

naturligvis
Avatar billede soreno Praktikant
16. november 2003 - 21:43 #11
Min kode bygger på en antagelse om at farven er "kodet" på samme måde som i html og lign.

Jeg formoder spørger ønsker at benytte den farve "kode" i Java.
Avatar billede soreno Praktikant
16. november 2003 - 21:44 #12
Ja, nemlig.

Hvordan pokker er mit indlæg blevet til et "fortsat svar" ?
Det er ikke første gang det er sket !
Avatar billede arne_v Ekspert
16. november 2003 - 21:46 #13
Du svarede 21:38:03 så ...
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