AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Flugbahn eines Geschosses darstellen
Thema durchsuchen
Ansicht
Themen-Optionen

Flugbahn eines Geschosses darstellen

Ein Thema von devnull · begonnen am 17. Jul 2004 · letzter Beitrag vom 18. Jul 2004
Antwort Antwort
Benutzerbild von devnull
devnull

Registriert seit: 5. Okt 2003
362 Beiträge
 
Delphi 7 Personal
 
#1

Flugbahn eines Geschosses darstellen

  Alt 17. Jul 2004, 23:16
Hi,
weiss jemand, wie ich die Flugbahn eines Geschosses (auf Form) darstellen kann?
Bekannt sind:
* Ausgangskoordinaten
* Zielkoordinaten
* Steigung
Problem: Steigung aus reellem Zahlenbereich...

mfg
devnull
-- Never change a running system --
  Mit Zitat antworten Zitat
xineohp

Registriert seit: 29. Jan 2004
Ort: Heusenstamm
420 Beiträge
 
Delphi 2005 Professional
 
#2

Re: Flugbahn eines Geschosses abfeuern

  Alt 17. Jul 2004, 23:21
moin,

geht es dir um die Berechnung oder die Darstellung der Flugbahn?
Peter Enenkel
blubb
  Mit Zitat antworten Zitat
Benutzerbild von devnull
devnull

Registriert seit: 5. Okt 2003
362 Beiträge
 
Delphi 7 Personal
 
#3

Re: Flugbahn eines Geschosses darstellen

  Alt 17. Jul 2004, 23:24
Die Berechnung ist nicht das Problem, wohl aber die Darstellung...

Ich weis nicht, wie ich ein Bild (oder sowas ähnliches) verschieben soll, da die Steigung ja Kommazahl ist
-- Never change a running system --
  Mit Zitat antworten Zitat
StefanDP

Registriert seit: 11. Apr 2004
294 Beiträge
 
#4

Re: Flugbahn eines Geschosses darstellen

  Alt 17. Jul 2004, 23:29
Zitat von devnull:
Die Berechnung ist nicht das Problem, wohl aber die Darstellung...

Ich weis nicht, wie ich ein Bild (oder sowas ähnliches) verschieben soll, da die Steigung ja Kommazahl ist
wie wärs einfach mit runden?
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Flugbahn eines Geschosses darstellen

  Alt 17. Jul 2004, 23:29
wenn du jeden punkt zeichen willst dann machste das halt mit canvas

wenn du ein objekt verschieben willst dann änderste halt jedes frame die position und stellst es dar..

ich weis halt net was du benutzen willst als darstellung und so weiter.. spezifiziere bitte dein problem

// edit

kommazahlen zu ganzzahlen convertieren geht mit round()
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Benutzerbild von devnull
devnull

Registriert seit: 5. Okt 2003
362 Beiträge
 
Delphi 7 Personal
 
#6

Re: Flugbahn eines Geschosses darstellen

  Alt 17. Jul 2004, 23:37
Wenn ich runde und dabei aber mit Pixeln arbeite, bekomme ich bei größeren Pixelstrecken eine sehr große Abweichung...
Eigentlich ist es doch egal, ob ich ein Image oder ein Pixelkreuz verschiebe?!
Miniaturansicht angehängter Grafiken
skizze_148.jpg  
-- Never change a running system --
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#7

Re: Flugbahn eines Geschosses darstellen

  Alt 17. Jul 2004, 23:54
du musst für deine berechnungen fließkommazahlen verwenden und NUR für das anzeigen via objekte positionieren runden !
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Der_Ventilator

Registriert seit: 11. Apr 2004
Ort: Kanada
136 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Flugbahn eines Geschosses darstellen

  Alt 18. Jul 2004, 03:28
Nötigenfalls multiplizierst du deine Endwerte mit einem Vergrößerungsfaktor und rundest dann.
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#9

Re: Flugbahn eines Geschosses darstellen

  Alt 18. Jul 2004, 08:46
So könnte es dann Aussehen: Parabel
Delphi-Quellcode:
image1.canvas.MoveTo(0,250); // links unten

 for x:=0 to 500 do// von links bis rechts
 begin
 y:=(x-250)/15; // Nullstelle nach rechts verschoben und Parabel gedrückt
 y:=power(y,2);
 s:=round(y);
 image1.canvas.LineTo(x,s);
 end;
Und immer dran denken 0/0 ist nicht links unten ( vergess ich bei Schaubildern immer und wunder mich dann warum mein Sinus irgendwie gesiegelt aussieht )
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Benutzerbild von devnull
devnull

Registriert seit: 5. Okt 2003
362 Beiträge
 
Delphi 7 Personal
 
#10

Re: Flugbahn eines Geschosses darstellen

  Alt 18. Jul 2004, 11:33
Ich hab da mal nen üblen Fehler gemacht: jetzt funkts...


Aufnahme der Ausgangs-, Zielposition in der OnMouseDown...
Delphi-Quellcode:
  Schuss[i].XPos := Ship1.XPos;
  Schuss[i].YPos := Ship1.YPos;
  Schuss[i].XStart := Ship1.XPos;
  Schuss[i].YStart := Ship1.YPos;
  Schuss[i].XZiel := x;
  Schuss[i].YZiel := y;
  // Berechnet Steigung (Steigung : real)
  Schuss[i].Steigung := (Schuss[i].YZiel-Ship1.YPos) / (Schuss[i].XZiel-Ship1.XPos);
Timer: Flugbahn darstellen (lineare Fkt.: y=mx+c)
Delphi-Quellcode:
  Schuss[i].XPos := Schuss[i].XPos + 1; //Nur wenn Ziel rechts des Raumschiffs ist
  Schuss[i].YPos := round(Schuss[i].Steigung*(Schuss[i].XPos-Schuss[i].XStart) + Schuss[i].YStart);

mfg
devnull
-- Never change a running system --
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:17 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