In SL we build using “primitives”; they are basic predefined geometric solids that you can manipulate (cutting or twisting them, for example).
As Henshin, originary, was thought for being used in architecture projects, and, most of them can be made using a certain number of blocks (for example, defining a wall block and copying it for all the similar walls in the building) that's the way how Henshin works.
That means that, though our design has more than 1000 primitives, it will be probably that we have used just a fixed number of primitive types (maybe 3 cut boxes, 2 spheres...). Henshin will calculate, from the starting dimensions of that types, the final size of the object.
This way of working also allows us to save memory in the generator (for beginners in the world of programming, memory is a commodity as precious and scarce as primitives are for builders).
The concept of layers has been taken from Autocad.
It would be a tiresome issue having a list with hundreds of primitives and having to apply the same texture in all of them. Also, it is much easier grouping them somehow and, later in SL, managing them with the utilities included in the generator (show/hide and phantom).
Also, usually, while making an architecture project, we group some parts of the building (door, first level walls, windows...). These items can be similar in shape (SL prims), material (SL Texture), location (SL position)...
So, afther that long introduction, there are just two aspects to consider:
- Henshin uses primitive types (Autocad blocks) with properties that define their shape
- Layers contain primitives and they can define their look by means of textures.
Observations: in a nearby future, physics and lighting properties will be included in Henshin.

