DrGeo

From OLPC
Jump to navigation Jump to search
Dr. Geo II wins the ESUG Innovation Technology Awards 2008
.xo BundleDrGeo.xo
Trac print.png Tickets all - active
OlpcProject.png Hilaire Fernandes, et al. and José Rodríguez

see more templates or propose new

Dr. Geo II is a complete rewrite of Dr. Geo 1.1 GTK for the Squeak/Smalltalk environment. Dr. Geo is a project of the OFSET, Organisation for Free Software in Education and Teaching. See DrGeo 1.1 GTK page to know more about it..

Currently, loading Dr. Geo II is slow because it is shipped in source code form and compiled at load time by the OLPC Squeak/Smalltalk. It is a limitation of the Squeak/Etoys environment provided with the XO machine, not from DrGeo II. In future we hope to provide pre-compiled version for shorter load time. The DrGeo II bundles for normal workstation does not suffer from this problem.

Pythagorean theorem, Chinese did it as well with the Gougu Puzzle.
Funny recursive & interactive figure are programmed thanks to the DrGeo Euclidean API.
And yes, various media can be mixed... Canvas in book, and images in canvas, etc.
A little gallery of examples, it looks confusing, right? Geometric canvases are overlapped transparently.
Dr. Geo II running inside of EToys on the XO.


What's new?


You can also review the screencasts below to know more about these new features.

What is Dr. Geo? What is interactive geometry?

  • From the Dr. Geo 1.1 website: Dr. Geo allows one to create geometric figure plus the interactive manipulation of such figure in respect with their geometric constraints. It is usable in teaching situation with students from primary or secondary level.
  • Dr. Geo II integrates advanced features as an integrated Smalltalk programming language to define scripts within a figure. The language is also used to define functionally interactive figure.
  • Dr. Geo II is an interactive geometry framework, Morphic-based and Smalltalk programmed, which can be embedded and mixed with any existing Morph user interface element of the Squeak OLPC environment. It is a rewrite from scratch of Dr. Geo 1.1. However Dr. Geo II is capable to read and write to the Dr. Geo 1.1 XML file format. The examples included in the XO bundle are xml file.
  • As the confusion between interactive geometry and vector drawing is very common, Hilaire has produced screencasts demonstrating the use of the framework and its integration in the Morph UI.

How to use DrGeoII? (video screencast)

Hilaire has prepared more than 50 video screencasts about DrGeoII. These videos are encoded in the DVD PAL resolution on the free Ogg/Theora format, so it is perfectly viewable with the XO laptops. The screencasts demonstrate:

See the OFSET web site for the overall information page http://community.ofset.org/index.php/Screencast_DrGeo

Need some help?

To install DrGeoII, you just need to install from Browse the XO file from [1]. The bundle comes with a few examples ready to load (one-click-load)

How to install if it fails from Browse?

In the transition to the latest XO software release, some people have had trouble downloading and installing the Dr. Geo II bundle. If installation through Browse activity fails, try the following steps:

From the Terminal activity, remove any previous Dr. Geo II bundle:

rm -rf /home/olpc/Activities/DrGeoII.activity

Restart Sugar by pressing simultaneously Ctrl+Alt+Erase so Sugar takes notice of the removal. Then from the terminal activity do:

wget http://download.gna.org/istoa/drgeo/DrGeoII.xo
sugar-install-bundle DrGeoII.xo

It will install the bundle in /home/olpc/Activities, if /home/olpc/Activities does not exist and Sugar complains about that, you can create it first:

mkdir /home/olpc/Activities

Eventually, if a previous version of Dr. Geo II is installed, you have to remove it:

rm -rf ~/Activities/DrGeoII.activity

Then press the keys Ctrl+Alt+Del to restart the GUI, you can then install the new bundle.

I don't have an XO, can I use Dr. Geo II?

Yes, and you are encouraged to do so.

How to install from the sources?

You want to install DrGeo in your own image, it works with SqueakLand, Squeak 3.9, 3.10, Etoys, Pharo images.

  1. Go to http://www.squeaksource.com/DrGeoII.html and follow the "latest" link to download the latest version (DrGeoII-HilaireFernandes.133.mcz as of this writing)
  2. In your Squeak image, click in the empty space, choose "open", then "file list", then navigate the directory tree on the top left panel, then select DrGeoII-*.mcz in the top right panel (not in the bottom panel). Finally click on the "load" button.
  3. From the "tools" tab, drag a "workspace" into the empty space. Or click in the empty space, choose "open", then "workspace".
  4. In the workspace, type: DrGeo new. (Make sure not to omit the period), select the entire piece of code, and press alt-d. Then a DrGeo II window appears. For a smaller DrGeo canvas without flaps, you can executre the code: DrGeo sample openInWorld
  5. Click in the empty space, and select "save and quit". This saves a snapshot of your squeak environment. Next time you enter squeak, all windows will appear at their present locations.

Thanks to Chao-Kuei Hung for his indications, http://people.ofset.org/~ckhung/b/dg2/prepare.en.php

Take a look to the screencasts, there are indications how to start DrGeo, and of course how to use it!

How to report bugs?

Dr. Geo II is a long term project developed with little resources, I can not allocate full time slot to its development and improvement. Bugs may only be fixed months after there were reported.

Therefore it is very important to report bugs properly and at the right place. The best place to report a bug is the Dr. Geo II bugs tracker. If you fell you can't report on the bugs tracker you can report it by email to the author. He will open a ticket on the bugs tracker for you.

How to contact the authors?

We are hooked to the mailing lists below. Any mail to one of this mailing list about DrGeoII will reach us:

Localisation

DrGeoII is internationalized (it requires joyride>=1620 for localisation to work). To provide more translation, download the DrGeoII.pot file at the DrGeoII forge, copy it as xx.po (with xx your locale), translate and send it to hilaire [AT] ofset.org.

What is not finished Dr. Geo II?

The DrGeo activity port need to be finished and improved in different areas.

Parts to be written

DrGeoII is now now more or less feature complete. It is about improving the quality of the existing features and tracking bugs.

Parts to improve

  • improve the load time, the load time is now unacceptable for the user and make DrGeo unadapted for the OLPC.
  • define a journal type entry to save/load.
  • improve the user interface, particularly the access to the construction tools.
  • improve the locus sampling, it is by now suboptimal.

Future plan

In the early day of DrGeoII development, I implemented shape recognition. It was very basic and the user could draw circle by handwriting, move/zoom in the whole geometric sketch with specific gestures. I would like to go further.

Other suggestions for improvements, see the DrGeo tracker.

Sponsorship

  • Dr. Geo II was partly sponsored by TOP, the Taiwan Open Source Project, with funding from the Ministry of Economy, Taiwan. TOP is a jointly managed project by Gjun Information Co.,Ltd., STEPS, and Software Liberty Association, Taiwan (SLAT).
  • Dr. Geo II macro-construction and Smalltalk scripting was sponsored by ESUG to promote the Smalltalk language.
  • Your organisation/company sponsor...

If you are interested to sponsor for support, maintenance or additional and custom developments, contact hilaire [AT] ofset.org.

DrGeoII happy users

Fell free to add your reference there

Activity Summary

Icon: Sugar icon::Activity-drgeo.svg
Genre: Activity genre::Math and Science
Activity group: ,|x|Activity group::x}}
Short description: Short description::Dr. Geo allows one to create geometric figure plus the interactive manipulation of such figure in respect with their geometric constraints. It is usable in teaching situation with students from primary or secondary level.
Description:
Maintainers: ,|x|Contact person::x}}
Repository URL:
Available languages: ,|x|Available languages::x}}
Available languages (codes): ,|x|Language code::x}}
Pootle URL:
Related projects: Related projects,|x|Related projects::x}}
Contributors: ,|x|Team member::x}}
URL from which to download the latest .xo bundle Activity bundle::http://download.gna.org/istoa/drgeo/DrGeoII.xo
Last tested version number:
The releases with which this version of the activity has been tested. ,|x|Software release::x}}
Development status:
Ready for testing (development has progressed to the point where testers should try it out): ,|x|Ready for testing::x}}
smoke tested :
test plan available :
test plan executed :
developer response to testing :