Skip to content

Revit add-in: Create views; naming rules for phase filters, sheets and rooms - #78

Merged
SamuelAB merged 8 commits into
mainfrom
claude/project-thread-gvkxa2
Oct 28, 2026
Merged

SamuelAB merged 8 commits into
mainfrom
claude/project-thread-gvkxa2

Conversation

@SamuelAB

Copy link
Copy Markdown
Owner

Sam's decisions on 2026-10-28: build Create views first, sheets A-101, keep Revit's phase filter names but trim and add, room numbers 2015.

Create views (new ribbon button)

  • One window: phase, drawing set, option, discipline at the top, then a grid of levels × plan types (grey = already exists), scope box dependents, and a preview of every view before anything is made.
  • Each view gets its name from the rule (N-CON-PLAN-EGRESS-L02), OB_ViewSet, OB_ViewType, the matched <Discipline>-<TYPE>-<Set>-<scale> template, phase and phase filter, and Title on Sheet in English or French.
  • Runs in one transaction. Ticks save and load as a view plan CSV (Phase,Set,Type,Level,Option,Zone), which an AI can also write.
  • ViewNaming.cs is pure C#, covered by 26 new offline tests (70 in total). One test checks that its view types and drawing sets match docs/naming-rules.md.
  • Compiles against the Revit 2022 and 2025 API reference packages with no new warnings. Not yet run in Revit.

Autotest

  • New step 8 makes views without the window.
  • It also tests Replace materials without the window (rename + merge, then roll back), since screen control on Sam's PC is refused.

Naming rules and /names/

  • Phase filters: keep 5, delete Show Demo + New and Show Previous Phase, add Show Existing.
  • Sheets: <Letter>-<Series><Sequence>. The series are a proposal.
  • Rooms: storey number + three digits. Basement, mezzanine and roof numbers are a proposal.
  • Dependent views end with the zone of an SB- scope box.
  • The names page has a new Sheets and rooms section and a phase filter table. build_names.py --check passes.

Generated by Claude Code

…in practice

Drawing set folders in full words with short codes in names; numbered
view types (000-AXO, 010-PLAN, 200-SECT...) in a new shared parameter
OB_ViewType; level last in view names with -OPTn for options; P1/P2
phases; Z-WIP and Z-TUTORIAL sets; ??? explained as the unfiled folder.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PYjDnENavg8joCDbzpsT6c
…orial set

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PYjDnENavg8joCDbzpsT6c
…lace Materials

Third ribbon button. Tick materials to replace, pick the new one or type a
new name (rename), see every element affected, build a replace list (CSV
import/export, Polynine's columns read too), run it in one transaction.
Covers material parameters, layers, painted faces, object styles and family
type parameters, plus appearance, physical and thermal assets. The list is
checked first: replace, rename, merge, remove, skip, chains and loops, and
names that don't follow OB_<Class>_<Material>_<Detail>. 18 offline tests.
Compiles against the Revit 2022 and 2025 API reference assemblies.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PYjDnENavg8joCDbzpsT6c
… naming

- Create views button: level x plan type grid for one phase, set and option;
  names from the OpenBEP view rule, OB_ViewSet/OB_ViewType, matched template,
  phase and phase filter, Title on Sheet (EN/FR), dependents per SB- scope box;
  preview before anything is made, one transaction. View plan CSV load/save.
- ViewNaming.cs (pure) with 26 offline tests, including a check that view
  types and drawing sets match docs/naming-rules.md.
- Autotest: makes views headlessly and tests Replace materials (rolled back).
- Naming rules and /names/: phase filters (keep 5, delete 2, add Show
  Existing), sheet numbers A-101, room numbers 2015, dependent view suffix.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PYjDnENavg8joCDbzpsT6c
…ion); tests read CRLF docs

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PYjDnENavg8joCDbzpsT6c
…eaks the OB name rule

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PYjDnENavg8joCDbzpsT6c
@SamuelAB
SamuelAB merged commit b1cb237 into main Oct 28, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants