Skip to content
Releases

What shipped, release by release.

Every NullCad release, newest first. The features worth explaining get an explanation; the rest is listed plainly. Builds are on thedownload page, and theRSS feed carries these notes as they are published.

v2.1.0 · 4 October 2026

COGO input, Create Diagram, and title blocks you can author

NullCad 2.1 is a feature release. Any tool that places a point can now build it from bearings, distances, offsets and chainages. Create Diagram draws an exaggerated, labelled diagram of the model onto a Drafting sheet. Title blocks gain declared fields, in-place editing and a template library of their own. Traverses and checklists each get a dedicated window, and DXF text arrives in the font it was drawn in.

Note on compatibility

2.1 keeps the 2.0 document format, so files move between 2.0 and 2.1 in both directions. NullCad 2.0 doesn’t know about traverses, checklists or construction records, though, and saving a 2.1 file from 2.0 drops them — update every machine that edits the same documents.

From 2.1, opening a file saved by a different format version asks first, and says what saving will do to it.

COGO point input

Right-press with any tool that places points and a radial menu opens: Bearing, Distance, Offset, Angle, Chainage, Point, Recall and Finish. Where you press is the origin — a snap if there is one, otherwise the tool’s last vertex. Pick a sector and a value field opens beside the cursor.

  • Bearings are typed in HP DDD.MMSS; * reverses, and a trailing +90 or -45.30 turns. Tab takes the bearing of the line under the cursor.
  • 45.3015 23.456 adds a bearing and distance together and places the point.
  • Distances and offsets toggle between ground and grid with Tab, and ground values are reduced by the document scale factor.
  • Enter adds a guide you can snap to; Shift+Enter locks the cursor to it. Two locked items put the cursor on their intersection, and Tab steps between the solutions.

Chainage measures along a line, polyline, arc or polygon from its first vertex — 123.45 -3.2 is 123.45 along and 3.2 left. Arcs are followed exactly and offsets on them are radial; a * measures from the other end.

Recall brings back the session’s recent constructions. A flick repeats the last one from where you are now; a click shows up to eight with a preview on the canvas.

Every point built this way records how it was built: the values as typed, ground or grid and the scale factor, the origins and the objects used. The properties panel shows those steps in a Construction section, and marks a vertex that has been moved since.

Plugins can read the same construction steps from a tool click, and parse bearings and radiate points through nc.cogo.

Create Diagram

Select model geometry and choose Drafting → Create Diagram from Selection… (or right-click → Create Diagram…). NullCad draws a not-to-scale diagram of it onto a new Drafting sheet: short lines are lengthened so a 0.05 m splay or a fence 0.15 m off the boundary can be read, while bearings stay as surveyed and nothing crosses or changes side that didn’t in the model.

Each source edge gets one label that reads its bearing and distance from the model geometry, not from the stretched copy, so the figures on the diagram are the surveyed ones. A dialog previews the result with an exaggeration slider, paper size, the layers to label, a compact label style and an optional NOT TO SCALE note. The whole diagram is one undo step, and it is ordinary Drafting geometry to finish by hand.

Creating diagrams is a Pro feature. The result is ordinary drafting geometry, so it opens, edits and prints on any licence.

Title blocks

Title blocks are now forms rather than text with placeholders in it.

  • Declared fields. A template lists its fields — text, multi-line, date, number or choice — with labels, defaults and which are required. Values come from the sheet, then the project, then the template default. DXF attributes import as fields.
  • The plan date stays put. <DATE> is frozen when you set it, so a lodged plan’s date no longer changes every time the file is opened. <TODAY> is the always-current date.
  • More tokens. <SHEET_COUNT>, <FILE_NAME>, <CRS> and <SCALE_FACTOR>, with format suffixes such as <DATE:%d/%m/%Y> and <SCALE_FACTOR:6>. <SCALE> reports the sheet’s viewport print scales, or AS SHOWN when they differ. A REVISION field has a Bump button.
  • Warnings. Sheets with required fields left empty or tokens nothing fills are flagged in the Sheet Manager and the PDF export dialog, and the unfilled text draws amber on the canvas.
  • Authoring. Edit a title block in place with the normal drawing tools, with the rest of the sheet locked and an Insert token panel. Save any selection as a title block, or explode one back into geometry.
  • Masks. A template’s mask hides the drawing behind the title block, on the canvas and in the PDF — where covered geometry is cut out of the file, not just clipped.
  • Template library. Templates have their own window with thumbnails, and a per-machine My templates store. .nctb files carry a title block and its text styles between machines and offices.

DXF layouts now import on the sheet where their page setup plots them, with the right content on each layout.

Sheets and viewports

  • The Sheet Manager is split into a sheet list and tabbed detail panes, with a live title-block preview that follows your edits before Apply.
  • A new Drafting menu gathers the Sheet Manager, the template library, Create Diagram and Publish Sheets to PDF….
  • A viewport on a sheet stores its print scale: a 1:500 viewport prints at 1:500 however large the sheet is drawn, and moving, rotating or resizing a sheet carries its viewports with it. Existing viewports keep their current behaviour.
  • Viewports are drawn as a rectangle by default, snap to sheet edges and title-block linework, show the target sheet and print scale while you draw, and keep editable clipping boundaries afterwards.
  • Each sheet can print in colour, monochrome or greyscale.
  • Sheets are tinted as paper, and Paper preview shows the Drafting phase on white as it will print. Line weights in Drafting draw at their paper width.
  • The viewport View menu is kept per phase and saved with the document. Comparisons are hidden in Drafting by default, and basemaps are not drawn there.

Traverses

Traverses are now records in the document, with observations as the source of truth and the drawn lines as their result. A Traverses window holds the workflow: a list of traverses with their closure ratios, a legs table with inline editing, chained, radial and sideshot entry, and a closure readout with misclose bearing and distance, ppm, the angle-sum check and the most likely blunder. Legs whose geometry has been moved or deleted are flagged, and Realize redraws them from the observations.

Saved comparisons now update when their points move, instead of keeping the values they had when saved.

Checklists

Checklists are forms filled per job and stored in the document: checkbox, pass/fail/N.A. and free-text items under section headings. Each answer records who gave it and when, ticks are undoable, and changes appear in the operation log. A filled checklist keeps a copy of the questions it answered, so editing the template later never changes what was recorded.

Templates can be exported and imported as JSON. The Survey Check List from the Survey Directions ships as an example template.

Building and editing checklist templates is a Pro feature. Filling checklists, reviewing them and importing shared templates stays free.

DXF text and fonts

DXF text now imports in the font its style names instead of always in Inter. SHX stroke fonts render on the canvas, in the editor and in PDF export, drawn as exact strokes at their lineweight. Width factors import, export and can be edited.

A font this machine doesn’t have falls back through a substitution table you can edit under Settings → Fonts, which also lists the fonts a document uses that are missing. The document keeps the font it asked for, so installing it later brings it back.

TEXT justification and MTEXT attachment points are honoured on import and written on export. Text links to its text style, so editing the style updates the text — including title-block text imported from DXF.

Filter Selection

Shift+F narrows the current selection by rules — type, layer, name, code, text, attributes, coordinates, length, area, radius or vertex count — or searches the whole drawing when nothing is selected. Matches preview live; click one to frame it, then select, add or remove the set.

Quick convert

\ opens a small converter over the canvas: metres, feet, links, chains and yards; square metres, hectares, acres and acres-roods-perches; DMS, HP, decimal degrees and gradians. Type in any field and the rest follow.

Label format rules

Bearing, distance and area rounding are now named rules you can edit under Settings → Label Presets, referenced from labels as {bearing:plan}. Each rule is a set of bands — for example whole minutes under 30 m, 20″ to 200 m, 10″ beyond. Plain {bearing} still prints full DMS.

Improvements & fixes

  • Codelist codes can be wildcard patterns: 903* matches 903.1 and 903.2. An exact entry always wins over a pattern
  • A nullcad-data folder beside the executable keeps preferences, plugins, fonts, templates and the tile cache there; Help → About shows which folder is in use
  • Paste is one undo step, and keeps per-vertex elevations
  • Labels on arc segments of polylines follow the arc
  • The auto-stringer fits heights to closed polygon rings
  • Intersections are found reliably at T-junctions and shared corners, and snapping to an arc snaps to the arc rather than its chords
  • Overkill finds duplicate polygons and rectangles drawn from different starting vertices
  • Scaling applies to the whole selection or none of it
  • A negative DMS angle under one degree keeps its minus sign
  • Imported text files with a UTF-8 byte order mark read correctly
  • Polygon edit handles and undo work on the first vertex
  • Gizmo and handle drags start from where you pressed
  • A runaway plugin script is stopped instead of freezing the app, and the MCP server no longer crashes when enabled
  • Large selections and documents with many labels redraw with less work per frame
  • Field bundles, images, the update check and basemap attribution text are read with size limits

v2.0.0 · 31 August 2026

Annotations, Fieldbook import, and a much faster canvas

NullCad 2.0 is a major release. It delivers two major features, annotations and auto-stringing for pro users, and a bunch of QOL improvements across the app for everyone.

Alongside them, field evidence comes back from Fieldbook straight into the document, labels attach to the geometry they describe, polylines carry true arcs, and a rendering and save overhaul keeps very large documents feeling small.

Note on Compatibility:

2.0 introduces a new document format. NullCad 2.0 opens every file saved by earlier versions, but files saved with 2.0 cannot be opened by NullCad 1.0 — update all machines that share documents at the same time.

Annotations

The first release of the annotation system. Annotations are point-anchored notes that live in the document — photos, comments and editable properties, drawn as an overlay with their own selection and properties panel, and saved with the file like any other object. The search notes, the photo of the peg, the comment about the fence: they now sit in the model at the position they describe, not in a folder beside it.

Every annotation object can carry a full comment history for discussion by multiple surveyors.

Authoring annotations is a Pro feature; viewing, editing, commenting and importing them stays free for everyone, so a document annotated by one licence is never opaque to the rest of the office.

Fieldbook import

The other half of the annotation story: import a .ncfield bundle captured in Fieldbook and the day’s evidence lands in the document, either as raw data or as annotations that map one-to-one with the Fieldbook record. Photos arrive at the fix they were taken at, notes keep their tags, and everything sits beside the boundary model it belongs to.

The auto-stringer

Also out of development: coded survey points can now be strung quickly and efficiently using the new auto-string tool providing a full field to finish workflow. Code suffixes and dialect support handle the way your field crews actually code, a live preview shows the strings as you adjust the rules, and re-running the stringer replaces its earlier result instead of stacking a second copy on top. Plugins get the same power through a string_points API.

Auto-stringing is a Pro feature.

Labels that follow their geometry

Labels are now first-class text objects attached to geometry that auto update as the data evolves — move the line and the label moves and updates with it, so a late edit no longer means a hunt for the stale text it left behind.

Labels can also be attached to one object and receive their data from another, vastly improving plan drafting workflows.

Arc segments in polylines

Polylines carry true arc segments — DXF-style bulges, with an arc mode in the drawing tool and bulge editing afterwards — so drawing that traverse line in a busy drawing is now simple.

3D polylines

Line geometry takes a per-vertex elevation, so a string can carry its heights with it rather than flattening them away at import. This also improves TIN breaklines and Surface contours export in full 3D like you would expect.

Point markers

Layers can put a glyph on their points, sized in paper millimetres — the mark stays the same size on the sheet whatever the draw scale.

A faster canvas

The rendering engine has had an overhaul to introduce cached frames. This means, by default, the canvas is not redrawing everything every frame, only when a change has occurred. This means you can have the entire cadastre of Tasmania imported and rendering in your document and still run at or above 60fps.

In addition, viewport composition, snapping, labels, custom linetypes, undo and TIN editing all stopped doing work that scaled with document size.

Faster saves, and the new format

Saving got the same treatment: buffered writes, compact JSON and chunked operation history make large documents dramatically faster to save. This is the file-format change behind the compatibility note above — the speed comes from the new archive layout.

Improvements & fixes

  • ArcGIS REST, XYZ tile and WMTS basemap servers are supported alongside WMS
  • DXF import and export now offer proper options dialogs
  • Import and export surface their errors instead of swallowing them, and exported CSV is shielded against spreadsheet formula injection
  • A visual indicator shows which snap modes are active, and a user-settable cap keeps snapping responsive in dense drawings
  • Move and Rotate show construction geometry while you drag; Rotate takes a configurable base angle
  • Text objects take an optional maximum line width, and text hit-testing matches the glyphs actually drawn
  • Bug reports and feature requests can be sent from inside NullCad, and the welcome screen can check for updates (opt-in)
  • The console wraps long lines and can dock as a bottom panel
  • First run asks you to accept the licence agreement

v1.0.0 · 14 August 2026

The first numbered release

NullCad 1.0 is the first public release. It is the culmination of 12 month of work getting the app to a point where the core toolset is feature complete.

Grid or Ground

All data remains in the projection it is imported at, no need to constantly wonder what projection your in. Nullcad dynamically scales distances based on a document wide scale factor setting. All inputs use this CSF to keep your data in a single projection. No more accidentally exporting your boundary model in ground.

Phased workflow

Search plans, the boundary model, reinstatement and drafting live in one file, each phase with its own camera and status. Scanned plans and imagery drop into the Setup phase like a desk, stay embedded in the project, and sit beside the geometry they describe while the model is built from them.

Audit friendly

Every edit is an operation appended to a log that saves with the document. Deleted geometry is tombstoned, not removed, so the history of a figure survives the figure — and checking what has happened to a point since import is as easy as selecting it.

Data + Evidence

Keep your data organised, and keep your evidence with your data. Everything can be layed out spatially, from plans, to field photos and comments. All in one place. Need to come back to it in 6 months? Nullcad makes it easy to get back up to speed.

Drafting

Sheets and viewports behave as any other geometry. All the drafting tools you need to make beautiful plans. And if you prefer to Draft in another application, Nullcad has great DXF support for transfering your data.

Also in 1.0

  • Traverse entry from bearings and distances, with the combined scale factor applied as you go
  • The comparison tool: field measurement against plan, as a first-class object in the viewport
  • Shapefile, DXF, GeoJSON and CSV import and export
  • TIN surfaces with breaklines and contours
  • The .ncweb web viewer bundle for Fieldbook
  • Lua plugins, codelists and WMS basemaps with Pro