1
0
web/static/pkg/solar-sys/js/data.js
2024-04-28 20:12:46 +09:00

548 lines
14 KiB
JavaScript

celestialBodies = {
Sun: new CelestialBody({
name: "Sun",
star: true,
parent: "Sun",
radius: 200.,
shineColor: 0xfff700,
orbit: {
semiMajorAxis: 0.
},
rotation: {
period: 2500,
inclination: 0,
},
material: {
type: "basic",
diffuse: {map: "res/sol/diffuse.png"}
},
atmosphere: {
cloud: {
map: "res/sol/overlay.png",
height: 1,
speed: 1
}
},
halo: {
color: new THREE.Color(0xfff700),
radius: 500.
}
}),
Mercury: new CelestialBody({
name: "Mercury",
radius: 3.8256,
parent: "Sun",
shineColor: 0x9999ff,
orbit: {
period: 1.204,
semiMajorAxis: 387.1,
eccentricity: 0.2056,
inclination: 7.0049
},
rotation: {
period: 1407.509405,
inclination: 28.55,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/mercury/diffuse.jpg"},
bump: {map: "res/mercury/bump.jpg", height: 0.}
}
}),
Venus: new CelestialBody({
name: "Venus",
radius: 9.488,
parent: "Sun",
shineColor: 0x9999ff,
orbit: {
period: 3.076,
semiMajorAxis: 723.3,
eccentricity: 0.0068,
inclination: 3.3947
},
rotation: {
period: 5832.443616,
inclination: 157.16,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/venus/diffuse.jpg"},
bump: {map: "res/venus/bump.jpg", height: 0.}
},
atmosphere: {
cloud: {
map: "res/venus/clouds.jpg",
height: 0.5,
speed: 0.02
}
}
}),
Earth: new CelestialBody({
name: "Earth",
radius: 10.,
parent: "Sun",
shineColor: 0x6666ff,
orbit: {
period: 5.,
semiMajorAxis: 1000.,
eccentricity: 0.0167,
inclination: 0.0001
},
rotation: {
period: 23.93447117,
inclination: -23.4392911,
meridianAngle: 280.147,
offset: 0.
},
material: {
type: "phong",
diffuse: {map: "res/earth/diffuse.jpg"},
specular: {map: "res/earth/spec.jpg", color: 0x243232, shininess: 25},
bump: {map: "res/earth/bump.jpg", height: 0.05},
night: {map: "res/earth/night.png"}
},
atmosphere: {
cloud: {
map: "res/earth/clouds.png",
height: 0.1,
speed: 0.02
},
scattering: true,
atmosphereColor: new THREE.Vector3(0.5, 0.7, 0.8),
sunsetColor: new THREE.Vector3(0.8, 0.7, 0.6),
atmosphereStrength: 1.5,
sunsetStrength: 1.0
}
}),
Comet: new CelestialBody({
name: "Comet",
parent: "Sun",
radius: 0,
spherical: false,
isComet: true,
orbit: {
period: 3.5,
semiMajorAxis: 3000.,
eccentricity: 0.5,
inclination: 10.,
},
}),
Ship: new CelestialBody({
name: "Ship",
parent: "Earth",
radius: 0.2,
spherical: false,
obj: {
path: "res/space/",
objPath: "tiangong.obj",
mtlPath: "tiangong.mtl",
angle: -30,
scale: 0.008,
},
orbit: {
period: 1.0,
semiMajorAxis: 15.,
inclination: 30,
},
rotation: {
period: 100.0,
inclination: 0,
},
}),
Astronaut: new CelestialBody({
name: "Astronaut",
parent: "Earth",
radius: 0.05,
spherical: false,
obj: {
path: "res/space/",
objPath: "man.obj",
mtlPath: null,
scale: 0.008,
angle: 235,
x: 0.04,
y: 0.02,
z: 0.01,
},
orbit: {
period: 1.0,
semiMajorAxis: 15.,
inclination: 30,
},
rotation: {
period: 100.0,
inclination: 0,
},
}),
Moon: new CelestialBody({
name: "Moon",
radius: 2.7243,
parent: "Earth",
shineColor: 0xff9988,
orbit: {
period: 2.0749,
semiMajorAxis: 25.,
eccentricity: 0.0549,
inclination: 5.15
},
rotation: {
period: 655.2,
inclination: 23.4608,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/moon/diffuse.jpg"},
bump: {map: "res/moon/bump.jpg", height: 0.1}
}
}),
Mars: new CelestialBody({
name: "Mars",
radius: 5.3226,
parent: "Sun",
shineColor: 0xff9988,
orbit: {
period: 9.4095,
semiMajorAxis: 1523.7,
eccentricity: 0.0934,
inclination: 1.8506
},
rotation: {
period: 24.622962156,
inclination: 37.11350,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/mars/diffuse.jpg"},
bump: {map: "res/mars/bump.jpg", height: 1.}
},
atmosphere: {
scattering: true,
atmosphereColor: new THREE.Vector3(0.9, 0.8, 0.6),
sunsetColor: new THREE.Vector3(0.4, 0.5, 0.7),
atmosphereStrength: 1.0,
sunsetStrength: 0.9
}
}),
Phobos: new CelestialBody({
name: "Phobos",
radius: 1,
parent: "Mars",
shineColor: 0xff9988,
orbit: {
period: 1.5945,
semiMajorAxis: 20,
eccentricity: 0.0151,
inclination: 1.082
},
rotation: {
period: 100.,
inclination: 37.10,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/phobos/diffuse.jpg"},
bump: {map: "res/phobos/bump.jpg", height: 10.}
}
}),
Deimos: new CelestialBody({
name: "Deimos",
radius: 0.5,
parent: "Mars",
shineColor: 0xff9988,
orbit: {
period: 6.3122,
semiMajorAxis: 30,
eccentricity: 0.00033,
inclination: 1.791
},
rotation: {
period: 150.,
inclination: 36.48,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/deimos/diffuse.jpg"},
bump: {map: "res/deimos/bump.jpg", height: 10.}
}
}),
Jupiter: new CelestialBody({
name: "Jupiter",
radius: 112.09,
parent: "Sun",
shineColor: 0x9999ff,
orbit: {
period: 59.3,
semiMajorAxis: 2000.,
eccentricity: 0.0484,
inclination: 1.3053
},
rotation: {
period: 238.23,
inclination: 2.22,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/jupiter/diffuse.jpg"},
},
atmosphere: {
cloud: {
map: "res/jupiter/clouds.png",
height: 0.3,
speed: 0.02
},
scattering: true,
atmosphereColor: new THREE.Vector3(1.0, 0.8, 0.7),
sunsetColor: new THREE.Vector3(0.7, 0.7, 0.8),
atmosphereStrength: 1.8,
sunsetStrength: 0.6
},
}),
Callisto: new CelestialBody({
name: "Callisto",
radius: 4.0,
parent: "Jupiter",
shineColor: 0xff9988,
orbit: {
period: 2.49,
semiMajorAxis: 200.,
eccentricity: 0.0045045,
inclination: 0.384285,
},
rotation: {
period: 100.,
inclination: 25.51,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/callisto/diffuse.jpg"},
}
}),
Europa: new CelestialBody({
name: "Europa",
radius: 3.0,
parent: "Jupiter",
shineColor: 0xff9988,
orbit: {
period: 17.76,
semiMajorAxis: 160.,
eccentricity: 0.0101,
inclination: 0.470,
},
rotation: {
period: 150.,
inclination: 25.49,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/europa/diffuse.jpg"},
}
}),
Io: new CelestialBody({
name: "Io",
radius: 3.0,
parent: "Jupiter",
shineColor: 0xff9988,
orbit: {
period: 8.85,
semiMajorAxis: 100.,
eccentricity: 0.0041,
inclination: 0.040,
},
rotation: {
period: 100.,
inclination: 25.50,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/io/diffuse.png"},
}
}),
Saturn: new CelestialBody({
name: "Saturn",
radius: 94.49,
parent: "Sun",
shineColor: 0x9999ff,
orbit: {
period: 40.0,
semiMajorAxis: 2500.,
eccentricity: 0.0542,
inclination: 2.4845
},
rotation: {
period: 255.75,
inclination: 28.052,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/saturn/diffuse.png"},
bump: {map: "res/saturn/bump.png"},
},
atmosphere: {
cloud: {
map: "res/saturn/clouds.png",
height: 0.5,
speed: 0.05
},
scattering: true,
atmosphereColor: new THREE.Vector3(0.8, 0.7, 0.5),
sunsetColor: new THREE.Vector3(0.7, 0.7, 0.8),
atmosphereStrength: 1.5,
sunsetStrength: 0.8
},
ring: {
map: "res/saturn/ring.png",
lower: 5,
higher: 80,
}
}),
Dione: new CelestialBody({
name: "Dione",
radius: 5.0,
parent: "Saturn",
shineColor: 0xff9988,
orbit: {
period: 3.0,
semiMajorAxis: 200.,
eccentricity: 0.05,
inclination: 0.0049,
},
rotation: {
period: 130.,
inclination: 22.9,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/dione/diffuse.jpg"},
}
}),
Titan: new CelestialBody({
name: "Titan",
radius: 6.0,
parent: "Saturn",
shineColor: 0xff9988,
orbit: {
period: 4.0,
semiMajorAxis: 150.,
eccentricity: 0.05,
inclination: 0.0049,
},
rotation: {
period: 120.,
inclination: 1.53,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/titan/diffuse.jpg"},
}
}),
Uranus: new CelestialBody({
name: "Uranus",
radius: 40.07,
parent: "Sun",
shineColor: 0x9999ff,
orbit: {
period: 420.069,
semiMajorAxis: 3000.,
eccentricity: 0.0472,
inclination: 0.7699
},
rotation: {
period: 413.76,
inclination: 97.722,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/uranus/diffuse.jpg"},
},
ring: {
map: "res/uranus/ring.png",
lower: 10,
higher: 20,
},
atmosphere: {
scattering: true,
atmosphereColor: new THREE.Vector3(0.5, 0.9, 0.7),
sunsetColor: new THREE.Vector3(0.7, 0.9, 0.8),
atmosphereStrength: 0.2,
sunsetStrength: 0.7
},
}),
Neptune: new CelestialBody({
name: "Neptune",
radius: 38.83,
parent: "Sun",
shineColor: 0x9999ff,
orbit: {
period: 823.965,
semiMajorAxis: 3500.,
eccentricity: 0.0097,
inclination: 1.7692
},
rotation: {
period: 386.64,
inclination: 28.03,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/neptune/diffuse.jpg"},
},
ring: {
map: "res/neptune/ring.png",
lower: 10,
higher: 20,
}
}),
Pluto: new CelestialBody({
name: "Pluto",
radius: 15.,
parent: "Sun",
shineColor: 0x9999ff,
orbit: {
period: 32.0,
semiMajorAxis: 4000.,
eccentricity: 0.2482,
inclination: 17.1449
},
rotation: {
period: 153.292944,
inclination: 115.60,
meridianAngle: 0.,
offset: 0.
},
material: {
type: "lambert",
diffuse: {map: "res/pluto/diffuse.jpg"},
},
}),
}