-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Updated Uranus magnetic field definition and added workaround for DAT…
….gui bug. Updated to v0.7.
- Loading branch information
Chris Arridge
committed
Mar 5, 2020
1 parent
2afc64a
commit 8b94393
Showing
8 changed files
with
42 additions
and
24 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,18 @@ | ||
# Change history | ||
|
||
## Version 0.7 - 2020-03-05 - Josh Wiggs <[email protected]> and Chris Arridge <[email protected]>/Lancaster University | ||
* Configuration data for each of the planets has been changed from a Javascript | ||
file dumping data into the global space into a JSON file from which each | ||
planet is setup dynamically. | ||
* Meta data added to each planet including notes about origins of definitions. | ||
* Added 'Show Information' button in the GUI to show meta data for each planet. | ||
* CSS Fixes. | ||
* Updated Uranus magnetic field definition to reflect that Uranus is rendered using | ||
the IAU pole definition. This was incorrectly applied in the previous version. | ||
* Fixed bug where the NumberControllerBox in DAT.gui could not be adjusted using | ||
the text boxes. Added work-around by removing .listen() and adding an explicit | ||
update when each planet changes (e.g., https://github.com/dataarts/dat.gui/issues/179). | ||
|
||
## Version 0.6b - 2019-09-19 - Chris Arridge <[email protected]>/Lancaster University | ||
* Fixed moon orbit bug where moons would continue to orbit the planet when auto | ||
rotate was turned off. Also fixed bug where moons would not respond to changes in speedup factor. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
/** | ||
*** @file Provides all the GUI functions for Ikuchi. | ||
*** @author Chris Arridge, Lancaster University <[email protected]> | ||
*** @version 6 | ||
*** @version 7 | ||
*** @copyright Lancaster University (2019) | ||
*** @licence GNU GPL v3. | ||
**/ | ||
|
@@ -104,7 +104,7 @@ class Ikuchi { | |
this.planetObjects = new Map(); | ||
} | ||
|
||
/** Add planet (defined in an object literal - see ikuchi-planets.js) to the app. | ||
/** Add planet (defined in an object literal - see planets.js) to the app. | ||
*** | ||
*** @param {object} pl The object literal defining the planet. | ||
**/ | ||
|
@@ -287,15 +287,15 @@ class Ikuchi { | |
// init GUI. | ||
this.gui = new dat.GUI({height : 5 * 32 - 1}); | ||
this.gui.add(this, 'autoRotate').name('Auto rotate') | ||
this.gui.add(this, 'speedUp').name('Speed').min(100.0).max(10000.0).step(1.0).listen(); | ||
this.gui.add(this, 'rotationY').name('Obliquity').min(-90.0).max(90.0).step(5.0).listen(); | ||
this.gui.add(this, 'rotationZ').name('Orbital Phase').min(0.0).max(360.0).step(10.0).listen(); | ||
this.gui.add(this, 'dipolePoleColatitude').name('Dipole Colatitude').min(0.0).max(180.0).step(5.0).listen().onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'dipolePoleLongitude').name('Dipole Longitude').min(0.0).max(360.0).step(5.0).listen().onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'dipoleOriginX').name('Dipole x0').min(-1.0).max(1.0).step(0.02).listen().onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'dipoleOriginY').name('Dipole y0').min(-1.0).max(1.0).step(0.02).listen().onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'dipoleOriginZ').name('Dipole z0').min(-1.0).max(1.0).step(0.02).listen().onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'rotationPeriod').name('Rotation Period').min(9.0).max(29.0).step(0.05).listen(); | ||
this.gui.add(this, 'speedUp').name('Speed').min(100.0).max(10000.0).step(1.0); | ||
this.gui.add(this, 'rotationY').name('Obliquity').min(-90.0).max(90.0).step(5.0); | ||
this.gui.add(this, 'rotationZ').name('Orbital Phase').min(0.0).max(360.0).step(10.0); | ||
this.gui.add(this, 'dipolePoleColatitude').name('Dipole Colatitude').min(0.0).max(180.0).step(5.0).onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'dipolePoleLongitude').name('Dipole Longitude').min(0.0).max(360.0).step(5.0).onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'dipoleOriginX').name('Dipole x0').min(-1.0).max(1.0).step(0.02).onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'dipoleOriginY').name('Dipole y0').min(-1.0).max(1.0).step(0.02).onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'dipoleOriginZ').name('Dipole z0').min(-1.0).max(1.0).step(0.02).onChange(this.onChangeDipoleProperties.bind(this)); | ||
this.gui.add(this, 'rotationPeriod').name('Rotation Period').min(9.0).max(29.0).step(0.05); | ||
this.gui.add(this, 'rotationReversed').name('Reverse Rotation').listen().onChange(this.onChangeRotationReversed.bind(this)); | ||
this.gui.add(this, 'planetaryInfo').name('Show Information'); | ||
this.gui.add(this, 'captureSVG').name('Capture SVG Code'); | ||
|
@@ -772,6 +772,11 @@ class Ikuchi { | |
|
||
this.guiFolderPlanets.add(this.ringVisible, this.nameToLabel(cPlanet.discreteRingNames[i],'ring')).name(cPlanet.discreteRingNames[i]).onChange(this.onChangeRingVisibility.bind(this)); | ||
} | ||
|
||
// update GUI display | ||
for (i in this.gui.__controllers) { | ||
this.gui.__controllers[i].updateDisplay(); | ||
} | ||
} | ||
|
||
/** Show/hide moons and their orbits. **/ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -141,9 +141,9 @@ planets = { | |
"planetTexture": textureUranus, | ||
"eventLabels": ["Now","Voyager 2","Vernal Equinox","NH Summer Solstice","Autumnal Equinox","SH Summer Solstice"], | ||
"eventTimes": ["1986-01-24","1966-02-03","1985-10-06","2007-12-16","2030-04-19"], | ||
"dipolePoleColatitude": -60.0, | ||
"dipolePoleLongitude": 48.0, | ||
"dipoleOrigin": [-0.02,0.02,0.31], | ||
"dipolePoleColatitude": 120.0, | ||
"dipolePoleLongitude": 0.0, | ||
"dipoleOrigin": [0.0,0.0,0.31], | ||
"yFunction": rotyUranus, | ||
"zFunction": rotzUranus, | ||
"moonNames": ["Mab","Miranda","Ariel","Umbriel","Titania","Oberon"], | ||
|
@@ -166,10 +166,10 @@ planets = { | |
"meta": { | ||
"author": "C. Arridge, Lancaster University & J. A. Wiggs, Lancaster University", | ||
"contact":"[email protected]", | ||
"version": 5, | ||
"copyright": "Lancaster University (2019)", | ||
"version": 6, | ||
"copyright": "Lancaster University (2019-2020)", | ||
"licence": "GNU GPL v3", | ||
"text": "Equinox and solstice times are from Meeus, J (1997) 'Equinoxes and solstices on Uranus and Neptune' J. Brit. Astronomical Assoc. 107(6), p332, http://adsabs.harvard.edu/full/1997JBAA..107..332M <br><br>Moon and ring data from PDS: https://pds-rings.seti.org/uranus/uranus_tables.html <br><br>Eccentric dipole properties from Connerney, J.E.P. (1993) 'Magnetic fields of the outer planets' J. Geophys. Res. 98(E10) 18659-18679. Note that since the dipole properties were derived in a frame where the north pole was coincident with the rotational pole (i.e., opposite to the IAU definition we use here) the dipole z offset and latitude are swapped from those quoted in Connerney (1993)." | ||
"text": "Equinox and solstice times are from Meeus, J (1997) 'Equinoxes and solstices on Uranus and Neptune' J. Brit. Astronomical Assoc. 107(6), p332, http://adsabs.harvard.edu/full/1997JBAA..107..332M <br><br>Moon and ring data from PDS: https://pds-rings.seti.org/uranus/uranus_tables.html <br><br>Eccentric dipole properties from Connerney, J.E.P. (1993) 'Magnetic fields of the outer planets' J. Geophys. Res. 98(E10) 18659-18679. Note that since the dipole properties were derived in a frame where the north pole was coincident with the rotational pole (i.e., opposite to the IAU definition we use here) the colatitude is swapped from 60 degrees quoted in Connerney (1993) to 120 degrees to place the dipole north pole in the rotational northern hemisphere. We also invert the z0 position of the dipole from -0.31 to 0.31 Ru to reflect the definitions used here. In lieu of a new fit in the IAU coordinate system we simply set the dipole longitude, x0 and y0 to zero." | ||
} | ||
}, | ||
"planetNeptune": { | ||
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.