M8 of Math 303, Labsheet on KSEG by Wendy Hubbard and Tamara Robinson

To Download Ilya Baran's Euclidean geometry sketcher ...

Enter http://www.mit.edu/~ibaran/kseg.zip into your browser's address bar. When the dialog box appears, click on "save file", and create a folder called kseg to save it in. It may take a while to download on slower connections. Then use an unzipping utility such as Winzip to decompress the files into the kseg folder you just created, then click on kseg.exe to start the program.

Getting Started/Brief Walkthrough

After completing the following, you are familiar with the most basic usage of KSEG and can start experimenting on your own. For advanced features, read this entire document. Do the problems below.

  1. Start KSEG. You should see a blank white canvas taking up most of the sketch window (surrounded by toolbars, scroll bars, menu, and status bar).
  2. Right click in the middle of the white canvas to construct point A.
  3. Hold SHIFT as you right click again in a different spot on the canvas to construct point B. Since you are holding SHIFT, point A is not deselected, so after this step you should have two selected points.
  4. Choose "New/Circle By Center And Point" from the menu. This should construct a circle centered at point A and passing through point B. The circle will appear selected and points A and B will be deselected.
  5. Select point B by left clicking on it (this also deselects the circle). Then hold SHIFT and left click on point A to select it.
  6. Choose "New/Circle By Center And Point" from the menu again. Now this should construct a circle centered at B (because you selected it first) passing through A.
  7. Hold SHIFT and select the first circle you constructed by clicking on it. You should now have both circles selected.
  8. Choose "New/Intersection Points" from the menu. Two points at the intersections of the two circles should appear, both of them selected.
  9. Choose "New/Line" from the menu. This will construct the perpendicular bisector of points A and B.
  10. Now drag point A with the left mouse button. This should give you an idea of what KSEG does.

Of course, this is not the most efficient way to construct a perpendicular bisector in KSEG (although it's the compass-and-straightedge way), but the point is to show how construction and selection work.


In order to construct new objects, you need to select existing ones on which the construction is based. For example, a midpoint needs a selected segment. The segment, in turn, needed its endpoints. Here are your options for doing this:

When you click on a spot where there is more than one object, things are more complicated (for KSEG, that is--for you it should seem very intuitive). Objects have a selection "precedence": points first, curves and text and loci second, and filled objects last. If objects with higher precedence are under the mouse then objects with lower precedence are ignored. Within a single precedence, the algorithm is such that clicking multiple times cycles through some selection possibilities. The status bar is always a good place to look to find out what will happen if you click.


When new objects are constructed, they are immediately selected and, with the exception of points constructed by right-clicking with shift held down, all other objects are deselected.



There is only one way two make a line segment--select two or more points and choose "New/Segment(s)". If two points are selected, one segment will be constructed. If n > 2 points are selected then n segments will be constructed.





Practice using KSEG by solving problems like these. Use the features of KSEG to explore the construction.

Problem 1. Make a simple perspective construction, such as horizon/zenith.

Problem 2. Start with an arbitrary convex quadrilateral and determine from where it looks like a square in 2-point perspective.

Problem 3. Given three vanishing points for 3 orthogonal directions (perspective coordinate system) determine the location of the eyepoint and focal distance.

Problem 4. Construct the Euler line of a given triangle. Court's construction is probably the easiest to implement.