Project > Publish
Model Wipe
Removes the kinds of data you choose from the document, such as saved viewpoints, selection sets, clash tests, overrides and Playground data, after showing exactly how much will go.
Status
Launched Ran inside Navisworks at least once with no error logged; nobody checked the result yet.
Related asks to confirm
No quote is on record yet. These threads look related, but a person still has to open and read them.
Events it listens to
None. It runs only when you click it.
Files
Paths are relative to the Playground.extension folder.
Project.tab/Publish.panel/Model_Wipe.pushbutton/bundle.yamlProject.tab/Publish.panel/Model_Wipe.pushbutton/icon.dark.pngProject.tab/Publish.panel/Model_Wipe.pushbutton/icon.pngProject.tab/Publish.panel/Model_Wipe.pushbutton/icon.small.dark.pngProject.tab/Publish.panel/Model_Wipe.pushbutton/icon.small.pngProject.tab/Publish.panel/Model_Wipe.pushbutton/script.py
Install
- Only this tool. In Navisworks, click pyNavis > Playground, search for Model Wipe, tick it and click Install.
- The whole extension. Download
Playground.extension.zip, unzip it, put thePlayground.extensionfolder in%APPDATA%\pyNavis\extensions\, and click pyNavis > Reload. Model Wipe is on the Project tab, Publish panel.
You need pyNavis 1.3.0 or later.
Tried it? Tell us whether it worked or not. That report is what moves a tool up the status ladder.
ReportSource
The tool's own files, word for word as published in pynavis/Playground. Paths are relative to the Playground.extension folder.
script.py
The script that runs on a click.
Project.tab/Publish.panel/Model_Wipe.pushbutton/script.py View on GitHub# -*- coding: utf-8 -*-
"""Removes the chosen kinds of data from the document after showing exactly how much will go."""
from pynavis import doc as navis_doc
from pynavis import forms, toast
from namo import preflight, progress, ui, wipe
def run():
doc = navis_doc.get_doc()
name = preflight.document_name(doc)
found = progress.run('Model Wipe', lambda report: wipe.counts(doc, progress=report),
'Counting what is in the document')
if found is progress.CANCELLED:
return
counts, approx = found
values = ui.form('Model Wipe', wipe.form_fields(counts, approx, name), ok='Continue', width=520)
if values is None:
return
chosen = values['chosen']
if not chosen:
toast.info('Nothing chosen', 'Tick what to remove, then Continue.')
return
if not forms.confirm(wipe.confirm_text(chosen, counts, approx, name), title='Model Wipe'):
return
result = wipe.execute(doc, chosen)
level, message, detail = wipe.summary(result, counts, approx)
if result['done']:
# Say what was and was not written: only the open document changed.
note = '%s on disk is unchanged until you save.' % name
detail = ('%s %s' % (detail, note)) if detail else note
toast.show(level, message, detail)
run()
Library modules this tool uses
From the shared namo library, which installs with every tool. Each name opens the module on GitHub.
namo.preflightPreflight: is this document ready to share? A profile of checks, each pass, warn or fail.namo.progressGlue between pyNavis' cancellable progress window and Playground's progress callbacks.namo.uiWPF building blocks for Playground tools, themed from the pyNavis design system.namo.wipeModel Wipe: purge chosen kinds of data from the document, counted first, confirmed twice.
bundle.yaml
The bundle contract: the keys pyNavis reads for this tool.
Project.tab/Publish.panel/Model_Wipe.pushbutton/bundle.yaml View on GitHubtitle: Model\nWipe
tooltip: Removes the kinds of data you choose from the document, such as saved viewpoints, selection sets, clash tests, overrides and Playground data, after showing exactly how much will go.
context: doc