Hans was so kind to help me with a setup for some generated output. I am trying to understand every line of his example so I can expand on his exmaple to make it fully functional. In his example there is:

context('draw textext("\\framed[frame=off,offset=5bp,align={middle,lohi,verytolerant,broad},width=%sbp]{%s}") shifted center AllNodes[%i] ;',w,name,i)

as command to draw a node and the node type is defined like this:

context("save ApplicationComponent ; path ApplicationComponent ; ApplicationComponent := unitsquare ; "

For a quick example this works, but ‘unitsquare’ is a simple thing. How do I create a more complex shape that is reusable? What if I would like the path to be like this:


With this as the complex behaviour of the shape
  • The font size scaled so the label fits inside the image (choice yes/no)
  • The small boxes sized according to the font size or sized according to the box size (choice text/box)
  • The bounding box following the actual complex outline
  • The upper of the two small boxes in line with the upper text line (in case the size is coupled to the text size)
  • The colour of the background a default colour or given as parameter

This is one of the more complex shapes, if I can do this one it might give me enough information to define all the other ones. Sorry to bother all of you but the learning curve is steep and I always have not enough time.

Gerben Wierda
Chess and the Art of Enterprise Architecture
Mastering ArchiMate
Architecture for Real Enterprises at InfoWorld
On Slippery Ice at EAPJ