AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TDate enthält Uhrzeit?

Ein Thema von bwolf · begonnen am 29. Aug 2012 · letzter Beitrag vom 30. Aug 2012
Antwort Antwort
Seite 3 von 3     123   
Furtbichler
(Gast)

n/a Beiträge
 
#21

AW: TDate enthält Uhrzeit?

  Alt 29. Aug 2012, 22:58
Das klingt jetzt nicht besonders eindeutig.
Ich habe es in der Schule so gelernt, aber im Artikel steht, das die Einheit °C als Differenz auch akzeptabel ist: Also gibst Du mir doch Recht und liegst gleichzeitig auch nicht daneben. Da freuen wir uns jetzt.

Die Angabe von Orten wird nicht in Längeneinheiten angegeben, ihre Entfernung schon.
Bei der Zeit, die ja auch eine Dimension ist, unterscheiden wir auch zwischen dem Zeitpunkt (=fester Ort) und dem Abstand (=Entfernung), beide Angaben werden mit unterschiedlichen Einheiten angegeben, was logisch ist, denn die Orte sind mehrdimensional, deren Entfernung jedoch nicht.

Den Rest deiner Ausführungen (Point, Size, Entfernung) verstehe ich nicht.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#22

AW: TDate enthält Uhrzeit?

  Alt 30. Aug 2012, 10:27
Die Angabe von Orten wird nicht in Längeneinheiten angegeben, ihre Entfernung schon.
Bei der Zeit, die ja auch eine Dimension ist, unterscheiden wir auch zwischen dem Zeitpunkt (=fester Ort) und dem Abstand (=Entfernung), beide Angaben werden mit unterschiedlichen Einheiten angegeben, was logisch ist, denn die Orte sind mehrdimensional, deren Entfernung jedoch nicht.
Wenn du die Entfernung zwischen zwei Orten als Längenangabe verstehst, dann wendest du auf die Differenz der Ortskoordinaten eine Metrik an, die diese Differenz im jeweiligen Koordinatensysten (kartesisch, sphärisch, geodätisch) auf eine Längeneinheit abbildet. Bei eindimensionalen Systemen ist diese Metrik meistens synonym mit dem Absolutwert der Differenz. Wenn du aber bei der Differenz zweier Zeitpunkte auch negative Ergebnisse zulässt, betrachtest du eben keine Metrik, sondern die tatsächliche Differenz. Zwei verschiedene Orte B und C können zwar zu einem Ort A den gleichen Abstand haben, aber trotzdem sind die jeweiligen Differenzen unterschiedlich.

Bezogen auf das z.B. kartesische System ist die Differenz zweier Ortsvektoren (x, y, z) wiederum ein Vektor (x, y, z). Erst wenn eine Homogenisierung des Koordinatensystems durch Einführung einer vierten Koordinate (w) erfolgt, kann anhand des Inhalts eines solchen vierdimensionalen Vektors (Ort: w=1; Richtung: w=0) eine Unterscheidung erfolgen (Das FireMonkey-Koordinatensystem wie so ziemlich alle 3D-Systeme arbeiten z.B. damit; es ist aber nur ein Trick zur Vereinfachung der Rechenoperationen für den Programmierer). Ohne diese Erweiterung ist ein 3D-Vektor ein 3D-Vektor. Ein Orts-Vektor wird nur dadurch daraus, daß man ihn auf einen definierten Nullpunkt bezieht. Da es keinen (mir) bekannten absoluten Nullpunkt gibt, ist jeder Orts-Vektor auch nur ein Differenz-Vektor zu einem willkürlich gesetzten Bezugspunkt. Es gibt also keinen Unterschied zwischen Orts-Vektoren und Differenzen zwischen ihnen.

Ebenso verhält es sich mit Zeitpunkten, die auch nur Differenzen zu einem willkürlichen Zeit-Nullpunkt sind. Vielleicht erinnert sich noch einer an die Änderung des Referenzdatums zwischen Delphi 1 und späteren Delphi Versionen. In Delphi 1 war ein TDate von 0 gleichbedeutend mit dem 31.12.1899, während in neueren Delphi-Versionen irgendein Tag um die Geburt eines galiläischen Zimmermannssohns herum als Referenz herhalten muss.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.380 Beiträge
 
Delphi 10.3 Rio
 
#23

AW: TDate enthält Uhrzeit?

  Alt 30. Aug 2012, 10:39
In Delphi 1 war ein TDate von 0 gleichbedeutend mit dem 31.12.1899, während in neueren Delphi-Versionen irgendein Tag um die Geburt eines galiläischen Zimmermannssohns herum als Referenz herhalten muss.

kann es sein, dass Du dich da irrst?

Zitat:
TDate repräsentiert einen speziellen Typ eines TDateTime-Werts, der keinen Dezimalanteil hat. Ein TDate-Wert repräsentiert die Anzahl der Tage, die seit dem 30.12.1899 vergangen sind.
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#24

AW: TDate enthält Uhrzeit?

  Alt 30. Aug 2012, 11:13
  ShowMessage(DateTimeToStr(0));
  ShowMessage(DateTimeToStr(0 + 1/24 + 1/24/60 + 1/24/60/60));
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#25

AW: TDate enthält Uhrzeit?

  Alt 30. Aug 2012, 11:21
Zitat:
TDate repräsentiert einen speziellen Typ eines TDateTime-Werts, der keinen Dezimalanteil hat. Ein TDate-Wert repräsentiert die Anzahl der Tage, die seit dem 30.12.1899 vergangen sind.
Laut Definition.

Wenn jemand doch eine Uhrzeit da mit reinpackt, dann hat er Pech.

Ein Briefkasten ist ja auch da, um Briefe zu kommen, was aber nicht bedeutet, daß dort niemand stattdessen einen Scheißhaufen reintun könnte.


@Bjoerk:

Aber verständlicheren und fehlerunanfälligeren Code mag ich auch irgendwie lieber.
Delphi-Quellcode:
ShowMessage(DateTimeToStr(0 + EncodeTime(1, 1, 1, 0));
ShowMessage(DateTimeToStr(0 + 1/HoursPerDay + 1/MinsPerDay + 1/SecsPerDay));
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.380 Beiträge
 
Delphi 10.3 Rio
 
#26

AW: TDate enthält Uhrzeit?

  Alt 30. Aug 2012, 11:33
Laut Definition.

Wenn jemand doch eine Uhrzeit da mit reinpackt, dann hat er Pech.
darum gehts doch gar nicht, sondern darum welches Referenzdatum TDate/TDateTime verwendet. Und da ist in neueren Delphis eben der 31.12.1899 relevant und nicht wie Uwe schreibt das Datum von Christi Geburt. Und da Uwe sich praktisch nie irrt, fand ich das doch sehr verwunderlich

Grüße
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#27

AW: TDate enthält Uhrzeit?

  Alt 30. Aug 2012, 11:39
In Delphi 1 war ein TDate von 0 gleichbedeutend mit dem 31.12.1899, während in neueren Delphi-Versionen irgendein Tag um die Geburt eines galiläischen Zimmermannssohns herum als Referenz herhalten muss.

kann es sein, dass Du dich da irrst?

Zitat:
TDate repräsentiert einen speziellen Typ eines TDateTime-Werts, der keinen Dezimalanteil hat. Ein TDate-Wert repräsentiert die Anzahl der Tage, die seit dem 30.12.1899 vergangen sind.
Stimmt! Es war genau andersherum. In Delphi 1 war der 01.01.0001 der Referenzwert, das wurde dann später auf den 31.12.1899 verändert.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#28

AW: TDate enthält Uhrzeit?

  Alt 30. Aug 2012, 11:39
Zitat:
31.12.1899
Ist das nicht schon immer so? (soweit ich mich an alle meines Delphis erinnern kann)

[edit]
Hab zwar ein D1 (war bei meinen 2 D4 dabei), aber hab's nie wirklich benutzt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#29

AW: TDate enthält Uhrzeit?

  Alt 30. Aug 2012, 12:29
@Bjoerk: Aber verständlicheren und fehlerunanfälligeren Code mag ich auch irgendwie lieber.
Japp, ich wollte nur mal deutlich machen, wie Delphi vorgeht (Threadtitel). Ich persönlich verwende das auch so nie.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 16:08 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