Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Neuen Beitrag zur Code-Library hinzufügen (https://www.delphipraxis.net/33-neuen-beitrag-zur-code-library-hinzufuegen/)
-   -   Delphi Astro-Daten (https://www.delphipraxis.net/145690-astro-daten.html)

rollstuhlfahrer 12. Jan 2010 15:36

Re: Astro-Daten
 
könntest du dementsprechend noch die Werte von 1 bis 8 als Konstanten definieren? SO wird der Code in der Case-Anweisung schneller ersichtlich.

Bernhard

markus5766h 12. Jan 2010 15:43

Re: Astro-Daten
 
@ Bernhard

o.k., werd' in der nächsten Version noch eine Funktion mit definierten Konstanten einfügen.
Die jetzige Funktion will ich so beibehalten, um diese eigenen Bedürfnissen anzupassen (z.B.
möchte jemand vielleicht 28 Bilder verarbeiten - statt 8, dann ist ein Integerwert sicher besser zu gebrauchen als 8 definierte Konstanten).

rollstuhlfahrer 12. Jan 2010 15:46

Re: Astro-Daten
 
:?: :?: Es ging mir um die Lesbarkeit des Codes und ich und manch anderer auch findet halt, dass MOON_PHASE_NEW_MOON besser zu lesen ist als "1"

Bernhard

markus5766h 12. Jan 2010 15:58

Re: Astro-Daten
 
o.k., wie ist's damit :
Delphi-Quellcode:
TMoonPhase8 = (mp_NewMoon, mp_WaxingMoonFirstEighth, mp_WaxingMoonFirstQuarter, mp_WaxingMoonThirdEighth, mp_FullMoon, mp_WaningMoonFifthEighth, mp_WaningMoonLastQuarter, mpWaningMoonSevensEighth);

Funktion
Delphi-Quellcode:
function GetMoonPhaseConst(Age : extended):TMoonPhase8;
eingefügt

markus5766h 25. Jan 2010 17:28

Re: Astro-Daten
 
Liste der Anhänge anzeigen (Anzahl: 3)
hier mal 'nen kleines Demo zur relativen Anzeige
von Mond- und Sonnen-Position

... soll nur als Beispiel dienen

falls Fragen auftauchen : nur zu.

markus5766h 3. Aug 2010 19:12

AW: Astro-Daten
 
Liste der Anhänge anzeigen (Anzahl: 1)
anbei ausgegliederte Funktionen zur Berechnung von Ostern
als Funktion, Rückgabewert : TDateTime

1) Berechnung nach GAUSS für den gregorianischen Jalender
2) Berechnung nach GAUSS für den julianischen Kalender
3) Berechnung nach Lichtenberg (modifizierte Gauss-Formel)

mimi 19. Feb 2011 21:57

AW: Astro-Daten
 
Deine Unit Funktioniert auch noch einigen Änderungen Problemlos in Lazausr(Unter Linux).
Ich habe folgende Änderungen gemacht:
01: Die Unit Windows Entfernt
02: Die Funktionen "EDrive. DateTimeReal und DateTimeTZ" habe ich einfach auskommentiert. Sie scheinen in der Unit nicht verwendet zu werden.

Ich hoffe es macht nichts das die letzte Antwort älter als ein Halbes Jahr ist. Ich wollte auch nur drauf hinweisen, dass die Unit auch unter Lazarus läuft und ich sie wohl für mein Projekt verwenden werde.

Ein Verbesserungs Vorschlag:
Es wäre schön, wenn GetSternzeichen nicht nur ein Bereich prüfen könnte sondern auf Wunsch z.b. über ein Optimalen Parameter ob das Anfang Datum oder End Datum von einem Zeitraum gewünscht ist oder halt ein Zeitraum.
Ich hoffe du weißt was ich damit meine.

Jedenfalls gefällt mir die Unit recht gut, wobei ich auch Ähnlichkeiten zu einer anderen Unit bemerkt habe... Aber bestimmt ist das reiner Zufall: http://www.delphi-fundgrube.de/files/feiertg.txt oder?
(...Ich habe mir jetzt nicht den ganzen Thread durchgelesen...)

markus5766h 19. Feb 2011 22:26

AW: Astro-Daten
 
Zitat:

Zitat von mimi (Beitrag 1082973)
Ich habe folgende Änderungen gemacht:
01: Die Unit Windows Entfernt
02: Die Funktionen "EDrive. DateTimeReal und DateTimeTZ" habe ich einfach auskommentiert. Sie scheinen in der Unit nicht verwendet zu werden

diese Funktionen sind später hinzugekommen :
DateTimeReal liefert die (theoretische) Zeit (und Datum) auf Grund der Position,
DateTimeTZ liefert Datum/Zeit unter Angabe der Zeitzone
. . . ach ja, und EDrive war (bzw. ist) eine Hilfs-Funktion zur quantitativen
Darstellung der Mondposition in Abhängigkeit von Datum/Zeit (auf einer Kreisbahn,
nicht auf einer Ellipse) - ist also für diese Unit nicht nötig.

Zitat:

Zitat von mimi (Beitrag 1082973)
1)Ein Verbesserungs Vorschlag:
Es wäre schön, wenn GetSternzeichen nicht nur ein Bereich prüfen könnte sondern auf Wunsch z.b. über ein Optimalen Parameter ob das Anfang Datum oder End Datum von einem Zeitraum gewünscht ist oder halt ein Zeitraum.
Ich hoffe du weißt was ich damit meine.

2)Jedenfalls gefällt mir die Unit recht gut, wobei ich auch Ähnlichkeiten zu einer anderen Unit bemerkt habe... Aber bestimmt ist das reiner Zufall: http://www.delphi-fundgrube.de/files/feiertg.txt oder?
(...Ich habe mir jetzt nicht den ganzen Thread durchgelesen...)

ad 1) werd' ich mir mal auf die Liste schreiben (kann allerdings etwas dauern)
ad 2) kannte ich noch nicht, allerdings sind ähnliche Funktionen in einigen Büchern
beschrieben, so dass diese nicht sehr voneinander abweichen können

markus5766h 21. Dez 2013 11:49

AW: Astro-Daten
 
Hallo.

--> 21.12.2013 : Version 4 angefügt (Astro4.rar) :
hinzugekommen sind Berechnungen zum "Blue Moon":
function BlueMoon . . . - hier wird auf vier Vollmonde in einer Jahreszeit geprüft, der
dritte Vollmond ist dann der Blue Moon.
Im Aufruf der Funktion kann dann noch festgelegt werden, ob der
vergangene Winter oder der kommende Winter berücksichtigt wird,
geprüft wird über vier Jahreszeiten.
function Double Moon . . . - hier wird auf zwei Vollmonde in einem Monat geprüft, je nach
Definition (es gibt mehrere) ist dann der zweite Vollmond
(30. od. 31. eines Monats) der Blue Moon.

-- in Kürze : Auswahl der Berechnungen zu Sonnenstand, Auf-Untergang nach
realer (-0,83333°), bürgerlicher(-6°), nautischer(-12°), astronomischer(-18°) Dämmerung
--> erledigt (siehe Post #1)


ein frohes Weihnachtsfest und einen guten Rutsch in's neue Jahr :xmas::party:

markus5766h 21. Dez 2013 18:48

AW: Astro-Daten
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo,

in der Astro4.rar --> uAstro.pas war noch ein kleiner Fehler versteckt :
Delphi-Quellcode:
function NextEclipse(var Date : TDateTime; sun : Boolean): TEclipse;
var
  temp_date: TDateTime;
begin
  Result := ecNone;
  temp_date := Date - 28 * 2;
  while temp_date < Date do
   begin
    temp_date := temp_date + 28;
    Result := Eclipse(temp_date, sun);
   end;
  date := temp_date; // <----- diese Zeile muss entfernt werden !!!!!!!!!!!
end;
im Post #1 ist die Datei aktualisiert !

Ein Demo basierend auf dem Archiv "Astro4.rar" ist angefügt.

zur Beachtung :
vor Abfragen des HolidayIndex (function GetHolidayIndex(Date : TDateTime; Land : TdeState): Integer;)
muss die Funktion (function GetSeason(Date : TDate): String; ) aufgerunfen werden,
da in der Funktion HolidayIndex Werte verwendet werden, die in der Funktion GetSeason erzeugt werden.

In der Demo werden nur Werte in der Schriftfarbe 'schwarz' aktualisiert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 Uhr.
Seite 2 von 4     12 34      

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