Home Wiki > KSeg
Sign up | Login

KSeg

tagline: From openSUSE

KSEG is a tool designed to let you easily visualize dynamic properties of compass and straightedge construction and to make geometric exploration as fast and easy as possible. KSEG was inspired by the Geometer's Sketchpad, but it goes beyond the functionality that Sketchpad provides. KSEG can be used in the classroom, for personal exploration of geometry, or for making high-quality figures for LaTeX.
kseg

Screenshot2t.png

Kiepert's Hyperbola in KSeg

Download for openSUSE:


Developer: Ilya Baran
License: GNU GPLv2
Web: http://www.mit.edu/~ibaran/kseg.html


Introduction

KSEG is a Free (GPL) interactive geometry program for exploring Euclidean geometry. You create a construction, such as a triangle with a circumcenter, and then, as you drag verteces of the triangle, you can see the circumcenter moving in real time. Of course, you can do a lot more than that--see the feature list below.

KSEG can be used in the classroom, for personal exploration of geometry, or for making high-quality figures for LaTeX. It is very fast, stable, and the UI has been designed for efficiency and consistency. I can usually make a construction in KSEG in less than half the time it takes me to do it with similar programs. Despite the name, it is Qt based and does not require KDE to run.

KSEG was inspired by the Geometer's Sketchpad, but it goes beyond the functionality that Sketchpad provides.

Current Features (features in italics are those that make KSEG special) :

  • Fast core which can support large constructions
  • Free/GPL-runs on Linux (and probably most other systems which support Qt)
  • Supports multiple languages
  • Fully Documented
  • Construction of points, segments, rays, lines, circles, and arcs
  • Make measurements
  • Transformations (rotation, translation, scaling, reflection)
  • Construction of adaptively sampled loci for better quality and speed
  • Reverse dragging
  • Infinite undo/redo
  • Ability to easily redefine points to "edit" drawings
  • Easy to use editable scripting/macro with support for recursion
  • Pretty formulas for calculations-with my libkformula
  • Pretty colors, fonts, etc.
  • View panning/zooming and multiple simultaneous views
  • Export view to image file, including antialiased option
  • Printing
  • Selection Groups--group a bunch of objects, then select them later with two clicks

Language selection

The current kseg package comes with translations for multiple languages, but during the first start, kseg comes up with english locale. To switch to another language, select File -> Choose Language and select your preferred language file like kseg_de.qm (note: all files with ending "*.qm" are language files). Afterwards you have to restart kseg.

If you want to add your own translation, follow the procedures described in /usr/share/doc/packages/kseg/README.translators. Please send your translated language file to Ilya Baran so he can include it in the next version of kseg.

KSeg configuration

KSeg uses the file ~/.kseg in an users homedirectory to store some user specific settings like the language or the "QuickPlayDirectory".

Playing with constructions

The "QuickPlayDirectory" is the directory where your constructions are stored. You can find some example construction files in the directory /usr/share/kseg/examples/. Per default, this directory is choosen as "QuickPlayDirectory" - but as a normal user can't save any file in this directory, you should change it in your settings.

Choosing a sample construction

If you want to open some of the example constructions, first use Play -> Quick Play -> Change Directory. This should open a file browser with the directory /usr/share/kseg/examples/. As this directory is what you want, just choose OK here.

Now click on File -> Open (or Open in current window). This opens the file browser again and you can choose one of the examples.

Remember: a normal user doesn't have write access to the examples directory. So you should create a new folder in your home directory to save your kseg files.