Glühen
Geschichte, Teil 1
Am frühen Nachmittag spielt die Spätoktobersonne mit dem Jungen und seinen Freunden. Es ist noch nicht beängstigend. Halloween ist Stunden entfernt.
Video und Code
Diese Videosequenz zeigt Simulated Annealing zum gleichmäßigen Platzieren von 3200 Punkten um eine Kugel. Zunächst werden die Punkte in einer Doppelspirale vom Nordpol zum Südpol gelegt. Ich habe nicht nach einer Doppelspirale gesucht; Ich hatte auf etwas mehr anfängliche Streuung gehofft, aber es funktioniert trotzdem. Die Farben dienen nur der Visualisierung. Nach den Anfangspunkten beginnt der Glühprozess. https://en.wikipedia.org/wiki/Annealing_(metallurgy ) beschreibt einen physikalischen Glühprozess, bei dem Metall erhitzt wird, um eine kristallisierte Struktur zu entspannen, wodurch sich die Atome in eine andere Beziehung bewegen können. Einige Materialien könnten sogar in der Wärme der Oktobersonne geglüht werden. Die JSL hier ist für das Video optimiert und nicht für irgendetwas anderes optimiert ... aber gut genug. Während der Glühphase steuert ein Heiz- und Kühlplan, wie weit sich die Punkte von ihrem nächsten Nachbarn entfernen dürfen. Da an den Polen viele Punkte zusammengedrängt sind, muss der Zeitplan das System eine Weile heiß halten, damit diese Punkte Zeit haben, sich zu entfernen. Bei dieser „hohen Temperatur“ springen die Punkte weit genug, dass sie oft zu weit in die Nachbarschaft eines anderen Punktes gehen. Die allmähliche Abkühlungsphase des Zeitplans lässt die Punkte sich beruhigen und bewegt sich immer weniger. Das Video endet, bevor sie sich vollständig beruhigt haben.
JSL herunterladen
Glühen - YouTube

Triangulation
Geschichte, Teil 2
Am späten Nachmittag Zeit, das Kostüm anzuziehen.Immer noch nicht zu gruselig.Es ist fast Halloween.Das Kostüm des Jungen ist eine Mischung aus Pyjama und Tigerfell, mit einem dünnen Plastikfußpolster, das an den Beinenden angenäht ist, einer geformten Maske mit Gummiband und bemalten Schnurrhaaren und einem Schwanz, der über den Boden schleift.Sehr sehr cool.Seine Mutter kaufte das Outfit vor 364 Tagen bei Woolworths.
Video und Code
Es gibt nur fünf Platonische Körper .Der sechste ist 3D-Programmierer-Humor.Das Tetraeder (4 Flächen), das Oktaeder (8 Flächen) und das Ikosaeder (20 Flächen) haben dreieckige Flächen, ebenso wie dieses Modell mit 6396 Flächen. In Teil 1 wurde erklärt, wie man durch Glühen 3200 Punkte um eine Kugel verteilt.Jetzt besteht das Problem darin, diese Menge von Punkten in eine Reihe von Dreiecken umzuwandeln, die sich nicht überlappen und dennoch die Kugel vollständig bedecken.JSL verfügt über eine 2-D-Triangulationsfunktion https://community.jmp.com/docs/DOC-6686 .Da diese Dreiecke auf einer Kugel leben, brauchen wir einen 3D-Algorithmus.Ich habe das QHULL-Programm auf einem Linux-Rechner verwendet, um die 3-D-Triangulation durchzuführen.(Anfangs schien das Problem beherrschbar, und ich versuchte, meinen eigenen Code zusammenzuschustern.Ich hab mich geirrt.)
(Dateien und Skript sind beigefügt.Sie müssen diesen Schritt nicht ausführen.Sie müssen die Dateipfade nachbessern, vielleicht mit $DOWNLOADS.)
Erstellen Sie eine Datei aus der JMP-Datentabelle, die wie folgt aussieht:
Desktop/windowsShare/sphere18.csv. Hand-edit the first two rows with your favorite editor.
3
3200
0.0174574781 -0.009345855 0.9998039265
0.0370915586 0.1378584254 0.9897571777
-0.016638696 -0.082236389 0.9964739485
0.1316324218 0.1496379046 0.9799394895
-0.076811566 -0.102578513 0.9917548246
-0.124948516 -0.055647123 0.9906014669
-0.164864305 -0.100732341 0.9811588843
0.0174820473 0.0708889403 0.9973310063
...
Senden Sie es an die andere Maschine und führen Sie Folgendes aus:
grab some software for a linux machine to do a tessellation in N dimensions (N==3 for us)...
sudo apt-get install qhull libqhull-dev qhull-bin
do the tesselation...
qhull Qt i <Desktop/windowsShare/sphere18.csv
>Desktop/windowsShare/sphere18.zerobased.delaunay
Und erhalten Sie diese Datei, um sie an JMP zurückzusenden:
head Desktop/windowsShare/sphere18.zerobased.delaunay -- show the output of the tessellation
6396 -- number of triangles
1601 1605 1607 -- zero-based row numbers of vertices of first triangle
1802 1800 1804
1800 1613 1804
1798 1613 1800
1424 1611 1418
1611 1424 1619
1814 1812 1631
1629 1814 1631
1603 1597 1406
...
Der Code hier dient dazu, das Video zu erstellen, um die Triangulation zu erklären ... obwohl ich keine Ahnung habe, wie der QHULL-Algorithmus tatsächlich funktioniert.Ich dachte, ich müsste die generierte Reihenfolge der Dreiecke neu anordnen, aber die ursprüngliche Reihenfolge schien interessant.Es gibt auch eine Slow-in-Slow-out-Funktion https://en.wikipedia.org/wiki/12_basic_principles_of_animation#Slow_In_and_Slow_Out gegen Ende ... den Dolly-out langsam starten, beschleunigen und dann bis zu einem sanften Stopp verzögern. Das Suffix 18 gibt Ihnen einen Hinweis auf die Anzahl der Iterationen, die dieser Code durchlaufen hat.Es macht ein schönes Kostüm für die Welt.
JSL herunterladen
ThatsNoMoon - YouTube

Ich finde das Gefühl der Tiefe in diesem Standbild ziemlich überzeugend. (Test in letzter Minute ... dieses Skript verwendet einige Funktionen von JMP 13.JMP 13 ist jetzt verfügbar! )
Objekte
Geschichte, Teil 3
31. Oktober 1959, 18:30 Uhr. Ein Vierjähriger geht mit seinem Vater die Straße entlang, eine Süßes-oder-Saures-Tasche in der Hand und keine Ahnung, was los ist. Das erste Haus oder zwei sind die Häuser seines Freundes, keine große Sache, er war schon oft in ihnen. „Geh zur Tür, klingel, sag trickertreat , halte die Tasche hoch.“
Dann überqueren sie die Grenze . Er kennt diese Häuser nicht. Der erste ist in Ordnung; Sein Vater ruft einen Gruß und schickt den Jungen zur Tür. "Twiker-Tweat!". Sie lachen, werfen etwas in die Tasche.
Die Tür zum Nachbarhaus steht offen, und das Herz des Jungen beginnt zu rasen. Er verstand den Zauberer von OZ im Schwarz-Weiß-Fernseher nicht wirklich, aber er fand die fliegenden Affen definitiv unheimlich. Aber das ist schlimmer. In der Tür stehen, spitzer Hut, grünes Gesicht ... Jahre später würde er erkennen, dass es perfektes Make-up war und Sie hatte wahrscheinlich einen Farbfernseher.
Papa: „Los, geh die Stufen hoch. Sie wird dir nicht weh tun.“
Junge: „Neeeeeein“
Hexe, gackernd: „Komm schon, kleiner Junge … ich habe Süßigkeiten für dich …“
Video und Code
Der Code, der dieses Video erstellt hat, verwendet Namespaces zur Darstellung Schauspieler als Objekte. Die Objekte sind lose nach Drews Design in gemustert https://community.jmp.com/docs/DOC-9687 , und haben mehrere Schichten von Unterklassen. Vielleicht finden Sie die Art und Weise, wie sich die Objekte selbst darstellen, etwas beängstigend, ähnlich wie fliegende Affen. Die Schauspieler haben Regeln, die ihre Interaktionen regeln, während sie durch ihre Welt wandern. Es gibt zwei Fälle von „Pol“-Akteuren; Ihr Hauptzweck besteht darin, andere Akteure vom Nord- und Südpol abzuwehren (weil das von mir gewählte Koordinatensystem die Pole nicht richtig handhabt). Die roten und blauen Akteure werden am Nordpol instanziiert und voneinander und von den Polen abgestoßen. Der blaue oder angesehene Schauspieler hat besondere Talente: Krabbenlaufen, dem Äquator folgen und nach Osten suchen. Im Gegensatz zu den roten Schauspielern hat Blau Mittel und Motivation. Die Kamera folgt blau. Das meiste davon ist dem Spaß viel näher als der Realität. Die Atmosphäre ist nicht so, wie sie scheint. Die Sonnen sind viel zu nah und haben unerklärliche Himmelshaken, die sie hochhalten. Die Viecherkörper sind nur Kugeln, tief in die Oberfläche gedrückt. Wenn sich die Viecher zu schnell drehen, überkreuzen sich ihre Beine und entwirren sich ein paar Frames später.
JSL herunterladen
TessellationDance – YouTube

Update 22.06.2018: Links reparieren