### Installing and Using the Hyperbolic scripts in Geometer's Sketchpad version 3

Looking for dynamic geometry tools to perform constructions in hyperbolic geometry was a project I began considering in summer 2000.  Already at that time, many others had developed such tools for some models of hyperbolic geometry.  In fact, it was Mike Alexander and Bill Finzer's ten tools for constructions in the  Poincaré disk which provided the inspiration for creating tools for the Klein disk and for completing a set of tools for the Poincaré half-plane.  Please see the links for a proper acknowledgement of those whom I know worked on projects like this one before me.

I developed the tools described here using Geometer's Sketchpad version 3.   Key Curriculum Press released version 4 of Sketchpad in 2001.  This newer version of Sketchpad accesses and utilizes script tools in a substantially different way from version 3.  Therefore, I wanted to keep the version 3 tools available for those who do not have version 4 available.  On this page, you can find

• Hyperbolic tools for the Beltrami-Klein Disk.
• Links to hyperbolic tools for the Poincaré disk.
• Hyperbolic tools and links to other hyperbolic tools for the Poincaré half-plane.
• Instructions on installing and using the tools.
• Note that all the tools and instructions below were written for users of Geometer's Sketchpad version 3.  Sketchpad version  4.0 users should click ----> here <----

### All the Klein model scripts in one ZIPPED package (Recommended)

 klnstrt.gsp Klein model template Geometer's Sketchpad file. kline.gss Script to construct a Klein line. ksegmnt.gss Script to construct a Klein segment. klength.gss Script to measure the Klein length of a line segment. kangmea.gss Script to measure an angle in the Klein model. kangbis.gss Script to bisect an angle in the Klein model. kprpon.gss Script to construct the Klein perpendicular through a given point on a given Klein line. kprpoff.gss Script to construct the Klein perpendicular through a given point not on a given Klein line. kprpbis.gss Script to construct the perpendicular bisector of a Klein segment. kcntrpt.gss Script to construct a Klein circle given its center and a point on the circle. kcntrrd.gss Script to construct a Klein circle given its center and two points which determine the radius.
In creating scripts for the ten "standard" hyperbolic constructions listed at the top of the page, it proved useful to create other tools which are particularly useful in the Klein model. One particular difficulty with the Beltrami-Klein model is that unlike the Poincaré models, Klein circles are not Euclidean circles - they are ellipses. As such, in Geometer's Sketchpad, they must be drawn as loci. This creates a practical problem: Sketchpad does not know how to intersect loci. Below, then are some additional tools which allow one to find the intersection of Klein circles with other Klein circles, Klein lines, and Klein segments. All these tools are available in the complete file klein.zip.
 kpole.gss Script to construct the pole of a Klein line. kmidpt.gss Script to construct the midpoint of a Klein segment. kreflpt.gss Script to construct the reflection of a given point about a Klein line. kintcirc.gss Script to find the intersection point(s) of two Klein circles. kintlncr.gss Script to find the intersection point(s) a Klein circle with a Klein line. kintsgcr.gss Script to find the intersection point(s) a Klein circle with a Klein line segment. kd_to_pd.gss Script to map a point in the Klein disk isomorphically to its corresponding point in the Poincaré disk.

### Poincaré Disk Model Tools

• Mike Alexander (with modifications by Bill Finzer) has created scripts for the ten "standard" constructions for the Poincaré disk model. They provided inspiration for my scripts in the Klein disk and Poincaré half-plane model and can be found here.
• For the Beltrami-Klein model, I wrote a tool (kd_to_pd.gss) which maps points in the Klein disk isomorphically to their corresponding points in the Poincaré disk. The natural isomorphism is described in Greenberg's text Euclidean and Non-Euclidean Geometries , 3rd edition (Freeman Publishers), p. 236. I have written a corresponding tool which inverts the process (pd_to_kd.gss) which maps points in the Poincaré disk isomorpically to their corresponding points in the Klein disk.

### Poincaré Half-Plane Model Tools

• Dan Bennett has created scripts for the first four constructions listed at the top of this page (constructing lines and segments, and measuring length and angles) in the Poincaré half-plane model. His tools can be found here.
• Tim Peil has also written several scripts for the Poincaré half-plane. His tools can be found here.
• The tools I have written for the Poincaré half-plane complete the remaining constructions for the "standard" ten constructions given at the top of this page. Though some of my tools appear to reproduce the work of others, the constructions do not rely on coordinate (analytic) geometry. See the descriptive file scripts.pdf for more information:

### All my Poincaré half-plane model scripts in one ZIPPED package (Recommended)

 poinhalf.gsp Poincaré half-plane model template Geometer's Sketchpad file. phlength.gss Script to measure the Poincaré half-plane length of a line segment. phangbis.gss Script to bisect an angle in the Poincaré half-plane model. phprpon.gss Script to construct the perpendicular through a given point on a given line in the Poincaré half-plane model. phprpoff.gss Script to construct the perpendicular through a given point not on a given line in the Poincaré half-plane model. phprpbis.gss Script to construct the perpendicular bisector of a Poincaré half-plane segment. phcntrpt.gss Script to construct a Poincaré half-plane circle given its center and a point on the circle. phcntrrd.gss Script to construct a Poincaré half-plane circle given its center and two points which determine the radius.
In creating scripts for the ten "standard" hyperbolic constructions listed at the top of the page, it proved useful to create other tools which are particularly useful in the Poincaré half-plane model. Below are additional tools which allow one to find midpoints and construct reflections in the half-plane. These tools are available in the complete file poinhalf.zip.
 phmidpt.gss Script to construct the midpoint of a line segment in the Poincaré half-plane model. phreflpt.gss Script to construct the reflection of a given point about a line in the Poincaré half-plane model.

### Installing the Tools

What follows are the instructions for installing and using the hyperbolic tools in Geometer's Sketchpad version 3.  Users of version 4 should click here for those instructions.  If you find the instructions that follow are inadequate, you might want to look at the article "The Hyperbolic Toolbox" that I wrote for the Journal of Online Mathematics and its Applications.  More complete instructions are provided there.