You are here: ProJects >> SoftWare >> UmlTool




  • draw UML class diagrams
  • can be used for any object-oriented programming language
  • classes, interfaces, and abstract classes
  • extension, inheritance, association, aggregation, composition
  • reverse-engineering for Java classes
    • single class
    • whole package
    • recursive packages/directories
    As reverse engineering works via reflection, classes need to be in the classpath.
  • supports methods (including parameters and return values) and attributes (instance and static variables)

User manual

For more information on how to add classes to the diagram, and how to use the editor, see here: CelloGraph

Different painters - give your diagram a personal style!

  • ujap.graph.uml.UMLPainter: fully-fashioned drawing of the classes, including pakage name, methos, and fields (and everything can be switched on or off, as you like. Problem is the arcs: sometimes they're not drawn, and often they are not drawn where you'd expect them... but IF they are drawn, they're "Manhattan style" (have only horizontal or vertical lines with rectangular corners), as is proper for UML.
  • ujap.graph.uml.OldUMLPainter an older version of the UMLPainter, same features for classes, but doesnt't work any better for the arcs.
  • ujap.graph.uml.StraightPainter draws straight, direct lines for the arcs, not the ones with the corners
  • ujap.graph.uml.SimpleUMLPainter Manhattan-style arcs, works, but arcs are ot placed so nicely
  • ujap.graph.uml.ComplexUMLPainter Manhattan-stlye arcs, and I'm working on it to optimize their placement.

I suggest you use the SimpleUMLPainter which is the default anyway...


Download the program here: DownLoad


A changelog is available that describes the current status and changes from earlier versions.