23  Render

2 operations.

23.0.1 renderCadModel

GET /api/datasets/{slug}/render/cad

Renders the dataset’s Navisworks model from a camera pose, and can identify objects.

Draws the whole Navisworks model in the Autodesk viewer from the same camera contract as renderScene, and — unlike the Cesium tileset, which carries no batch table — can resolve a pixel to a cad_objects.id through pick. tag and isolate restrict what is drawn. This is a different renderer in a different frame, so its image cannot be composited with renderScene’s in 3D; compositing the two images has no depth interaction, and the model will not be occluded by splat geometry in front of it. Read-only: nothing is written.

Authentication: SupabaseAuth, CookieAuth

Returns — image · camera · layers · assets · settled · render_ms · camera_fit · placement_version

Field names as the handler returns them; the source states no types for them.

Effect — reads datasets · organizations · v_image_pose

Parameters

Name In Required Type Notes
slug path yes string
longitude query no number, nullable
latitude query no number, nullable
height query no number, nullable
heading query no number, nullable
pitch query no number, nullable
roll query no number, nullable
image_id query no string (uuid)
hfov query no number
lens query no string — one of calibrated
width query no integer
height_px query no integer
format query no string — one of png, jpeg
background query no string — one of scene, transparent
timeout_ms query no integer
strict query no
response query no string — one of image, json
frame query no string — one of camera, isolated
show query no string — one of isolated, all
db_ids query no string
tag query no string
probe query no
isolate query no string
pick query no string

Responses

Status Meaning Body
200 The rendered image. Provenance travels in headers: X-Camera, X-Intrinsics, X-Layers, X-Settled, X-Render-Ms, plus an ETag over the resolved inputs.
304 Not modified — the same camera, size and model version.
400 Invalid camera, or no field of view given and none derivable. Error
401 Not authenticated. Error
404 Dataset not found, or image_id has no pose. Error
409 The dataset’s CAD model is not translated yet. Error
429 Too many renders; this endpoint costs seconds of viewer time per call. Error
500 Server error. Error
501 No world-to-CAD calibration for this dataset, or an accepted-but-unimplemented option (tag, isolate, transparent background) was asked for. Error
504 The model did not finish loading within timeout_ms and strict was set. Error

23.0.2 renderScene

GET /api/datasets/{slug}/render/scene

Renders the dataset’s Gaussian splat and CAD mesh from a camera pose.

Draws the layers that share a Cesium scene — the Gaussian splat and the CAD mesh tileset, each placed by its own Cesium Ion georeference — from an explicit camera or from a photograph’s pose of record, and returns the picture. One operation with a layers parameter rather than one per layer, so two images are guaranteed to come from the identical camera; that guarantee is the point. Intrinsics are never defaulted and the response echoes what was applied. Read-only: nothing is written.

Authentication: SupabaseAuth, CookieAuth

Returns — image · camera · layers · assets · settled · render_ms

Field names as the handler returns them; the source states no types for them.

Effect — reads datasets · v_image_pose

Parameters

Name In Required Type Notes
slug path yes string
longitude query no number, nullable
latitude query no number, nullable
height query no number, nullable
heading query no number, nullable
pitch query no number, nullable
roll query no number, nullable
image_id query no string (uuid)
hfov query no number
lens query no string — one of calibrated
width query no integer
height_px query no integer
format query no string — one of png, jpeg
background query no string — one of scene, transparent
timeout_ms query no integer
strict query no
response query no string — one of image, json
layers query no string
basemap query no string — one of google, none
sky query no
cad_opacity query no number, nullable
quality query no number

Responses

Status Meaning Body
200 The rendered image. Provenance travels in headers: X-Camera, X-Intrinsics, X-Layers, X-Settled, X-Render-Ms, plus an ETag over the resolved inputs.
304 Not modified — the same camera, layers, size and asset versions.
400 Invalid camera, or no field of view given and none derivable. Error
401 Not authenticated. Error
404 Dataset not found, or image_id has no pose. Error
429 Too many renders; this endpoint costs a GPU-second per call. Error
500 Server error. Error
504 The scene did not settle within timeout_ms and strict was set. Error