Spatial Integration Help

Constraints

Note

Coming in Spatial Integration version 3.

Requires the Professional edition. In the Community edition, geological models in a project can be viewed read-only: shown, hidden and faded, but not created or changed.

A constraint is one observation a feature's field must honour. The modeller understands three kinds:

Kind Meaning Typical source
Value The surface passes through this point (or, for a stratigraphic contact, the field has this contact's value here) Digitised fault traces, contact picks, drill interval boundaries
Normal The surface has this orientation here Dip and dip azimuth columns, structural measurements down holes
Inequality The point is inside (or outside) the body Grade shell assays above (or below) the cut-off

Constraints are grouped into constraint sets. A set belongs to one feature and draws its rows from one source layer through a recipe: the settings you choose when you add it. Open the Constraints tab with the feature selected on the Features tab.

Adding a Set

Open Add a constraint set, choose the Source type and the Layer, fill in the recipe, and click Add and sync. The Set name is optional; a name is made from the layer when it is left empty. Weight scales how strongly every row of the set is honoured relative to other sets, and can be changed per row later.

Rows are converted into the model's coordinate reference system as they are read. Only rows inside the model's extent, enlarged by 10% on each side, are kept, and one set holds at most 50,000 rows: a source larger than that is a survey, not a set of picks, and should be filtered.

GIS layers

Every node of every point, line and polygon becomes a point on the surface. Polygon holes are ignored.

  • Filter attribute and Filter value keep only the features whose attribute equals the value, for example TYPE = fault.
  • Orientation adds normals:
    • None - points only. The modeller works out an orientation from the points themselves when a feature has no normals at all (see Faults).
    • From attributes - the Dip attribute and Dip azimuth attribute columns, in degrees, dip positive down, azimuth clockwise from grid north.
    • Constant dip - one Dip and Dip azimuth for every feature.
    • Plane fit - a plane fitted through each feature's nodes. A straight line has no plane, so a feature needs nodes off one line, such as a polyline traced across topography.
  • A normal at every node places the orientation at each node rather than once at the centre of the feature's nodes that lie within the model's extent. A feature with no node inside the extent gets no normal.

The points take their height from the layer as it is drawn. A layer draped on an elevation surface (Z from Surface in the layer's window) gives points at that surface's height, whatever Z its file holds; a node that misses the surface keeps its own Z. A 2D layer that is not draped is placed at its default height, which is rarely what you want for a surface at depth: give the layer real Z values or drape it first.

Drill layers

Choose the Dataset (a downhole table) and, optionally, a Match attribute and Match value to keep only some rows, such as LITH = FAULT.

  • Contact - where each interval puts its point: its From depth, its To depth, Both ends, or its Midpoint. A point table always uses its depth.
  • Dip column and Dip direction column - optional structural columns that add a normal at each point.
  • The points lie on the surface - leave on for picks of the surface itself. Turn it off for structural measurements taken along a hole: each describes a local orientation, not a point on one surface, so only their normals are used and the surface is placed by the other sets.

For a grade shell, the drill recipe has its own fields, described in Grade Shells.

The hole's own direction is never used as an orientation.

LineDB layers

Every fiducial with a position becomes a point. Line surveys are dense, so use Filter channel and Filter value to keep a flag channel's picks, or filter on Line to take one line by name.

Stratigraphic contacts

When the feature is a surface with units, a Contact choice appears: the picks of the set are given that contact's value. Add one set per contact. See Surfaces and Stratigraphy.

Syncing

The rows of a set are copies, so a model opens and builds without its sources. When a source changes, click the set's Sync button. The recipe is run again and compared with what the set holds, row by row:

  • New source rows are added.
  • Rows whose source moved are updated in place.
  • Rows whose source has gone are removed, unless they are pinned. A pinned row is kept and marked orphan.

Anything you set by hand - a row's On tick, its Weight, its Pin - survives a sync.

The Synced column shows when each set was last synced. When its source file has changed since, it shows source changed in orange and the Sync button turns orange too.

Editing Rows

Select a set to list its rows. Untick On to leave a row out of the fit, change its Weight to make it count more or less, or tick Pin to keep it through syncs. The feature is marked stale and, if previews refit automatically, it rebuilds.

Untick a whole set in the set list to leave it out without deleting it.

Picks Placed by Hand

A Manual set holds constraints you place yourself, by clicking in the scene. Use it to add a pick a source does not have: a fault seen on a section, a contact interpreted from a surface, or an ore point a shell should include.

  1. On the Constraints tab, open Add a constraint set, choose Manual as the Source, and click Add set.
  2. Select the new set. Above its rows, choose what a click adds: for a grade shell Inside the shell or Outside the shell; for a surface with units, the contact the picks belong to. A fault's or surface's picks lie on the surface.
  3. Tick Place and move picks in the scene. The constraint crosses are shown, and the Edit tool is switched on.
  4. Click in the scene to add a pick. It is placed the way the Edit tool places a new point: snapped to a nearby vertex, draped on a surface, at a fixed height or on a clip plane, as set by the clamping options in the Edit window.
  5. Click an existing pick to pick it up, move it, and click again to put it down, or drag a gizmo handle. Escape cancels a move.
  6. Remove a pick with the bin at the end of its row.

Untick the box, select another set or close the dialog to stop. Every pick added, moved or removed can be undone, and the feature refits a preview after each change if previews refit automatically.

Picks can only be placed in a projected view, not on the globe. Rows that came from a source cannot be moved or removed here: edit the source and sync instead, or untick the row to leave it out.

Seeing Constraints in the Scene

Tick Show constraints in the scene to draw every row of every enabled feature as a small cross:

Colour Row
Yellow On the surface (value)
Red Inside a shell (ore)
Blue Outside a shell (waste)
Green, with a tick along the normal Orientation
Grey Disabled
Magenta Orphaned

This is the quickest way to check what a fit was given. A surface that comes out somewhere odd is often following rows you did not expect, and a grade shell with no blue crosses has nothing to bound it.

The crosses are an ordinary visualisation of the model layer called Constraints. Its settings hold the Glyph size (0 sizes the crosses from the model's extent), whether normals are drawn as ticks, whether disabled rows are shown, and the colour of the on-surface points.

With the Information tool, hover over a cross to see what the row asks of the field, its weight and flags, its set and the source row it came from. Click it, with the model dialog open, to jump to that row on the Constraints tab.