Below is the html file created by Claude.ai that displays the image of the solar system on the linked page.
HTML is an acronym that means HyperText Markup Language. It is read by a browser and used to display text, images, and all manner of other things on a web page.
Each browser may take the markup code and display the various texts and images slightly differently. There are organisations that try to standardise the protocols and various connections. Many browsers might innovate to make it faster, make it more secure, try to serve specific niches. Some might try to reduce advertising or harmful content. Nation states may want to prevent certain content and try to create their own browser protocols to prevent things reaching the eyes and ears of their citizens so may create their own standards.
So with that being said and one could elaborate further.
As said above a browser will take the code below and compile it into a code that can run on a computer.
HTML is primarily a standard by which a web browser can display items on a screen.
It can run various other packets of code within the browser which allows it to display animations, allow text, games or videos to be displayed.
When an html file is read one of the first things it looks for is the <!DOCTYPE html>
The browser will go through every line of code and check it against what it expects the code to look like and if it finds something it doesn't expect produce an error. The item may not display correctly and the programmer will need to fix the code in order for it to run correctly.
The next line <html lang="en">.
This <html> tag allows global variables to be declared. Such as lang which declares the written or spoken text being used or displayed on the page. This allows the browser to know what language is being used. So if your writing in Mandarin or even Scottish Gaelic you declare this here.
There is a list here. Where you can see that gd is the code for Scottish Gaelic.
So if your writing Scottish Gaelic then declare that here and the browser will adjust to suit. The html file just treats text as text. But the browsers can treat the text differently be able to translate the text from the language of the written text into the viewers language for example.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Solar System Simulator</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
background: radial-gradient(ellipse at center, #0f0f23 0%, #000000 100%);
font-family: 'Arial', sans-serif;
color: white;
overflow: hidden;
}
.container {
display: flex;
height: 100vh;
}
.simulation-panel {
flex: 1;
position: relative;
overflow: hidden;
}
.info-panel {
width: 350px;
background: rgba(0, 0, 0, 0.8);
backdrop-filter: blur(10px);
border-left: 1px solid rgba(255, 255, 255, 0.1);
padding: 20px;
overflow-y: auto;
}
.solar-system {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 800px;
height: 800px;
}
.sun {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 30px;
height: 30px;
background: radial-gradient(circle, #ffeb3b, #ff9800);
border-radius: 50%;
box-shadow: 0 0 50px #ffeb3b;
z-index: 10;
}
.orbit {
position: absolute;
top: 50%;
left: 50%;
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 50%;
transform: translate(-50%, -50%);
}
.planet {
position: absolute;
border-radius: 50%;
cursor: pointer;
transition: transform 0.2s;
}
.planet:hover {
transform: scale(1.2);
}
.planet-label {
position: absolute;
top: -25px;
left: 50%;
transform: translateX(-50%);
font-size: 10px;
white-space: nowrap;
pointer-events: none;
opacity: 0.8;
}
.controls {
position: absolute;
top: 20px;
left: 20px;
z-index: 100;
}
.control-btn {
background: rgba(255, 255, 255, 0.1);
border: 1px solid rgba(255, 255, 255, 0.2);
color: white;
padding: 10px 15px;
margin: 5px;
border-radius: 5px;
cursor: pointer;
backdrop-filter: blur(10px);
}
.control-btn:hover {
background: rgba(255, 255, 255, 0.2);
}
.speed-control {
margin-top: 10px;
}
.speed-slider {
width: 100px;
margin-left: 10px;
}
.planet-tabs {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin-bottom: 20px;
}
.planet-tab {
background: rgba(255, 255, 255, 0.1);
border: 1px solid rgba(255, 255, 255, 0.2);
color: white;
padding: 8px 12px;
border-radius: 20px;
cursor: pointer;
font-size: 12px;
transition: all 0.3s;
}
.planet-tab:hover {
background: rgba(255, 255, 255, 0.2);
}
.planet-tab.active {
background: linear-gradient(45deg, #667eea, #764ba2);
border-color: #667eea;
}
.planet-info {
display: none;
}
.planet-info.active {
display: block;
}
.planet-info h2 {
color: #667eea;
margin-bottom: 15px;
font-size: 24px;
}
.info-grid {
display: grid;
gap: 15px;
}
.info-item {
background: rgba(255, 255, 255, 0.05);
padding: 12px;
border-radius: 8px;
border-left: 3px solid #667eea;
}
.info-label {
font-weight: bold;
color: #a0a0a0;
font-size: 12px;
text-transform: uppercase;
margin-bottom: 5px;
}
.info-value {
font-size: 14px;
line-height: 1.4;
}
.stars {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
}
.star {
position: absolute;
background: white;
border-radius: 50%;
animation: twinkle 3s infinite;
}
@keyframes twinkle {
0%, 100% { opacity: 0.3; }
50% { opacity: 1; }
}
</style>
</head>
<body>
<div class="container">
<div class="simulation-panel">
<div class="stars" id="stars"></div>
<div class="controls">
<div class="speed-control">
<label>Time: </label>
<span id="currentTime"></span>
</div>
</div>
<div class="solar-system" id="solarSystem">
<div class="sun"></div>
</div>
</div>
<div class="info-panel">
<h1 style="margin-bottom: 20px; color: #667eea;">Solar System Explorer</h1>
<div class="planet-tabs" id="planetTabs">
<div class="planet-tab active" onclick="showPlanetInfo('sun')">Sun</div>
<div class="planet-tab" onclick="showPlanetInfo('mercury')">Mercury</div>
<div class="planet-tab" onclick="showPlanetInfo('venus')">Venus</div>
<div class="planet-tab" onclick="showPlanetInfo('earth')">Earth</div>
<div class="planet-tab" onclick="showPlanetInfo('mars')">Mars</div>
<div class="planet-tab" onclick="showPlanetInfo('jupiter')">Jupiter</div>
<div class="planet-tab" onclick="showPlanetInfo('saturn')">Saturn</div>
<div class="planet-tab" onclick="showPlanetInfo('uranus')">Uranus</div>
<div class="planet-tab" onclick="showPlanetInfo('neptune')">Neptune</div>
</div>
<div id="planetInfoContainer">
<div id="sun-info" class="planet-info active">
<h2>☀️ The Sun</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Type</div>
<div class="info-value">G-type main-sequence star</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">1.989 × 10³⁰ kg (99.86% of solar system)</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">1,392,700 km (109 Earth diameters)</div>
</div>
<div class="info-item">
<div class="info-label">Surface Temperature</div>
<div class="info-value">5,778 K (5,505°C)</div>
</div>
<div class="info-item">
<div class="info-label">Core Temperature</div>
<div class="info-value">15 million°C</div>
</div>
<div class="info-item">
<div class="info-label">Age</div>
<div class="info-value">4.6 billion years</div>
</div>
<div class="info-item">
<div class="info-label">Composition</div>
<div class="info-value">73% Hydrogen, 25% Helium, 2% Heavier elements</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">The Sun converts 600 million tons of hydrogen into helium every second through nuclear fusion.</div>
</div>
</div>
</div>
<div id="mercury-info" class="planet-info">
<h2>☿️ Mercury</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Distance from Sun</div>
<div class="info-value">57.9 million km (0.39 AU)</div>
</div>
<div class="info-item">
<div class="info-label">Orbital Period</div>
<div class="info-value">88 Earth days</div>
</div>
<div class="info-item">
<div class="info-label">Day Length</div>
<div class="info-value">176 Earth days</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">4,879 km (0.38 Earth diameters)</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">3.3 × 10²³ kg (0.055 Earth masses)</div>
</div>
<div class="info-item">
<div class="info-label">Temperature Range</div>
<div class="info-value">-173°C to 427°C</div>
</div>
<div class="info-item">
<div class="info-label">Atmosphere</div>
<div class="info-value">Extremely thin: Oxygen, Sodium, Hydrogen, Helium</div>
</div>
<div class="info-item">
<div class="info-label">Moons</div>
<div class="info-value">0</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">Mercury has the most eccentric orbit of all planets and experiences the greatest temperature variation.</div>
</div>
</div>
</div>
<div id="venus-info" class="planet-info">
<h2>♀️ Venus</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Distance from Sun</div>
<div class="info-value">108.2 million km (0.72 AU)</div>
</div>
<div class="info-item">
<div class="info-label">Orbital Period</div>
<div class="info-value">225 Earth days</div>
</div>
<div class="info-item">
<div class="info-label">Day Length</div>
<div class="info-value">243 Earth days (retrograde rotation)</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">12,104 km (0.95 Earth diameters)</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">4.87 × 10²⁴ kg (0.815 Earth masses)</div>
</div>
<div class="info-item">
<div class="info-label">Surface Temperature</div>
<div class="info-value">462°C (hottest planet)</div>
</div>
<div class="info-item">
<div class="info-label">Atmosphere</div>
<div class="info-value">96% Carbon Dioxide, 3.5% Nitrogen</div>
</div>
<div class="info-item">
<div class="info-label">Surface Pressure</div>
<div class="info-value">92 Earth atmospheres</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">Venus rotates backwards and has the longest day of any planet. Its thick atmosphere creates a runaway greenhouse effect.</div>
</div>
</div>
</div>
<div id="earth-info" class="planet-info">
<h2>🌍 Earth</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Distance from Sun</div>
<div class="info-value">149.6 million km (1.00 AU)</div>
</div>
<div class="info-item">
<div class="info-label">Orbital Period</div>
<div class="info-value">365.25 days</div>
</div>
<div class="info-item">
<div class="info-label">Day Length</div>
<div class="info-value">24 hours</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">12,756 km</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">5.97 × 10²⁴ kg</div>
</div>
<div class="info-item">
<div class="info-label">Surface Temperature</div>
<div class="info-value">-88°C to 58°C (average 15°C)</div>
</div>
<div class="info-item">
<div class="info-label">Atmosphere</div>
<div class="info-value">78% Nitrogen, 21% Oxygen, 1% Other</div>
</div>
<div class="info-item">
<div class="info-label">Moons</div>
<div class="info-value">1 (The Moon)</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">Earth is the only known planet with life and liquid water on its surface. 71% of its surface is covered by oceans.</div>
</div>
</div>
</div>
<div id="mars-info" class="planet-info">
<h2>♂️ Mars</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Distance from Sun</div>
<div class="info-value">227.9 million km (1.52 AU)</div>
</div>
<div class="info-item">
<div class="info-label">Orbital Period</div>
<div class="info-value">687 Earth days</div>
</div>
<div class="info-item">
<div class="info-label">Day Length</div>
<div class="info-value">24.6 hours</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">6,792 km (0.53 Earth diameters)</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">6.39 × 10²³ kg (0.107 Earth masses)</div>
</div>
<div class="info-item">
<div class="info-label">Surface Temperature</div>
<div class="info-value">-87°C to -5°C</div>
</div>
<div class="info-item">
<div class="info-label">Atmosphere</div>
<div class="info-value">95% Carbon Dioxide, 3% Nitrogen, 2% Argon</div>
</div>
<div class="info-item">
<div class="info-label">Moons</div>
<div class="info-value">2 (Phobos and Deimos)</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">Mars has the largest volcano (Olympus Mons) and canyon (Valles Marineris) in the solar system. Evidence suggests water once flowed on its surface.</div>
</div>
</div>
</div>
<div id="jupiter-info" class="planet-info">
<h2>♃ Jupiter</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Distance from Sun</div>
<div class="info-value">778.5 million km (5.20 AU)</div>
</div>
<div class="info-item">
<div class="info-label">Orbital Period</div>
<div class="info-value">12 Earth years</div>
</div>
<div class="info-item">
<div class="info-label">Day Length</div>
<div class="info-value">9.9 hours</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">142,984 km (11.2 Earth diameters)</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">1.90 × 10²⁷ kg (318 Earth masses)</div>
</div>
<div class="info-item">
<div class="info-label">Composition</div>
<div class="info-value">89% Hydrogen, 10% Helium</div>
</div>
<div class="info-item">
<div class="info-label">Great Red Spot</div>
<div class="info-value">Storm larger than Earth, raging for 400+ years</div>
</div>
<div class="info-item">
<div class="info-label">Moons</div>
<div class="info-value">95 known moons (4 major: Io, Europa, Ganymede, Callisto)</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">Jupiter is a "failed star" - if it were 80 times more massive, it would have ignited nuclear fusion. It acts as a cosmic vacuum cleaner, protecting inner planets from asteroids.</div>
</div>
</div>
</div>
<div id="saturn-info" class="planet-info">
<h2>♄ Saturn</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Distance from Sun</div>
<div class="info-value">1.43 billion km (9.54 AU)</div>
</div>
<div class="info-item">
<div class="info-label">Orbital Period</div>
<div class="info-value">29 Earth years</div>
</div>
<div class="info-item">
<div class="info-label">Day Length</div>
<div class="info-value">10.7 hours</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">120,536 km (9.4 Earth diameters)</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">5.68 × 10²⁶ kg (95 Earth masses)</div>
</div>
<div class="info-item">
<div class="info-label">Density</div>
<div class="info-value">0.69 g/cm³ (less dense than water!)</div>
</div>
<div class="info-item">
<div class="info-label">Ring System</div>
<div class="info-value">Extensive rings made of ice and rock particles</div>
</div>
<div class="info-item">
<div class="info-label">Moons</div>
<div class="info-value">146 known moons (largest: Titan)</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">Saturn's rings are only about 30 feet thick despite being 175,000 miles wide. The planet would float in water if there were an ocean large enough!</div>
</div>
</div>
</div>
<div id="uranus-info" class="planet-info">
<h2>♅ Uranus</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Distance from Sun</div>
<div class="info-value">2.87 billion km (19.2 AU)</div>
</div>
<div class="info-item">
<div class="info-label">Orbital Period</div>
<div class="info-value">84 Earth years</div>
</div>
<div class="info-item">
<div class="info-label">Day Length</div>
<div class="info-value">17.2 hours</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">51,118 km (4.0 Earth diameters)</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">8.68 × 10²⁵ kg (14.5 Earth masses)</div>
</div>
<div class="info-item">
<div class="info-label">Axial Tilt</div>
<div class="info-value">98° (rotates on its side!)</div>
</div>
<div class="info-item">
<div class="info-label">Atmosphere</div>
<div class="info-value">83% Hydrogen, 15% Helium, 2% Methane</div>
</div>
<div class="info-item">
<div class="info-label">Moons</div>
<div class="info-value">28 known moons</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">Uranus rotates on its side, likely due to a massive collision early in its history. It has faint rings and experiences 42-year seasons at each pole.</div>
</div>
</div>
</div>
<div id="neptune-info" class="planet-info">
<h2>♆ Neptune</h2>
<div class="info-grid">
<div class="info-item">
<div class="info-label">Distance from Sun</div>
<div class="info-value">4.50 billion km (30.1 AU)</div>
</div>
<div class="info-item">
<div class="info-label">Orbital Period</div>
<div class="info-value">165 Earth years</div>
</div>
<div class="info-item">
<div class="info-label">Day Length</div>
<div class="info-value">16.1 hours</div>
</div>
<div class="info-item">
<div class="info-label">Diameter</div>
<div class="info-value">49,528 km (3.9 Earth diameters)</div>
</div>
<div class="info-item">
<div class="info-label">Mass</div>
<div class="info-value">1.02 × 10²⁶ kg (17 Earth masses)</div>
</div>
<div class="info-item">
<div class="info-label">Temperature</div>
<div class="info-value">-218°C (coldest planet)</div>
</div>
<div class="info-item">
<div class="info-label">Wind Speeds</div>
<div class="info-value">Up to 2,100 km/h (fastest in solar system)</div>
</div>
<div class="info-item">
<div class="info-label">Moons</div>
<div class="info-value">16 known moons (largest: Triton)</div>
</div>
<div class="info-item">
<div class="info-label">Interesting Fact</div>
<div class="info-value">Neptune was the first planet discovered through mathematical prediction rather than observation. Despite being farther from the Sun, it's windier than Uranus due to internal heat.</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
// Planet data with real astronomical data
// Positions calculated for current date with J2000.0 epoch reference
const planets = [
{
name: 'Mercury',
distance: 60,
size: 4,
color: '#8c7853',
orbitalPeriod: 87.969, // days
meanAnomaly0: 174.796, // degrees at J2000.0
meanMotion: 4.0923 // degrees per day
},
{
name: 'Venus',
distance: 80,
size: 6,
color: '#ffc649',
orbitalPeriod: 224.701, // days
meanAnomaly0: 50.115, // degrees at J2000.0
meanMotion: 1.6021 // degrees per day
},
{
name: 'Earth',
distance: 100,
size: 6,
color: '#6b93d6',
orbitalPeriod: 365.256, // days
meanAnomaly0: 357.528, // degrees at J2000.0
meanMotion: 0.9856 // degrees per day
},
{
name: 'Mars',
distance: 130,
size: 5,
color: '#c1440e',
orbitalPeriod: 686.980, // days
meanAnomaly0: 19.373, // degrees at J2000.0
meanMotion: 0.5240 // degrees per day
},
{
name: 'Jupiter',
distance: 180,
size: 18,
color: '#d8ca9d',
orbitalPeriod: 4332.589, // days
meanAnomaly0: 20.020, // degrees at J2000.0
meanMotion: 0.0831 // degrees per day
},
{
name: 'Saturn',
distance: 220,
size: 16,
color: '#fad5a5',
orbitalPeriod: 10759.22, // days
meanAnomaly0: 317.020, // degrees at J2000.0
meanMotion: 0.0335 // degrees per day
},
{
name: 'Uranus',
distance: 260,
size: 10,
color: '#4fd0e4',
orbitalPeriod: 30688.5, // days
meanAnomaly0: 141.050, // degrees at J2000.0
meanMotion: 0.0117 // degrees per day
},
{
name: 'Neptune',
distance: 300,
size: 10,
color: '#4b70dd',
orbitalPeriod: 60182, // days
meanAnomaly0: 256.228, // degrees at J2000.0
meanMotion: 0.0060 // degrees per day
}
];
let animationId;
let isAnimating = true;
let speed = 1;
// J2000.0 epoch (January 1, 2000, 12:00 TT)
const J2000 = new Date('2000-01-01T12:00:00Z').getTime();
// Calculate current Julian day number
function getCurrentJulianDay() {
const now = new Date().getTime();
return (now - J2000) / (1000 * 60 * 60 * 24); // Days since J2000.0
}
// Calculate real-time planetary positions
function calculatePlanetPosition(planet) {
const daysSinceJ2000 = getCurrentJulianDay();
// Calculate mean anomaly (position in orbit)
const meanAnomaly = (planet.meanAnomaly0 + (planet.meanMotion * daysSinceJ2000)) % 360;
// Convert to radians for calculation
const meanAnomalyRad = meanAnomaly * (Math.PI / 180);
// For simplicity, we'll use the mean anomaly directly as the true anomaly
// (In reality, this would require solving Kepler's equation)
return meanAnomalyRad;
}
// Create stars
function createStars() {
const starsContainer = document.getElementById('stars');
for (let i = 0; i < 200; i++) {
const star = document.createElement('div');
star.className = 'star';
star.style.left = Math.random() * 100 + '%';
star.style.top = Math.random() * 100 + '%';
star.style.width = star.style.height = Math.random() * 2 + 1 + 'px';
star.style.animationDelay = Math.random() * 3 + 's';
starsContainer.appendChild(star);
}
}
// Create solar system
function createSolarSystem() {
const solarSystem = document.getElementById('solarSystem');
planets.forEach((planet, index) => {
// Create orbit
const orbit = document.createElement('div');
orbit.className = 'orbit';
orbit.style.width = orbit.style.height = planet.distance * 2 + 'px';
solarSystem.appendChild(orbit);
// Create planet
const planetContainer = document.createElement('div');
planetContainer.style.position = 'absolute';
planetContainer.style.top = '50%';
planetContainer.style.left = '50%';
planetContainer.style.width = planet.distance * 2 + 'px';
planetContainer.style.height = planet.distance * 2 + 'px';
planetContainer.style.transform = 'translate(-50%, -50%)';
planetContainer.style.transformOrigin = '50% 50%';
planetContainer.id = `${planet.name.toLowerCase()}-container`;
const planetElement = document.createElement('div');
planetElement.className = 'planet';
planetElement.style.width = planet.size + 'px';
planetElement.style.height = planet.size + 'px';
planetElement.style.background = planet.color;
planetElement.style.top = '0';
planetElement.style.left = '50%';
planetElement.style.transform = 'translateX(-50%)';
planetElement.onclick = () => showPlanetInfo(planet.name.toLowerCase());
// Add planet label
const label = document.createElement('div');
label.className = 'planet-label';
label.textContent = planet.name;
planetElement.appendChild(label);
planetContainer.appendChild(planetElement);
solarSystem.appendChild(planetContainer);
});
}
// Animation function with real-time positioning
function animate() {
if (!isAnimating) return;
planets.forEach((planet, index) => {
const container = document.getElementById(`${planet.name.toLowerCase()}-container`);
if (container) {
// Calculate real-time position
const position = calculatePlanetPosition(planet);
const angleDegrees = position * (180 / Math.PI);
container.style.transform = `translate(-50%, -50%) rotate(${angleDegrees}deg)`;
}
});
animationId = requestAnimationFrame(animate);
}
// Control functions
function toggleAnimation() {
isAnimating = !isAnimating;
if (isAnimating) {
animate();
} else {
cancelAnimationFrame(animationId);
}
}
function resetSystem() {
// Reset to current real-time positions
planets.forEach((planet) => {
const container = document.getElementById(`${planet.name.toLowerCase()}-container`);
if (container) {
const position = calculatePlanetPosition(planet);
const angleDegrees = position * (180 / Math.PI);
container.style.transform = `translate(-50%, -50%) rotate(${angleDegrees}deg)`;
}
});
}
function updateSpeed(newSpeed) {
speed = parseFloat(newSpeed);
document.getElementById('speedDisplay').textContent = speed + 'x';
}
// Update current time display
function updateTimeDisplay() {
const now = new Date();
const timeString = now.toLocaleString('en-US', {
year: 'numeric',
month: 'short',
day: 'numeric',
hour: '2-digit',
minute: '2-digit',
second: '2-digit',
timeZoneName: 'short'
});
document.getElementById('currentTime').textContent = timeString;
}
// Planet info display
function showPlanetInfo(planetName) {
// Hide all planet info
const allInfo = document.querySelectorAll('.planet-info');
allInfo.forEach(info => info.classList.remove('active'));
// Remove active class from all tabs
const allTabs = document.querySelectorAll('.planet-tab');
allTabs.forEach(tab => tab.classList.remove('active'));
// Show selected planet info
const selectedInfo = document.getElementById(`${planetName}-info`);
if (selectedInfo) {
selectedInfo.classList.add('active');
}
// Activate selected tab
const selectedTab = Array.from(allTabs).find(tab =>
tab.textContent.toLowerCase().includes(planetName) ||
(planetName === 'sun' && tab.textContent === 'Sun')
);
if (selectedTab) {
selectedTab.classList.add('active');
}
}
// Initialize the solar system
function init() {
createStars();
createSolarSystem();
updateTimeDisplay();
animate();
// Update time display every second
setInterval(updateTimeDisplay, 1000);
}
// Start the simulation when page loads
window.addEventListener('load', init);
</script>
</body>
</html>