Skip to content

fix: Add procedural column variants, editor copy/paste, and wall junction planning improvements#302

Merged
wass08 merged 11 commits into
pascalorg:mainfrom
sudhir9297:fix/fri-8-may
May 12, 2026
Merged

fix: Add procedural column variants, editor copy/paste, and wall junction planning improvements#302
wass08 merged 11 commits into
pascalorg:mainfrom
sudhir9297:fix/fri-8-may

Conversation

@sudhir9297
Copy link
Copy Markdown
Contributor

What does this PR do?

This PR expands structural editing capabilities with procedural column variants, introduces scene-level copy/paste workflows, improves connected wall movement behavior, and adds multiple editor/rendering stability upgrades.

It enables:

  • Procedural support column generation with multiple structural styles
  • Copy/paste workflows across editor scene objects and levels
  • Smarter wall junction planning during connected wall movement
  • Faster and safer BVH raycasting integration
  • Cleaner contextual door/window editing panels

Procedural Columns

  • Added procedural support column variants:

    • Vertical
    • A-frame
    • Y-frame
    • V-frame
    • X-brace
    • K-brace
    • Single-strut
    • Tripod
    • Trestle
    • Portal-frame
    • Box-frame
  • Expanded column schema and rendering support:

    • Support-style controls
    • Brace dimensions
    • Spread controls
    • Base and top plates
    • Richer shaft/base/capital rendering
  • Added panel UI support for new column controls.


Floorplan & Selection Support

  • Added column hit-testing support in floorplan workflows.
  • Added column selection support for:
    • Box selection
    • Standard floorplan interactions

Copy & Paste Workflows

  • Added scene selection copy/paste support.

  • Supports:

    • Walls
    • Fences
    • Columns
    • Items
    • Slabs
    • Ceilings
    • Roofs
    • Stairs
    • Spawns
    • Zones
  • Added automatic:

    • ID remapping
    • Reference remapping
  • Supports:

    • Paste into active level
    • Paste via floating level selector
  • Added paste action to floating level selector menu.

  • Added keyboard shortcuts:

    • Cmd/Ctrl + C
    • Cmd/Ctrl + V

Wall Junction Planning

  • Added core wall-move planning system for junction handling.

  • Detects:

    • Linked walls
    • Endpoint targets
    • Bridge wall plans
    • Consumed walls
    • Deletion cases during movement
  • Updated wall move tooling to use new planning logic:

    • Improves connected wall ownership and movement behavior

Fence Interaction Improvements

  • Refined fence endpoint drafting behavior.
  • Improved fence movement interactions.
  • Improved polygon handling during floorplan editing.

Viewer & BVH Stability

  • Added BVH wrapper for accelerated raycasting.
  • Skips incompatible or empty geometry safely instead of crashing.
  • Integrated BVH wrapper into viewer scene flow.

Renderer & Material Updates

  • Updated renderer/material handling for:

    • Columns
    • Walls
    • Items
    • Site
    • Slabs
    • Fences
    • Ground occlusion
  • Ensured compatibility with updated interaction and BVH behavior.


Door & Window Panel UX

  • Hid inapplicable door settings depending on:

    • Door type
    • Opening state
    • Hinge/handle/top-shape relevance
  • Hid inapplicable window settings depending on:

    • Window type
    • Shape
    • Grid
    • Sill configuration
  • Added dirty-node marking during door/window updates:

    • Ensures edited nodes and parents refresh correctly

sudhir9297 added 7 commits May 8, 2026 12:54
# Conflicts:
#	packages/editor/src/components/tools/fence/move-fence-endpoint-tool.tsx
#	packages/editor/src/components/tools/select/box-select-tool.tsx
#	packages/editor/src/components/tools/wall/move-wall-tool.tsx
#	packages/editor/src/components/ui/panels/column-panel.tsx
#	packages/editor/src/components/ui/panels/door-panel.tsx
#	packages/editor/src/components/ui/panels/window-panel.tsx
#	packages/viewer/src/components/renderers/column/column-renderer.tsx
#	packages/viewer/src/components/viewer/index.tsx
#	packages/viewer/src/systems/slab/slab-system.tsx
reneruano95 pushed a commit to reneruano95/editor that referenced this pull request May 11, 2026
…rplan thumbnails + mobile editor UI

Port floorplan item thumbnails, full mobile editor UI, and
mobile polish from the private monorepo into the public editor.

Monorepo PR pascalorg#297 (feat/item-admin-advanced):
- Add optional floorPlanUrl to item asset schema (core)
- Render 2D floor-plan images inside item footprints on floorplan
- Improve slider drag with modifier key re-anchoring

Monorepo PR pascalorg#302 (feat/mobile-ui):
- Mobile editor layout with draggable bottom sheet
- Mobile tab bar, selection bar, and panel sheet
- Mobile-aware panel manager and panel wrapper
- useIsMobile rewrite (useSyncExternalStore, SSR-safe)
- Camera actions hideOrbit prop
- GridSnapControl and SecondaryToggles exports
- Action menu hides on mobile contextual tabs
- SidebarTab extended with mobileDefaultSnap/mobileIcon

Monorepo PR #306 (feat/mobile-ui-polish):
- Touch gesture mapping for camera controls (one/two/three finger)
- Snap ratio constants for bottom sheet
- Thumbnail generator WebGL2 fallback (bottom-up row flip)
- ErrorBoundary scope logging, viewer scene wrap
- GPUDeviceWatcher enhanced logging and uncaptured error handler
- WebGPURenderer init error handling and diagnostics
- Post-processing log improvements
- MergedOutlineNode WebGL2 FBO corruption fix

Excluded: apps/community/*, apps/editor/*, packages/community-*,
.cursor/*, .env.example (monorepo-only files)

Co-authored-by: Pascal <open@pascal.app>
@wass08 wass08 merged commit 3a62b8f into pascalorg:main May 12, 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