A Viviani curve (or Viviani window) is generated by the intersection of a sphere and a cylinder that passes through the center of and is also tangent to . This Demonstration shows a dome made out of a variable number of Viviani curves as the cylinder is rotated.

The dome is made out of a variable number of Viviani curves generated by the intersection of the hemisphere and the moving cylinder. Depending on the number of curves you want to show on the hemisphere, each curve will be shown every radians.

The green curve is the intersection of the hemisphere and the cylinder at its current location.

A real-life application of this can be seen at the Osaka Maritime Museum [1].