Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Image Koordinaten herrausfinden (https://www.delphipraxis.net/130539-image-koordinaten-herrausfinden.html)

HISTHIS 10. Mär 2009 09:26


Image Koordinaten herrausfinden
 
Hallo Leute


Ich will die Koordinaten eines Bildes herraus finden.

Es geht darum das sich ein Image über das Form bewegt und wenn es am ende angekommen ist soll es sich umdrehen.

nur weis ich nicht wie ich dem Image sagen soll wenn es an den Koordinaten angekommen ist das es sich umdrehen soll.


HISTHIS

Klaus01 10. Mär 2009 09:30

Re: Image Koordinaten herrausfinden
 
Guten Morgen,

Du kennst die linke obere Ecke und die Breite des Bildes
addiere diese beiden Daten und schaue ob sie größer als linke Ecke Form +
Formbreite sind.

Grüße
Klaus

himitsu 10. Mär 2009 09:33

Re: Image Koordinaten herrausfinden
 
Die Koordinaten hast du doch schon?
.Top und .Left

.Height und .Width gibt es auch noch


Image.Top + Image.Width = unteres Ende des Image (nur etwas Mathe halt)

HISTHIS 10. Mär 2009 09:56

Re: Image Koordinaten herrausfinden
 
Danke für eure Antworten,
aber wie soll ich das in eine Abfrage schreiben?

HISTHIS

Klaus01 10. Mär 2009 10:13

Re: Image Koordinaten herrausfinden
 
Du bewegst doch das Image, in dieser Routine kannst
Du auch die Abfrage machen ob eine Grenze erreicht wurde.

Grüße
Klaus

DeddyH 10. Mär 2009 10:14

Re: Image Koordinaten herrausfinden
 
Pseudocode:
Code:
Wenn ((linke Bildseite + Bildbreite) > (Formularbreite - Rand)) oder (linke Bildseite < Rand) dann
  horizontal umdrehen;
Wenn ((obere Bildseite + Bildbhöhe) > (Formularhöhe - Rand)) oder (obere Bildseite < Rand) dann
  vertikal umdrehen;

himitsu 10. Mär 2009 10:32

Re: Image Koordinaten herrausfinden
 
Delphi-Quellcode:
{Form}.Width      = Formularbreite
{Form}.ClientWidth = Formularbreite - Rand

... .ClientHeight

DeddyH 10. Mär 2009 10:58

Re: Image Koordinaten herrausfinden
 
Mit "Rand" hatte ich ein selbstdefiniertes Offset gemeint, meist will man ja nicht ganz an den Rand stößen.

HISTHIS 10. Mär 2009 11:30

Re: Image Koordinaten herrausfinden
 
Danke noch mal für eure Antworten habe das jetz so gemacht
//enemys = Das ist das Gegner Bild das steht
//enemyw = Das ist das Gegner Bild das sich bewegt

Im moment läuft er nur bis zum Rand und fängt wieder von vorne an.
Muss erst noch die Bilder bearbeiten die nach links laufen.


Delphi-Quellcode:
  if enemyw.left > 600  then
    begin
      enemys.left := enemys.left -30;
      enemyw.Left := enemyw.Left -30;

     if enemyw.left <600 then
       begin
          while enemyw.left >0 do
            begin
              enemys.left := enemys.left -30;
              enemyw.Left := enemyw.Left -30;
      end;
    end;
  end;

HISTHIS


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz