[1] PRO workflow overhaul, mobile support, loads/shells editing, and calc report hardening#45
Open
[1] PRO workflow overhaul, mobile support, loads/shells editing, and calc report hardening#45
Conversation
…ts, forces Complete HTML report generator with 5 sections: 1. Model Data — materials, sections, nodes, elements, supports (condensed for large models) 2. Loads — load cases, combinations with factors, applied load summary 3. Reactions — per-node reactions with equilibrium check (ΣF ≈ 0) 4. Displacements — max displacement summary box + sorted table (top 20 for large models) 5. Internal Forces — force summary + per-element start/end forces Both 2D (N/V/M) and 3D (N/Vy/Vz/Mx/My/Mz) results supported. Pre-report dialog for project name, engineer, company, notes. Print-friendly CSS with page breaks. Blob URL approach (same as PRO report). Report triggered from existing PDF button in ToolbarProject. i18n keys for en/es.
New module: design-check-results.ts - MemberDesignResult: unified per-member shape with elementId, elementType, sectionName, governingCheck, utilization, status, comboName, checks[] - CheckDetail: per-check demand/capacity/ratio/status - DesignCheckSummary: aggregate pass/warn/fail counts Adapters: - normalizeCirsoc201: CIRSOC 201 RC (JS) → unified - normalizeCirsoc301: CIRSOC 301 steel (JS) → unified - normalizeWasmSteel: AISC 360 / EC3 (WASM snake_case) → unified - normalizeWasmRC: ACI 318 / EC2 (WASM snake_case) → unified verificationStore expanded: - New setDesignResults() for unified multi-code results - designMap for O(1) element lookup - getMaxRatio/getStatus check unified results first, legacy fallback - Existing CIRSOC/steel legacy paths preserved Tests: 8 focused tests covering all 4 adapters + summary builder.
New ProDesignTab.svelte — unified design-check product surface: - Code selector (CIRSOC / ACI-AISC / Eurocode / NDS / Masonry / CFS) - 'Run Design Check' button that dispatches to the selected code - Summary bar: total members, pass/warn/fail counts (color-coded) - Member utilization table sorted worst-first: Element | Type | Section | Governing Check | Utilization (ratio bar) | Status | Combo - Status filter (All / Fail / Warn / Pass) - Ratio bars: green(≤0.5) → yellow → amber → orange → red(>1.1) - Auto-activates verification viewport overlay on check completion Integration: - Wired as 'design' tab in PRO panel (between Results and Verification) - Added to PRO nav strip in App.svelte - Uses normalized results from Chunk 1 via verificationStore.setDesignResults - CIRSOC path also populates legacy store for viewport compatibility - i18n keys for en/es
Toasts now have a small × in the top-right corner for immediate dismissal. Auto-dismiss still works as before (4s/8s timeout). The dismiss button is semi-transparent and highlights on hover. Added dismissToast(id) to uiStore.
8ed6300 to
351de92
Compare
…lc report hardening Calc report: - empty-report guard, truthful result provenance, analysis-only metadata - report type, result basis, and contents block Saved-project restore: - mode-aware autosave with reactive banner that hides/shows on mode switch PRO toolbar: - grouped dropdown desktop toolbar (Geometry, Properties, Conditions, Analysis) - Pan/Select tools with subtype filtering - undo/redo buttons and Ctrl/Cmd+Z/Y shortcuts - expanded Analysis dropdown labels (Connections, Diagnostics) across all locales PRO selection/delete: - select-mode filtering for click and box selection - shells picking via raycasting shellsParent - loads picking with line threshold for ArrowHelper shafts - correct highlight sync using userData.id for loads - selectMode disambiguation for overlapping shell/element IDs - row-click selection sets selectMode to match entity type - tab-entry auto-aligns selectMode - delete respects selectMode for shell/element disambiguation PRO tables: - shells editable (material, thickness) with updatePlate/updateQuad - loads editable across all 3D load types including surface3d and thermalQuad3d - load cases as editable table rows with type selector, name input, load count - combination cards with per-factor rows (factor × case name) - self-weight surfaced as display-only D row with ON/OFF toggle - Lr type support in load-case selectors - load-case row selection highlights all loads using that case - consistent row hover/selected/cursor affordance across all data tabs - selection bar separates shells from elements, shows supports and loads 3D viewport: - measure tool node snapping via direct raycast + screen-space proximity - shell selection with opacity boost (0.45 → 0.85) for legibility - load hover/selection highlight with visual feedback 7-story RC example: - English load-case names - wind combinations corrected to 1.6W (U4-U7) Mobile PRO: - upper toolbar with Pan/Undo/Redo/Results-Solve/Select - persistent Select sub-mode strip - floating Results/Solve panel (upper-left, shared with Basic via mode gate) - mode selector as styled dropdown with Beta labels - examples dialog full-width on mobile with text wrapping - floating Results/Solve box hidden in Education/PRO (Basic-only) i18n: - shells/loads status labels - PRO loads tab labels (Type, Name, Loads, ON/OFF, auto, etc.)
This was referenced Apr 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
PRO mode overhaul with selection/delete correctness, grouped dropdown toolbar, editable data tables, mobile support, and calc report hardening.
Calc report hardening
Saved-project / restore-mode fixes
appMode(basico / educativo / pro)PRO toolbar and interaction overhaul
PRO tables and editing workflows
updatePlate/updateQuadmethodsLradded to load-case type selector3D interaction improvements
userData.id(stable model index) instead of visual child index7-story RC example cleanup
Mobile support
i18n
Not included / intentionally deferred
selectedShellsstorage (uses selectMode disambiguation on sharedselectedElements)