lattice-vw-itwin

Enrich Vectorworks IFC elements with iTwin BIS class mappings via MCP bridge.

3|Updated May 11, 2026
One-click install
npx skills add https://github.com/JeromyJSmith/lattice-platform --skill lattice-vw-itwin
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lattice-vw-itwin
Source: https://github.com/JeromyJSmith/lattice-platform/tree/main/.agents/skills/lattice-vw-itwin
Command: npx skills add https://github.com/JeromyJSmith/lattice-platform --skill lattice-vw-itwin

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This Skill prevents unreliable or manual IFC-to-iTwin BIM classification by ensuring Vectorworks (VW) outputs enriched, correctly mapped BIS class and subclass data into the LATTICE pipeline.

Core Features & Use Cases

  • Deterministic VW-to-iTwin enrichment: Uses the VW C++ plugin (MCPBridge.cpp) plus a Python bridge (vw-python) to drive IPC flows and write BIS mappings back into Pixeltable enrichment targets.
  • BIS class coverage auditing: Detects elements with null bis_class/bis_subclass in lattice/bridge/ifc_elements and focuses enrichment only where needed.
  • Safety guardrails for allowed authoring paths: Enforces no-Revit/no-MicroStation/no-DGN/Bentley-cloud workflows, forbids specific iTwin backend packages, and validates required symbol naming (Genus_species_cultivar) to keep ingestion consistent.
  • Use Case: When you ingest IFC4.3 exported from Vectorworks and see many elements missing BIS classification, this Skill guides you through auditing coverage and running the enrichment pipeline so your downstream iTwin/BIS behaviors have consistent class/subclass inputs.

Quick Start

Run the vw-itwin section cycle to enrich Pixeltable using the VW plugin-to-Python MCP bridge and update missing bis_class and bis_subclass assignments while enforcing symbol and workflow constraints.

Frequently Asked Questions about lattice-vw-itwin

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I map IFC4.3 elements to iTwin BIS classes from Vectorworks?

Mapping IFC elements to iTwin BIS classes from Vectorworks requires enriching ingested IFC data with authoritative BIS class and subclass assignments. This process uses a C++ plugin and Python bridge to drive IPC flows and write mappings back into a Pixeltable update workflow.

Why does my Vectorworks IFC export show missing BIS classification data?

Vectorworks IFC exports show missing BIS classification data when elements lack assigned bis_class or bis_subclass values. You can detect these null entries by auditing ingested ifc_elements and running an enrichment pipeline to apply authoritative BIS mappings.

What is the best way to audit null BIS class coverage in an IFC ingestion pipeline?

The best way to audit null BIS class coverage is to detect elements with null bis_class or bis_subclass fields within your ingested ifc_elements dataset. This focuses enrichment efforts strictly on elements requiring authoritative BIS schema mappings.

Can I use a Revit or MicroStation workflow to author IFC data for iTwin BIS ingestion?

You cannot use Revit, MicroStation, DGN, or Bentley-cloud workflows to author IFC data for this BIS ingestion process. The pipeline enforces safety guardrails that forbid these backend packages to keep ingestion and symbol naming consistent.

Do I need to validate plant symbol naming before enriching IFC data with BIS subclasses?

You need to validate plant symbol naming before enriching IFC data to ensure ingestion consistency. The pipeline enforces required Genus_species_cultivar naming rules and forbidden-string constraints during the VW-to-BIS enrichment workflow.

How do I start a Vectorworks to iTwin BIS enrichment cycle safely?

To start a Vectorworks to iTwin BIS enrichment cycle safely, begin with vw.ping health checks. Then map data via BisCore.ecschema.xml with a safe fallback, validate naming rules, and update Pixeltable using EPSG-normalized placement data.