Methods
diff
async diff(
urlA: string,
urlB: string,
mode: VisualDiffMode,
authToken?: string
): Promise<DiffResult>
Diffs the two speckle models provided as URLs. If the models are not yet loaded, they are also loaded.
Parameters
- urlA: The ‘current’ model
- urlB: The ‘incoming’ model
- mode: The VisualDiffMode
- optional authToken Used for potentially loading models
Returns: Promise <_DiffResult_>
undiff
async undiff(): Promise<void>
Undos any visual diffing and unloads any loaded models previously loaded b diffing.
Returns: Promise< void >
updateVisualDiff
updateVisualDiff(time?: number, mode?: VisualDiffMode): void
Updates the current visual diff.
Parameters:
- optional time: A value between 0 and 1 which that is used to interpolate opacity between ‘current’ and ‘incoming’ objects
- optional model: VisualDiffMode
Returns: void
Typedefs
DiffResult
interface DiffResult {
unchanged: Array<TreeNode>;
added: Array<TreeNode>;
removed: Array<TreeNode>;
modified: Array<Array<TreeNode>>;
}
- unchanged: All the nodes considered unchanged
- added: All the nodes considered added
- removed: All the nodes considered removed
- modified: All the nodes considered modified by pairs, where the first node is from the ‘current’ model and second one is from the ‘incoming’ model
VisualDiffMode
enum VisualDiffMode {
PLAIN,
COLORED,
}
With PLAIN, original materials are kept, and only made transparent. With COLORED the materials are replaced with typical diff colored materials:
red for removed
yellow for modified
green for added
no change for unchanged
Last modified on January 28, 2026