The globe's nerd stats are instruments in the scene
Owner decision 2026-10-06: the globe tells its numbers where they belong instead of in a table. instruments.js adds one three.js group to globe.gl's scene and a DOM overlay of chips: - the Sun: a ray and a bead over the subsolar point (with the irradiance), the day/night line, the golden hour and the three twilights, the declination, the noon and midnight meridian, and the analemma at this hour, its stretch to the next equinox or solstice brighter; - a focused post's place: its horizon, its Sun's line and height, and its day lit on its latitude, with one chip for the place, the phase, the solar time, the elevation and the day's length; - the tropics and polar circles (the axial tilt), the CDN ring, the view's centre and spread, and rings around the posts in view; - a small orrery in the top left corner, re-anchored to the camera before each render, with the Earth–Sun distance, the seasons, the next equinox or solstice and the next perihelion or aphelion stacked under it; - the frame rate as a ring around the globe; the rest (points, textures, countries, renderer) as a legend. The chips are placed after each frame globe.gl draws, clear of each other, the moment's caption, the orrery and the legend, and slide back inside the canvas at its edge; country names keep clear of them. Geometry changes only inside a wake globe.js already made, so an idle globe still draws nothing. three.js's classes come from globe.gl's own objects, looked for before each render until its globe is in the scene. A phone's banner draws the day/night line and the subsolar point; full screen draws everything, and a globe built in the banner now moves its camera back when opened full screen. GlobePanel loses both tooltips and the one-second poll that read every post into a table; the Sun's rows stay as screen-reader text, and a failed start says so. Seven keys only the tooltips used are gone. GlobeTests (desktop with a located post written from Milano and pinned, in both themes and turned to the subsolar point; a phone's banner, full screen and back; an idle globe drawing no frame) pass. Under SwiftShader the instruments cost 1–3 ms of a ~50 ms frame and under 0.1 ms of script; FeedPerfTests' heaps are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LsXgEaXee4GCU1hwYgPJXw
This commit is contained in:
1 parent
e88f4afc45
commit
e94e32d198
9 files changed
+1516
-181
No files matched your search
@@ -569,9 +569,6 @@
|
||||
<data name="spread" xml:space="preserve">
|
||||
<value>dispersione</value>
|
||||
</data>
|
||||
<data name="texture" xml:space="preserve">
|
||||
<value>texture</value>
|
||||
</data>
|
||||
<data name="the author's server" xml:space="preserve">
|
||||
<value>il server dell'autore</value>
|
||||
</data>
|
||||
@@ -629,15 +626,6 @@
|
||||
<data name="{0}: {1}" xml:space="preserve">
|
||||
<value>{0}: {1}</value>
|
||||
</data>
|
||||
<data name="hovered" xml:space="preserve">
|
||||
<value>sotto il puntatore</value>
|
||||
</data>
|
||||
<data name="arcs" xml:space="preserve">
|
||||
<value>archi</value>
|
||||
</data>
|
||||
<data name="rings" xml:space="preserve">
|
||||
<value>anelli</value>
|
||||
</data>
|
||||
<data name="placed" xml:space="preserve">
|
||||
<value>collocati</value>
|
||||
</data>
|
||||
@@ -683,12 +671,6 @@
|
||||
<data name="idle" xml:space="preserve">
|
||||
<value>fermo</value>
|
||||
</data>
|
||||
<data name="idle: nothing moves, nothing is drawn" xml:space="preserve">
|
||||
<value>fermo: nulla si muove, nulla viene disegnato</value>
|
||||
</data>
|
||||
<data name="Sun" xml:space="preserve">
|
||||
<value>Sole</value>
|
||||
</data>
|
||||
<data name="Now" xml:space="preserve">
|
||||
<value>Ora</value>
|
||||
</data>
|
||||
@@ -710,9 +692,6 @@
|
||||
<data name="countries" xml:space="preserve">
|
||||
<value>paesi</value>
|
||||
</data>
|
||||
<data name="named at this zoom" xml:space="preserve">
|
||||
<value>con nome a questo zoom</value>
|
||||
</data>
|
||||
<data name="borders" xml:space="preserve">
|
||||
<value>confini</value>
|
||||
</data>
|
||||
@@ -1871,4 +1850,52 @@
|
||||
<data name="Picture {0} of {1}" xml:space="preserve">
|
||||
<value>Immagine {0} di {1}</value>
|
||||
</data>
|
||||
<data name="day/night line" xml:space="preserve">
|
||||
<value>linea giorno/notte</value>
|
||||
</data>
|
||||
<data name="solar noon" xml:space="preserve">
|
||||
<value>mezzogiorno solare</value>
|
||||
</data>
|
||||
<data name="solar midnight" xml:space="preserve">
|
||||
<value>mezzanotte solare</value>
|
||||
</data>
|
||||
<data name="Tropic of Cancer" xml:space="preserve">
|
||||
<value>Tropico del Cancro</value>
|
||||
</data>
|
||||
<data name="Tropic of Capricorn" xml:space="preserve">
|
||||
<value>Tropico del Capricorno</value>
|
||||
</data>
|
||||
<data name="Arctic Circle" xml:space="preserve">
|
||||
<value>Circolo polare artico</value>
|
||||
</data>
|
||||
<data name="Antarctic Circle" xml:space="preserve">
|
||||
<value>Circolo polare antartico</value>
|
||||
</data>
|
||||
<data name="this hour, all year" xml:space="preserve">
|
||||
<value>a quest'ora, tutto l'anno</value>
|
||||
</data>
|
||||
<data name="the Sun never sets" xml:space="preserve">
|
||||
<value>il Sole non tramonta</value>
|
||||
</data>
|
||||
<data name="the Sun never rises" xml:space="preserve">
|
||||
<value>il Sole non sorge</value>
|
||||
</data>
|
||||
<data name="perihelion" xml:space="preserve">
|
||||
<value>perielio</value>
|
||||
</data>
|
||||
<data name="aphelion" xml:space="preserve">
|
||||
<value>afelio</value>
|
||||
</data>
|
||||
<data name="not to scale" xml:space="preserve">
|
||||
<value>non in scala</value>
|
||||
</data>
|
||||
<data name="day map" xml:space="preserve">
|
||||
<value>mappa del giorno</value>
|
||||
</data>
|
||||
<data name="day and night maps" xml:space="preserve">
|
||||
<value>mappe del giorno e della notte</value>
|
||||
</data>
|
||||
<data name="{0}× anisotropic" xml:space="preserve">
|
||||
<value>anisotropia {0}×</value>
|
||||
</data>
|
||||
</root>
|
||||
+48
-21
@@ -569,9 +569,6 @@
|
||||
<data name="spread" xml:space="preserve">
|
||||
<value>spread</value>
|
||||
</data>
|
||||
<data name="texture" xml:space="preserve">
|
||||
<value>texture</value>
|
||||
</data>
|
||||
<data name="the author's server" xml:space="preserve">
|
||||
<value>the author's server</value>
|
||||
</data>
|
||||
@@ -629,15 +626,6 @@
|
||||
<data name="{0}: {1}" xml:space="preserve">
|
||||
<value>{0}: {1}</value>
|
||||
</data>
|
||||
<data name="hovered" xml:space="preserve">
|
||||
<value>hovered</value>
|
||||
</data>
|
||||
<data name="arcs" xml:space="preserve">
|
||||
<value>arcs</value>
|
||||
</data>
|
||||
<data name="rings" xml:space="preserve">
|
||||
<value>rings</value>
|
||||
</data>
|
||||
<data name="placed" xml:space="preserve">
|
||||
<value>placed</value>
|
||||
</data>
|
||||
@@ -683,12 +671,6 @@
|
||||
<data name="idle" xml:space="preserve">
|
||||
<value>idle</value>
|
||||
</data>
|
||||
<data name="idle: nothing moves, nothing is drawn" xml:space="preserve">
|
||||
<value>idle: nothing moves, nothing is drawn</value>
|
||||
</data>
|
||||
<data name="Sun" xml:space="preserve">
|
||||
<value>Sun</value>
|
||||
</data>
|
||||
<data name="Now" xml:space="preserve">
|
||||
<value>Now</value>
|
||||
</data>
|
||||
@@ -710,9 +692,6 @@
|
||||
<data name="countries" xml:space="preserve">
|
||||
<value>countries</value>
|
||||
</data>
|
||||
<data name="named at this zoom" xml:space="preserve">
|
||||
<value>named at this zoom</value>
|
||||
</data>
|
||||
<data name="borders" xml:space="preserve">
|
||||
<value>borders</value>
|
||||
</data>
|
||||
@@ -1871,4 +1850,52 @@
|
||||
<data name="Picture {0} of {1}" xml:space="preserve">
|
||||
<value>Picture {0} of {1}</value>
|
||||
</data>
|
||||
<data name="day/night line" xml:space="preserve">
|
||||
<value>day/night line</value>
|
||||
</data>
|
||||
<data name="solar noon" xml:space="preserve">
|
||||
<value>solar noon</value>
|
||||
</data>
|
||||
<data name="solar midnight" xml:space="preserve">
|
||||
<value>solar midnight</value>
|
||||
</data>
|
||||
<data name="Tropic of Cancer" xml:space="preserve">
|
||||
<value>Tropic of Cancer</value>
|
||||
</data>
|
||||
<data name="Tropic of Capricorn" xml:space="preserve">
|
||||
<value>Tropic of Capricorn</value>
|
||||
</data>
|
||||
<data name="Arctic Circle" xml:space="preserve">
|
||||
<value>Arctic Circle</value>
|
||||
</data>
|
||||
<data name="Antarctic Circle" xml:space="preserve">
|
||||
<value>Antarctic Circle</value>
|
||||
</data>
|
||||
<data name="this hour, all year" xml:space="preserve">
|
||||
<value>this hour, all year</value>
|
||||
</data>
|
||||
<data name="the Sun never sets" xml:space="preserve">
|
||||
<value>the Sun never sets</value>
|
||||
</data>
|
||||
<data name="the Sun never rises" xml:space="preserve">
|
||||
<value>the Sun never rises</value>
|
||||
</data>
|
||||
<data name="perihelion" xml:space="preserve">
|
||||
<value>perihelion</value>
|
||||
</data>
|
||||
<data name="aphelion" xml:space="preserve">
|
||||
<value>aphelion</value>
|
||||
</data>
|
||||
<data name="not to scale" xml:space="preserve">
|
||||
<value>not to scale</value>
|
||||
</data>
|
||||
<data name="day map" xml:space="preserve">
|
||||
<value>day map</value>
|
||||
</data>
|
||||
<data name="day and night maps" xml:space="preserve">
|
||||
<value>day and night maps</value>
|
||||
</data>
|
||||
<data name="{0}× anisotropic" xml:space="preserve">
|
||||
<value>{0}× anisotropic</value>
|
||||
</data>
|
||||
</root>
|
||||
Reference in new issue
Block a user