Avatar billede tjay8 Nybegynder
09. februar 2005 - 19:32 Der er 7 kommentarer og
1 løsning

et billede der rammer et andet?

Hej

Jeg sidder og bakser med en programmerings opgave i skolen og jeg har brug for en if kode til hvis mit ene billede, som bevæger sig ved hjælp af en timer, rammer et andet billede.

det sku måske lige siges at det er et simpelt kaste spil hvor man kaster en ting som så skal ramme en anden ting, hvorpå der så skal ske noget. jeg kan bare ikke finde kode så programmet registrerer at de to billeder faktisk rammer hinanden, og jeg kan derfor ikke bruge if funktionen.
Avatar billede tjay8 Nybegynder
09. februar 2005 - 20:00 #1
come on nogen må da kende et svar...
Avatar billede burningice Nybegynder
09. februar 2005 - 23:26 #2
hvis du har dine to billeder repræsenteret som rektangler kan du lave en simpel hittest på dem ved hjælp af IntersectsWith-metoden

Rectangle one = //noget
Rectangle two = //noget andet

bool hit = one.IntersectWith(two);
Avatar billede tjay8 Nybegynder
11. februar 2005 - 08:29 #3
hvordan får jeg defineret billeder som rectangels så? sku måske osse lige siges at det er Visual Basic 2003 .net bare lige så det er på plads.
Avatar billede burningice Nybegynder
11. februar 2005 - 10:59 #4
hvordan får du dine billeder tegnet på skærmen? Der må du da næsten blive nødt til at have nogle rektangler som du tegne dem i?
Avatar billede tjay8 Nybegynder
11. februar 2005 - 17:12 #5
well... måden jeg ligger billeder ind er bare ved at indsætte en picturebox fra tool baren og så angiver jeg bare destinationen i properties for picturebox'en
Avatar billede burningice Nybegynder
11. februar 2005 - 17:31 #6
og så vil du sinde ud af hvornår de to pictureboxes rammer hinanden? hehehe... :)

this should do

private void button1_Click(object sender, System.EventArgs e)
        {
            this.pictureBox1.Location = new Point(this.pictureBox1.Location.X + 2, this.pictureBox1.Location.Y);
           
            Rectangle rectPic1 = new Rectangle(this.pictureBox1.Location, this.pictureBox1.Size);
            Rectangle rectPic2 = new Rectangle(this.pictureBox2.Location, this.pictureBox2.Size);

            if (rectPic1.IntersectsWith(rectPic2))
            {
                MessageBox.Show("We have a hit");
            }
        }

hvis du ikke kan lide c# findes der c# -> vb.net convertere out there
Avatar billede tjay8 Nybegynder
14. februar 2005 - 17:38 #7
smid et svar ind så ska jeg med glæde uddele point... og mange tak for hjælpen det virker fint nu..
Avatar billede burningice Nybegynder
14. februar 2005 - 23:30 #8
:) svar
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