
( erinnert mich an Cover the Earth Sherwin Williams Paint (XXH0284) – RC Maxwell Company Außenwerbung – Duke Libraries )
Die angehängte JSL-Datei (unten) verwendet nicht die Zeitzone von vorherigen Post . (Das wird aber bald der Fall sein.) Nehmen Sie zunächst einfach eine Reihe von Bildern auf, um die Animation zu erstellen.
Es gibt viele Websites, die beschreiben, wie das geht. Sie schienen alle kompliziert zu sein, also habe ich etwas Einfaches ausprobiert. Es scheint einigermaßen korrekte Ergebnisse zu liefern. Das Bild oben zeigt einen 24-Stunden-Zeitraum Ende Oktober. Die Sonne ist nach Süden verschoben; Die Südhalbkugel hat lange Tage und die Nordhalbkugel hat kurze Tage. Woher kommt diese faszinierende Form?
Die Sonne scheint auf die halbe Erde. Die andere Hälfte ist dunkel. Es ist ein wenig kontraintuitiv, aber in der Grafik oben wird die Antisonne (in Ermangelung eines besseren Namens) verwendet, um Dunkelheit auf die der Sonne gegenüberliegende Hälfte der Erde zu projizieren.
Es ist ziemlich einfach, anhand der Tages- und Jahreszeit den Punkt auf der Erde direkt unter der Sonne zu finden. Die Sonne wandert um den 21. Juni herum bis zu 23,5 Grad nördlicher Breite und am 21. Dezember 23,5 Grad südlicher Breite. In diesem vereinfachten Modell folgt die Sonne einer symmetrischen sinusförmigen Zeitlinie. obwohl ich denke, dass es in Wirklichkeit mehr Zeit unterhalb des Äquators verbringt . Und im Laufe von 24 Stunden durchläuft die Sonne 360 Längengrade. Das ist also das Zentrum des Lichts, oder in diesem Fall der Dunkelheit.
Wo sind die Kanten?Der Terminator ist die Dämmerungslinie.Es befindet sich in jeder Richtung im 90-Grad-Winkel zum Mittelpunkt des Lichts. Zeichnen Sie einen Kreis auf der Karte, der 90 Grad vom Mittelpunkt der Sonne entfernt ist, auf der Vorderseite der Karte und färben Sie die Innenseite oder die Außenseite ein. Ich habe die Mathematik gefunden, die ich brauchte Hier , in Form einer Gleichung, die die Frage beantwortet: „Wenn ich bei Breitengrad und Längengrad beginne und X Meilen mit einer Peilung von B Grad zurücklege, welchen Breitengrad und Längengrad erreiche ich dann?“90 Grad sind auf unserem Heimatplaneten etwa 6.000 Meilen entfernt.
Das nächste Puzzleteil ist ein Beispiel aus dem Skriptindex, das mithilfe der XY-Funktion eine Spirale zeichnet.

Kann ich dahinter eine Karte einfügen?Rechtsklick->Hintergrundkarte->SimpleEarth...

Perfekt! Es ist keine kreisförmige Spirale mehr, sondern wird durch die Projektion der Karte verzerrt ... was genau das ist, was nötig ist, um den Kreis der Sonnenbeleuchtung auch auf die flache Karte zu projizieren. Bewegen Sie die Achsen ein wenig (lassen Sie die Maus los, um die Karte zu aktualisieren) und beobachten Sie, wie die Spirale ihre Form ändert, um über den gleichen Bereichen zu bleiben.


Das Spiralbeispiel erzeugt Y-Werte etwas über 90. Die äußerste Spitze der spitzen Projektion zeigt allmählich eine Anomalie. Gehen Sie nicht dorthin.
Zurück zum Tag/Nacht-Diagramm: Ich habe mehrere Varianten ausprobiert und diese ist die zufriedenstellendste. Machen Sie die Linienbreite der Spirale breit, aber nicht zu breit. Und machen Sie die Anzahl der Spiralschleifen groß, aber nicht zu groß. Machen Sie die Linienfarbe schwarz und möglicherweise transparent (für eine zukünftige Version von JMP).Die Anzahl der Spiralschleifen beginnt, den Graphen nach einiger Zeit zu verlangsamen; 20 ist schnell, 200 ist langsam. Bei 20 benötigen Sie eine dickere Linie, um alles dazwischen zu schattieren, aber dickere Linien sorgen für unregelmäßigere Kanten. JMP ändert in einer kommenden Version die zugrunde liegenden Zeichenwerkzeuge und die Transparenz wird in diesem Beispiel großartig aussehen, aber bei JMP 12 führt die Transparenz in der Spirale zu Artefakten, wo die dicke Linie sich selbst überlappt.
Ein weiterer Teil des Puzzles: Mit den JMP-Kartenhintergründen erhalten Sie tatsächlich zwei Hintergründe, ein Bitmap-Bild und eine Linienzeichnung von Grenzen.

Diese beiden Teile werden als separate Ebenen angezeigt, wenn Sie im Dialogfeld „Diagramm anpassen“ nachsehen.

Sie haben ihre eigenen Eigenschaften, aber was noch wichtiger ist, sie haben ihre eigenen Positionen als Elemente 1 und 2 in der Liste. Das ist wichtig, denn der „Nachtschatten“ muss über dem Kartenhintergrundbild gezeichnet werden und dann muss die Grenzform darüber gezeichnet werden (um den Effekt oben in diesem Beitrag zu erzielen). Daher wird die Spiralschrift an Position 2 eingefügt.

Dies wird im benutzerdefinierten Diagrammdialog zwischen Hintergrund und Form angezeigt. (Das andere Skript ist leer, was Sinn macht, wenn Sie die unten angehängte JSL sehen.)

Um fair zu den Websites mit komplizierten Beispielen zu sein: Sie können kompliziert sein, weil sie eine Projektion erstellen und herausfinden, wo die Schattierung erfolgen soll, wenn sie in mehrere Bereiche unterteilt ist. Dieser Code nutzt die integrierte Unterstützung für die Umwandlung von Datenkoordinaten in Kartenraum.
Die angehängte Datei ist wahrscheinlich noch so eingerichtet, dass sie die 24 Frames für die Animation in Ihrem $temp-Verzeichnis erstellt. Sie können ein GIF-Dienstprogramm verwenden, um die Animation zu erstellen, oder Sie können die JSL so ändern, dass die 24 einzelnen Berichte nicht in einer Schleife ausgeführt oder geschlossen werden.
Nächstes Mal: Ein paar Nachtlichter hinzufügen ...
Projected circle of sunlightProjected circle of sunlightProjected circle of sunlightProjected circle of sunlightProjizierter Sonnenkreis
Bearbeiten 4. Januar 2017: Es gibt mindestens einen Fehler in der angehängten JSL. Wie geschrieben, wird es wegen der Interpolation der aktuellen Tageszahl nur zwischen dem 21. Juni und dem 21. Dezember laufen. So etwas sollte besser funktionieren:
currentangle = Interpolate( currentpoint, lowpoint-365, 2 * Pi(), highpoint, Pi(), lowpoint, 2 * Pi(), highpoint+365, Pi() );
LowPoint ist 356 und HighPoint ist 173; Sie stellen die Tage dar, an denen die Sonne weit im Süden und weit im Norden steht. LowPoint-365 findet im Dezember des Vorjahres und HighPoint+365 im Juni des nächsten Jahres statt. Jetzt hat die Interpolation die Chance, das ganze Jahr über ein nicht fehlendes Ergebnis zu erzielen.