, but this code // executes before the first paint, when

ÃÛÌÒapp

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Wildrik Botjes Planetarium Physics and Astronomy | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Wildrik Botjes Planetarium

The Botjes planetarium is a fully operational model of the solar system completed in 1868. It is on display in North Hall.

Directions

Enter North Hall through the southeast door (see the ÃÛÌÒapp map for details). The planetarium is opposite the door.

Ìý

Orbits of the Planets

See how the planetariuim can predict the motion of the planets.

Ìý

Motions of the Sun and Moon

While the planets model shows the earth orbiting the sun, this model shows the perspective from Earth.

Ìý

The Celestial Sphere

The celestial sphere is a model for the two-dimensional direction to the stars.

Ìý

Timekeeping

Timekeeping

The planetarium has kept the time of day and day of the week for 130 years

Ìý

Mechanism and Restoration

Mechanism and Restoration

Discover what makes the Botjes planetarium tick.

Ìý

History of the Botjes Planetarium

History of the Botjes Planetarium

The Botjes Planetarium has traveled across continents and been passed down the generations.

Ìý

Another Planetarium

Another Planetarium

Wildrik Botjes constructed another planetarium with some modifications to his earlier design.

Ìý

About Us

About Us

See how planetariums and models contribute to the scientific mission.