http://cs.unm.edu/~joel/NonEuclid/
NonEuclid is Java Software for Interactively Creating Ruler and Compass Constructions in both the Poincaré Disk and the Upper Half-Plane Models of Hyperbolic Geometry.
Hyperbolic Geometry is a geometry of Einstein's General Theory of Relativity and Curved Hyperspace.
NonEuclid creates an interactive environment for learning about and exploring non-Euclidean geometry on the high school or undergraduate level. The software package includes explanations, activities, and strategies for incorporating non-Euclidean geometry into high school curriculum.