Representations - one object, several geometries

How many geometries does a door have? The question sounds like it has an obvious answer, and in an IFC file it does not. A door may have none, or one, or half a dozen, and a model full of doors may have a different number for each.

Each of those geometries is a representation, and the plural is the point of this page.

A representation is addressed by what it is for

Representations are not a list you index into. Each one is filed under what it is for, using three things: a context, an identifier, and a target view.

A new Bonsai project sets up a dozen or so of these before you have drawn anything. The 3D shape of an object lives in Model / Body / MODEL_VIEW. Its centreline - the line a wall is actually built about - lives in Model / Axis. Its bounding box lives in Model / Box. And its two-dimensional shape, the one that belongs on a plan, lives somewhere else again: Plan / Body / PLAN_VIEW.

There are more of them than you will ever think about, for reflected ceiling plans, sections, elevations, clearance zones, centres of gravity, survey points. You do not need to learn the list. You need to know that the list exists, because it explains what happens next.

The plan symbol is stored, not projected

This is the fact that changes how you think about drawings.

When Bonsai builds a parametric window, it makes the 3D body you can see - and then it goes and fetches the plan context and builds a second representation, the window as it should appear looked down upon, and writes that into the file too. Your model now contains a picture of that window in plan. Not a rule for drawing one. The thing itself.

If you have come from software where the plan is a projection - where the program looks down at the 3D model through a cutting plane and works out what you should see - this is a different arrangement, and the difference has consequences in both directions.

In your favour: the symbol travels. Anybody who opens your file gets the plan geometry you intended, drawn the way your objects are meant to be drawn, without needing your software or your conventions or a settings file. A door swing is not a thing their viewer has to guess how to draw. It is in the file with everything else.

Against: it is a second thing that exists, and things that exist can disagree with each other. A plan representation is not automatically re-derived because the 3D changed. That is the question What is parametric and what is not exists to ask: when you change something substantially, what else was derived from it?

Having no geometry at all is normal

The other end of the plural. An object with no representation is not broken and not incomplete.

Much of what is in a model has nothing to draw in the first place - a task, a cost item, an organisation, a system. But even physical things are allowed to have none: a space is often just a volume with no body, and an element can be placed and classified and scheduled long before anybody has decided what it looks like. That is a legitimate state for a model to be in, and it is a useful one when the information arrives before the shape does.

It follows that “I opened it and could not see anything” is not a diagnosis. See The model is a graph of standard objects.

Not all geometry knows the same amount about itself

Representations also differ in kind, and the kinds are not equivalent.

A swept solid is a profile and an instruction: this shape, extruded this far. It knows it is an extrusion, so the profile and the depth can be edited as what they are. Most walls, columns and beams in a competently made model are swept solids.

A tessellation is a bag of triangles. It describes exactly the same shape and knows nothing whatever about how that shape came to be. It is the right answer for something genuinely complicated, and the wrong answer for a rectangular column.

Bonsai will convert between them, and the documentation attaches a warning that is worth repeating: converting may lose parametric information. The direction matters. Going from a swept solid to a tessellation turns a description into a result - the shape survives, the account of how it was arrived at does not.

You can ask for the description back, and this is where it gets interesting: Bonsai will read the mesh, look for the face that could be a profile and the edge along which it appears to have been pushed, and rebuild a swept solid out of what it finds. That is a heuristic rather than a reversal. It works a good deal of the time, on shapes that really were extrusions once. It cannot recover a description of something that never had a simple one, and it is guessing at your intent rather than remembering it. It is the same trade as everywhere in this guide - something that knows what it is, against something that merely looks right.

For the same reason, a swept solid is not something you edit by pushing its vertices about in Blender. The extrusion is the thing; the mesh is what the extrusion produced.

What this sets up

Two things follow, and both get their own page.

Because the drawing geometry is in the model, drawings come out of the model rather than being kept alongside it - which is What comes out. And because representations can be present, absent, or of the wrong kind, “does it look right” is a poor test of a model - which is Checking the model.