Menu

Tree [216a4e] master origin /
 History

HTTPS access


File Date Author Commit
 .cvsignore 2004-07-22 Markus Demleitner Markus Demleitner [0c7f92] *** empty log message ***
 AffineTrafo.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 AlertBox.java 2006-06-13 Markus Demleitner Markus Demleitner [a7a308] First checkin into new sf cvs. Highlight is ne...
 AppletDataDeliverer.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 AppletImageGetter.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 AutoAxisFinder.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 COPYING 2001-12-06 Markus Demleitner Markus Demleitner [28e141] Initial revision
 COPYING.ncsa 2001-12-06 Markus Demleitner Markus Demleitner [28e141] Initial revision
 CantComputeException.java 2006-06-13 Markus Demleitner Markus Demleitner [a7a308] First checkin into new sf cvs. Highlight is ne...
 Changelog 2009-05-13 Markus Demleitner Markus Demleitner [ca6515] Added an option to suppress sorting by abscissa...
 Comparator.java 2008-02-26 Markus Demleitner Markus Demleitner [ad9814] Removed a few casts and made other cosmetic cha...
 DExtractor.java 2010-06-07 Markus Demleitner Markus Demleitner [f01694] Fixed freeze in recognizer setup and cleaned up...
 DataDeliverer.java 2001-12-06 Markus Demleitner Markus Demleitner [28e141] Initial revision
 Datapoint.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 Debuxter.jar 2008-02-26 aaccomazzi aaccomazzi [ac83da] Added Debuxter.jar to distribution, updated HOW...
 Debuxter.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 Debuxter.manifest 2004-07-19 Markus Demleitner Markus Demleitner [6cf664] Initial revision
 Dexter.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 Dexterhelp.html 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 DoublePoint.java 2006-06-13 Markus Demleitner Markus Demleitner [a7a308] First checkin into new sf cvs. Highlight is ne...
 Fmt.java 2001-12-06 Markus Demleitner Markus Demleitner [28e141] Initial revision
 Gaucho.java 2010-06-07 Markus Demleitner Markus Demleitner [f5429b] Gaucho builds again (was missing skipSelection ...
 Gaucho.manifest 2004-07-19 Markus Demleitner Markus Demleitner [6cf664] Initial revision
 Gauge.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 HOWTO.standalone 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 ImageGetter.java 2001-12-06 Markus Demleitner Markus Demleitner [28e141] Initial revision
 ImageWithPoints.java 2010-06-07 Markus Demleitner Markus Demleitner [f01694] Fixed freeze in recognizer setup and cleaned up...
 LineTracer.java 2010-06-07 Markus Demleitner Markus Demleitner [f01694] Fixed freeze in recognizer setup and cleaned up...
 MagGlass.java 2008-02-26 Markus Demleitner Markus Demleitner [ad9814] Removed a few casts and made other cosmetic cha...
 MainServices.java 2001-12-06 Markus Demleitner Markus Demleitner [28e141] Initial revision
 Makefile 2010-06-07 Markus Demleitner Markus Demleitner [f5429b] Gaucho builds again (was missing skipSelection ...
 MissingData.java 2006-06-13 Markus Demleitner Markus Demleitner [a7a308] First checkin into new sf cvs. Highlight is ne...
 PlainDataDeliverer.java 2001-12-06 Markus Demleitner Markus Demleitner [28e141] Initial revision
 PlainImageGetter.java 2010-06-07 Markus Demleitner Markus Demleitner [f01694] Fixed freeze in recognizer setup and cleaned up...
 PointFinder.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 QuickSort.java 2008-02-26 Markus Demleitner Markus Demleitner [ad9814] Removed a few casts and made other cosmetic cha...
 README 2006-06-13 Markus Demleitner Markus Demleitner [a7a308] First checkin into new sf cvs. Highlight is ne...
 Recogniser.java 2010-06-08 Markus Demleitner Markus Demleitner [216a4e] Removed spurious debug output.
 RecogniserSettings.java 2006-06-13 Markus Demleitner Markus Demleitner [a7a308] First checkin into new sf cvs. Highlight is ne...
 ScriptImageGetter.java 2006-06-20 Markus Demleitner Markus Demleitner [29f28a] Plenty of small fixes before pre-release 0.5
 ScrollImScrollBar.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 Slider.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 SliderListener.java 2008-04-17 Markus Demleitner Markus Demleitner [8f2b95] Changed AppletDataDeliverer to always submit to...
 Sortable.java 2008-02-26 Markus Demleitner Markus Demleitner [ad9814] Removed a few casts and made other cosmetic cha...
 dexter_getImage 2007-01-01 Markus Demleitner Markus Demleitner [3e5266] Move to java 1.5 collections, some code cleanup...
 example.gif 2004-07-19 Markus Demleitner Markus Demleitner [6cf664] Initial revision
 example2.gif 2001-12-06 Markus Demleitner Markus Demleitner [28e141] Initial revision
 runGaucho 2007-01-01 Markus Demleitner Markus Demleitner [3e5266] Move to java 1.5 collections, some code cleanup...
 sample.ps 2004-07-19 Markus Demleitner Markus Demleitner [6cf664] Initial revision

Read Me

Dexter
======

Dexter is a little java applet that is used by the ADS 
(http://adswww.harvard.edu) to let users extract data from figures
on scanned images.  As such, it is rather tightly bound to the
ADS through the AppletImageGetter and AppletDataDeliverer classes.

However, by implementing different classes implementing the ImageGetter 
and DataDeliverer interfaces, standalone versions can be provided.
Two of those are in the current distribution:

 * PlainImageGetter and PlainDataDeliverer
 * ScriptImageGetter and PlainDataDeliverer

The first can be used to build Debuxter, which can process whatever
file formats your version of AWT understands, the second is used by
gaucho; it reads its input from a shell script and thus can be
coerced into reading just about anything.  See HOWTO.standalone.


Usage
=====

Read Dexterhelp.html


Building
========

Thanks to the quick depreciation policy of the people in charge of
java, nothing less than jdk 1.5 will do to build this beast; using
more will probably lead to a plethora of warnings.  I recommend trying
the jdks from sun, though I welcome reports how Dexter fares with
other java compilers.


Current Status
==============

I am not actively developing Dexter, and ADS currently is quite happy
with what it has, so there is little initiative to pick this up.

I am maintaining the code, though, so you're welcome to report bugs or
better, contribute patches.

Otherwise, this code is a bit of a mess.  It's the only major thing
I've been doing in java, and most features were retrofitted in a
design that was not too well thought-out from the beginning.  Also,
I've decided to change the indentation style at some point, so 
this is also somewhat inconsistent right now (a good java indenter,
anyone?), and I've started to pythonize the code, which means that
as time goes by I'd like to see all implicit "this"es being explicit.
I just happen to think it's a good idea to explicitely mark what's
local and what's instance variable.  

Some major refactoring would be in place, and I've been tackling
tiny parts of that as I fixed a couple of bugs.

The recognizers are bad hacks.  I'm not entirely positive that
changing them to something from the image processing books would
improve much of what they're doing, but at least the large amount of
duplicated code for vertical and horizontal operation should go away.

Plus, there are some horrible race conditions in the code, mostly
due to ImageObservers and things like scrollbars depending on them.
You probably don't want to look into this, except as a project
for a parallel programming class.


License
=======

See the file COPYING.  The file Fmt.java is covered by its own License.


Author
======

If you have questions, comments, code improvments or bug fixes, please
do not hesitate to contact me: msdemlei@cl.uni-heidelberg.de