Implementation notes for 'Molarity' sim This sim uses axon.Property and axon.PropertySet throughout the model and view for storage of properties and notification of changes. Since spatial units (distance, size, location) have no relevance to the model, there is no model-view transform. The model uses the view coordinate frame, where positive x is to the right, and positive y is down. I find that I frequently need to change the rendering order and layout of nodes. To make this easier, node constructors typically have this structure: function MyNode(...) { // instantiate nodes // set rendering order (addChild) // do layout // register observers }