True Point is a quoting tool for concrete and fibreglass pool builders. It reads the CAD the
firm already draws in, runs the exact geometry in the browser, and prices it against what is
actually on the shelf, so a quote that took months comes back in hours. What leaves the
office is a fabrication order the factory can build from, with a delivery and installation
date that holds.
Geometry
Exact B-rep
OpenCascade, not a mesh
Runs
In the browser
Local-first document
Quantities
Off the solid
Areas, volumes, counts
Configurator
Live
Drag it yourself, below
The whole run, CAD to payment
True Point · the shape of itOverviewThree beats · detail follows below
Scroll the diagram sideways
One product sits between the CAD the model is drawn in and the ledger the
invoice lands in, and the eight things inside the box are the work it does rather than eight
tools to buy and wire together. Below, the same run with the formats, payloads and figures named.
True Point · CAD to paymentPipelineWorked example · 10.0 × 4.0 m fibreglass · rev 14 · AUD
Scroll the diagram sideways
One in-ground pool from CAD to cleared payment. The kernel carries the claim the rest depends on: the import stays exact B-rep, so
40.0 m² of water and 51.0 m²
of surround are measured rather than approximated. Four of eight SKUs fall short by
$62,627.60, the nine week shell lead sets a
15 week programme, 448 labour hours
price at $61,234.26, and the accepted
$155,386.83 invoice posts to MYOB, Xero or QuickBooks as
INV-0142 with the deposit reconciling back on the dashed return leg.
The interface
No left-hand navigation. A top rail carries the document and the four things a designer moves
between; underneath it the workspace is the shape every CAD user already knows: feature history
on one side, the model in the middle, the selected feature's parameters on the other. The price
updates as a consequence of the geometry, in the same panel.
Feature history with an approved typed-agent change, the shell selected, parameters and driven values on the right, and the quote built from the solid.
What the design actually cost to arrive at
A pool quote is not one number, it is a number that moves. This is one project from first site
visit to order: the quoted value over time, the revisions it took, and the client feedback events
that moved it. The spa coming out is the whole story; everything after it is the client buying
value back.
Quoted value over six weeks, revision volume behind it, feedback events on the axis, and where the money moved.
Why a real kernel matters
Most quoting tools draw a picture and price a list. If the two disagree, the list wins and the
client finds out on site. True Point takes the other approach: one document, one exact kernel,
and every quantity read from the evaluated solid. Deck area is the face area. The bearer count
is the pattern count. Water volume is the volume.
The architecture follows the local-first CAD model: the document lives in the browser, the
geometry is evaluated by OpenCascade compiled to WebAssembly, and the shaded view is a result
rather than the source of truth. Typed agents operate against the same schema and the same
kernel as the person, under an authority the account owner grants, so an automated change is a
reviewable commit against the open document rather than opaque parallel state.
Designer
Browser UI, working on the open document
Schema document
Local-first, versioned, one source of truth
Exact kernel
OpenCascade in WebAssembly
B-rep evidence
Volumes, areas, drawings, STEP
A permissioned typed agent joins at the document, not beside it. Same schema, same kernel,
same evidence, with the authority chosen by the account owner.
Options, priced as you move them
The client does not want a quote, they want to know what they get for the money. So the drawing
and the price are the same object: drag the length, swap the surround, change the coping, and the
plan redraws while every affected line re-prices. The lines that do not depend on size sit still.
This is the real thing, not a recording. Move the steppers. Porcelain tile, travertine, clay paver
and honed concrete each carry their own rate and their own drawn surface; the bullnose and the
square edge are different profiles at different money; and the glass barrier is drawn to AS 1926.1
because in Australia it is not optional.
Fibreglass shell, porcelain tile surround, bullnose coping, frameless glass barrier at
1200 mm, one matched gate, salt chlorinator. Eight lines,
$141,260.75 before GST,
$155,386.83 with it. Every quantity is measured off the geometry.
A reader who does not touch the screen should still see the mechanism, so here are four moves
off that baseline with the figures they actually produce. The change is the part that matters,
and the count beneath it: not just that the total moved, but how few lines moved with it. Change the
surround material and one line re-prices. Change the length and six do, because six of them are
measured off the shell. Nothing here is asserted; each row is the same
price() the embed above runs.
Move one optionFromToChange
Surround: porcelain tile to travertine
$245/m² becomes $285/m² over the same 51.0 m²
$155,387Baseline
$157,631Travertine
+$2,244+1.4%
1 of 8 lines moved
The surround line goes $12,495 to $14,535. The shell, the excavation, the
coping, the barrier, the gate, the plant and the chlorinator do not depend on what the
paving is made of, so they sit still.
Barrier: frameless glass to tubular aluminium
$472/lm becomes $196/lm over the same 39.0 lm run
$155,387Baseline
$143,258Aluminium
−$12,129−7.8%
2 of 8 lines moved
The fence line falls $18,432 to $7,654, and the gate follows it to
$1,356 because a matched gate is priced off the fence rate. This is the single
largest saving available without touching the pool.
Length: 10.0 m to 12.0 m
Water 62.0 to 74.4 m³, surround 51.0 to 57.0 m²
$155,387Baseline
$173,82512.0 m
+$18,438+11.9%
6 of 8 lines moved
Shell +$9,440, excavation +$2,826, surround +$1,470, coping
+$840, barrier +$1,888, chlorinator +$298. Two lines hold: the gate
and the plant set, because neither is a function of pool size. The coping went up because
the perimeter went 28.0 to 32.0 lm, not because a rate changed.
Water: salt chlorinator to freshwater
Chlorinator out, planted regeneration margin in
$155,387Baseline
$191,062Freshwater
+$35,675+23.0%
8 lines moved · 8 lines becomes 12
The $3,868 chlorinator disappears and five new lines arrive: the regeneration
margin $8,200 at 20.0 m², the graded batter $6,864, the submerged
toe $5,136, the sand and gravel bed $2,407 and the low-head circulation
pump $4,294. Three existing lines move as a consequence of geometry rather than
choice: the margin is part of the same water body, so the barrier has to enclose it and
the fence run steps out 39.0 to 43.7 lm, taking the excavation and the surround with it.
The screen the client is in
The office screens above are half the job. The client never opens the configurator and never
reads the schedule; they get a link, and this is what is behind it. Same document, same solid,
same numbers, said in the words of someone who is buying a pool rather than building one.
Depth is not a parameter, it is 1.2 metres at one end and 1.9 at the other. The barrier is
not a line item at $415/lm, it is frameless glass that keeps the view open where a fence would
close it off, and it is there because AS 1926.1 requires it.
The price is one number, fixed, with the single condition that could move it stated plainly:
the soil report. There is an Accept button and a way to ask a question, and a timeline showing
the quote issued and the deposit next. Nothing here was re-typed from the office view; it is
the same quote rendered for the person paying it.
The pool drawn in plan from the same solid, with the shape, size, depth and surround stated in plain words. Below, further down the same screen: the fixed price at $153,678 including GST, the accept and ask actions, and the build timeline. Cross links to the admin and fabrication views sit along the top.
The same model is the source of both documents that leave the office. Nothing is re-entered
between them: the client sheet and the fabrication order are two renderings of one solid, which is
why the barrier run on the quote and the barrier setout on the fabrication order can never
disagree.
True Point · Quote pack TP-2418-R3Issued3 sheets · 14 Aug 2025 · AUD incl GST
The issued client pack. Sheet 1 carries the quote reference, the issued stamp and the pool
drawn in plan; sheet 2 is the priced schedule with the material component inside each line
and the in-price and not-in-price columns; sheet 3 is the sloping site case, the provenance
and the acceptance block. Twelve lines, $95,749.60 before GST,
$9,574.96 GST at 10 per cent,
$105,324.56 payable.
A paved courtyard is a parts list. A pool is a regulated assembly, and most of the difficulty sits outside
the water: the barrier, the gates, the level change, the plant run. So the configurator carries
the fence material and height, the number of gates and what they are made of, whether the
surround is in-ground or raised, the step down between levels, an adjoining or separate spa,
the cover, the heating, the water treatment, and how far the filter housing sits from the pool.
Those options are not decoration. Choose a fully above-ground surround and the ground on the
outside of the barrier falls away, so a 1500 mm fence reads 550 mm from the outside
face and the configuration stops being compliant. The panel says so, in the same words a
certifier would use. AS 1926.1 sets 1200 mm as the minimum from finished ground, with a
900 mm non-climbable zone, gaps under 100 mm, and gates that are self-closing and
self-latching. A quoting tool that cannot see that is quoting a pool that cannot be signed off.
Barrier and gates
Four fence materials, two compliant heights, one to three gates, three gate treatments. The barrier run and every gate are drawn on the plan with their swing arcs.
Level and spa
In-ground, part above or fully above, with retaining and a step or full stair. A spa can adjoin over a spillway, or sit separate with its own plant and its own barrier run.
Water and plant
Salt, mineral or freshwater. Heat pump, gas or solar, with the collector sized off the water area. The filter housing sits where you put it and the pipe run is priced by the metre.
A pool with no chlorine in it
Choose freshwater and the chlorinator line disappears from the quote. In its place the model
adds a regeneration zone, sized as a proportion of the swim area, and a sand and gravel bed.
This is a swimming pond: the water is cleaned biologically by the root zone of the planting and
by the bed it passes through, and it circulates slowly rather than being pushed through a filter
under pressure.
It is also the case that proves the point about geometry. The planting is generated from the
shape of the regeneration zone, so every stem carries its own height, lean and seed head, and
changing the zone ratio replants the bed at the same density rather than stretching a picture
of one.
This pool was built in a real CAD kernel, not illustrated. A rectangle was sketched and extruded,
the four vertical corners filleted to make the oval plan, the solid shelled to a 150 mm wall,
then the supports patterned along a datum axis and cut to the falling ground. Fifty-one solids,
three hundred and twenty-seven faces, all valid, and the wall material comes out at
7.795 m³ because that is what the kernel measured.
The whole thing exports as STEP. That is the difference between a picture of a pool and a model
of one: a fabricator can open the file, and every quantity on the quote traces back to it.
An exact hidden-line drawing generated from the solid: plan, elevations and isometric at 1:50, third angle. Produced by the kernel, not traced.
Features, not shapes
Sketch, extrude, fillet R1050, shell 150 mm, linear pattern, cut. Editable history, so the pool is still parametric after it has been priced.
Evidence
51 solids, 327 faces, 672 edges, every body valid. Post heights step 349 to 871 mm across the fall.
It leaves the building
AP214 STEP with 51 manifold solid B-reps, written by OpenCascade. Rebuild the model and the geometry hashes reproduce exactly.
What is drawn
The shell
Sketched profile, extruded, shelled to a wall thickness, filleted, with a coping rail around the rim. Editable history, so the shape is still a shape after it is priced.
The ground
A surveyed surface with a real fall. The burial depth and every post height derive from it, so the model answers what the block actually does rather than assuming flat.
The money
Shell, frame, deck, filtration, fencing and GST, each quantity read off the geometry. Change the pool and the number moves because the parts moved.
Built on an exact kernel.
Every quantity on the quote is measured off the solid, not estimated from it.