Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Lineare Interpolation (https://www.delphipraxis.net/50013-lineare-interpolation.html)

mschaefer 21. Jul 2005 07:30

Re: Lineare Interpolation
 
Moin, Grübel,

also vorsicht mit dem Sarkasmus,
da muß er nicht nachschauen: Das habe ich oben verwendet.
Allerdings fehlt ihm noch die Zeitschrittsteuerung.

// Martin

runger 21. Jul 2005 08:56

Re: Lineare Interpolation
 
Hallo,

ein bisschen Theorie und Verständnis würde ihm nichts schaden.

Rainer

runger 21. Jul 2005 09:01

Re: Lineare Interpolation
 
Hallo mschaefer,

1.) es heisst nicht Herz sondern Hertz.

2.) den Ausdruck Hertzzahl gibt es nicht, das ist die Frequenz.

Rainer

mschaefer 21. Jul 2005 09:24

Re: Lineare Interpolation
 
Uhps bei den vielen Hertzen ist mir doch ein T(ee) eintgangen. Rainer, da ist mein Motto
Mach es mit Herz, dann kommt Dein Leben auch ordentlich auf Frequenz und hohe Hertzzahl :wink:
Das Problem scheint sich inzwischen ja dann auch gelöst zu haben, ob die Theorie wirkt(?)...

Grüße // Martin

runger 21. Jul 2005 09:57

Re: Lineare Interpolation
 
Hallo mschaefer,

glaub ich nicht. Manche Leute fragen erst bevor sie denken!

Rainer
(weiss ich von meinen Azubis)

Six 21. Jul 2005 12:35

Re: Lineare Interpolation
 
Hallo runger!

Ganz schön unverschämt, was du hier ablässt:

Zitat:

Pisa lässt grüssen
Zitat:

ich glaube hier will einer aus Klasse 9 seine Hausaufgaben lösen
Zitat:

Da musst du aber schwer geschlafen haben.
Also Runger:

Zitat:

Sieh mal in deinen Schulbüchern nach unter lineare Funktionen f(x)=mx+b
Sieh dur dir erstmal meinen Codeschnipesel an... Na, fällt dir was auf?

Riiiichtiig:
Delphi-Quellcode:
AktuellerAbstand := Round(m * i + n);
Na, wonach sieht das denn bitte aus Runger? Vielleicht demnächst erstmal lesen und dann meckern :roll:

Mir ist übrigens klar was lineare Interpolation ist, sonst hätte wohl nicht diesen Titel gewählt :gruebel:

Ach ja, und sieh mal hier:
Delphi-Quellcode:
 Ich hätte es zwar selber nicht mehr gedacht, aber ich habe eine Lösung gefunden.
Und wenn du's genau wissen willst: Ich "sitze" an diesem Problem nun schon seit zwei Wochen, was mir ziemlich auf den Nerv ging, da ich mit dem Hauptprogramm nicht weiterkam (Ok, eine Woche dazwischen war Urlaub, ABSCHLUSSFAHRT, Runger).
Es waren nur minimale Codeänderungen nötig und nun läufts perfekt. Ich habe nämlich nochmal in den alten Sicherungen gekramt, wo ich eigentlich schon fast am Ziel war, nur leider habe ich es dann aus irgendwelchen Gründen verworfen. Ich wollte wissen, ob ich auf dem richtigen Weg war...

Zitat:

glaub ich nicht. Manche Leute fragen erst bevor sie denken!

Rainer
(weiss ich von meinen Azubis)
Ach und noch was Rainer, ich möchte nicht wissen was deine Azubis machen wenn sie nicht weiterkommen. Ich bin nicht dein Azubi und werde es auch (zum Glück) bestimmt nie sein.
Wenn du dir mal die Zeit nehmen würdest, dir meinen Eingangspost durchzulesen, wirst du sicher feststellen, dass ich mir sehr wohl Gedanken gemacht habe. Aber scheinbar geht es dir auch gar nicht darum. Lieber schön ein bischen meckern, auf die Jugend schimpfen. Das bringt Deutschland wirklich voran. Sorry Rainer, aber nur weil du (angeblich) 53 bist und hier mit deinen Azubies rumprollen kannst (dieser Ausdruck trifft es leider) (und deiner damit selbsversdtändlich verbundenen überdurchschnittlich großen "was ich sage ist Gesetz" Lebensweisheit), ist dir noch lange nicht das Recht gegeben, in so weiner Weise über Menschen zu urteilen.

Naja, etwas gutes hat diese unerfreuliche Richtigstellung dennoch, ich kann mich nochmal ausgiebig bei mschäfer und marabu bedanken und da ich dies lieber direkt tue:

Dankeschön, marabu und mschäfer. :thumb:

Achja und Rainer: Immer schön Off-Topic bleiben :roll:

lg

Six

mschaefer 21. Jul 2005 13:03

Re: Lineare Interpolation
 
Hallo Six,

da hat Rainer nun wirklich überzogen. Aber ich denke nicht, dass er ein fürchterlicher Ausbilder ist. Im Betrieb kann man sich der Fragerei allerdins oft schwerer entziehen und hier im Forum ist es dann doch freiwillig, wenn man mitknobelt. Befürchte nur, dass er diese Woche schon ziemlich unter seinen Kandidaten gelitten hat und wie er die letzten zwei Tage überstehen soll...

Du bist an der Geradengleichung am Anfang schon gewesen. Der Unterschied zur mathematischen Lösung ist dass beim Programmieren üblicherweise mehrere Verfahren und Methoden kombiniert werden und da liegt der Sache oft in der Kombinatorik. Und die Kandidaten, die dann im Grafikbereich programmieren schmeissen mit den Formeln und Optimierungen dann so um sich, dass selbst die Büromücken ihren Rucksack zum Auswandern packen...

Grüße // Martin

Six 21. Jul 2005 13:15

Re: Lineare Interpolation
 
Hi mschäfer,

Zitat:

hier im Forum ist es dann doch freiwillig, wenn man mitknobelt.
Eben :!:

Und damit ist das Thema Rainer für mich jetzt auch abgehakt :nerd:

Zitat:

Du bist an der Geradengleichung am Anfang schon gewesen. Der Unterschied zur mathematischen Lösung ist dass beim Programmieren üblicherweise mehrere Verfahren und Methoden kombiniert werden und da liegt der Sache oft in der Kombinatorik.
Genau, die Idee war von Anfang an die richtige (wie ich dank eurer Hilfe jetzt weiß) ich hatte sie bloß falsch "implementiert". Wie gesagt, ich poste innerhalb dieses Tages noch die Lösung, falls einmal jemand das gleiche Problem haben sollte...

Gruß

Six

Six 21. Jul 2005 20:12

Re: Lineare Interpolation
 
Liste der Anhänge anzeigen (Anzahl: 1)
So, hier ist dann wie versprochen die Lösung des Problems:

Delphi-Quellcode:
procedure TForm1.XYZTest(P1x, P1y, P2x, P2y: integer);
var
  Steigung: double;
  i: integer;
  Counter: integer;
  FrequenzProZeitpunkt: double;
begin
  Steigung := (P2y - P1y) / (P2x - P1x);
  Counter := 0;
  FrequenzProZeitpunkt := 1;
  for i := P1x to P2x do
  begin
    Inc(Counter);
    if Counter = FrequenzProZeitpunkt then
    begin
      FrequenzProZeitpunkt := Round(Steigung * i + P1y);
      JvStringGrid2.Cells[1, Tabellenzeiger] := IntToStr(i);
      if Aus then
        JvStringGrid2.Cells[0, Tabellenzeiger] := 'Aus'
      else
        JvStringGrid2.Cells[0, Tabellenzeiger] := 'An';
      JvStringGrid2.InsertRow(JvStringGrid2.RowCount + 1);
      Aus := not Aus;
      Inc(Tabellenzeiger);
      Counter := 0;
    end;
  end;
  // Tabelle Umsetzen
  JvStringGrid2.RemoveRow(JvStringGrid2.RowCount - 1);
  for i := 1 to JvStringGrid2.RowCount do
  begin
    PaintBox1.Canvas.Brush.Color := clblack;
    PaintBox1.Canvas.Brush.Style := bssolid;
    if JvStringGrid2.Cells[0, i] = 'An' then
      PaintBox1.Canvas.Rectangle(StrToInt(JvStringGrid2.Cells[1, i - 1]), 0,
        StrToInt(JvStringGrid2.Cells[1, i]), PaintBox1.Height);
  end;
end; //  XYZ (TForm1)
Wie das Ganze dann am Ende aussehen könnte ist im Anhang zu finden.

Grüße

Six

marabu 21. Jul 2005 20:31

Re: Lineare Interpolation
 
Hi Six,

Glückwunsch vom marabu

das produzierte Bild sieht besser aus als der produzierende code...


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:27 Uhr.
Seite 3 von 4     123 4      

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