-
Notifications
You must be signed in to change notification settings - Fork 0
User Guide
This guide explains the features and workflow of the application in more depth. Remember that StructoPyre is currently in Beta, and some features described here may be under development or subject to change. For a shorter, more concise guide, please refer to the Basics
- Importing 3D Models
- Material Mapping
- Assigning ACI Structural Properties
- Navigating the 3D Space
- Running the Simulation
- Interpreting the Visualization
- Settings Menu
- Keyboard Shortcuts Summary
StructoPyre allows you to load your own building models to analyze.
-
Supported Formats: Currently, the application supports the
.obj(Wavefront OBJ) 3D geometry format. It will also attempt to load an associated.mtl(Material Template Library) file if it has the same name and is selected subsequently. -
Import Process:
- Click the
Importbutton on the Main Menu. - A file dialog prompts you to select the
.objfile. - A second dialog prompts you to select the corresponding
.mtlfile.
- Click the
-
Model Scaling: Upon import, the application attempts to intelligently scale your model based on its detected size.
- Automatic Scaling: Tries to guess common export scales (e.g., inches-to-meters, cm-to-meters) and adjusts accordingly.
- Manual Scaling (via Settings): You can override the automatic scaling in the Settings menu (though this feature might be WIP) or use the Unit Conversion dropdown if available before import.
Linking the visual materials from your model to real-world physical properties is essential for the ACI calculations.
-
Purpose: The Material Mapper UI appears after model import. It lists the material names found in your
.mtlfile (or assigned within the.obj). You must map these imported names to one of the predefined Aggregate Types used in ACI 216.1M-14. -
Using the UI:
- For each material listed on the left, use the dropdown menu on the right to select the appropriate
AciAggregateCategory(e.g.,Siliceous,Carbonate,Lightweight,SemiLightweight). - Refer to the Technical Details#aci-aggregate-types page for brief descriptions of these types and common examples, especially in the Philippine context.
- If unsure, ACI 216 recommends using the most conservative type (usually
Siliceousfor fire resistance calculations). - Click
Confirm Mappingswhen done.
- For each material listed on the left, use the dropdown menu on the right to select the appropriate
- Importance: This step tells the simulation engine the fundamental material properties needed for subsequent fire resistance calculations.
Crucial Note: This section describes planned functionality essential for accurate simulations. The User Interface for inputting these details is a primary focus for ongoing development.
While Material Mapping assigns the type of material, ACI fire resistance calculations depend heavily on element-specific geometric and structural properties that are usually not present in standard .obj files.
-
Why Needed: You need to tell StructoPyre about:
- Element Type: Is a specific part of the model a Slab, Beam, Wall, or Column?
- Concrete Cover: What is the distance (in mm) from the concrete surface to the reinforcement? (Relevant for beams, slabs, columns).
- Equivalent Thickness: What is the effective thickness (in mm) used for barrier calculations? (Relevant for walls, slabs - especially if not simple solid slabs).
- Restraint Condition: Is the slab/beam Restrained or Unrestrained against thermal expansion?
- Column Dimensions: What is the least dimension (in mm) of a column?
- (Other properties like prestressing type might be added later).
-
Planned UI (Inspector Mode & Properties Panel):
- The goal is to allow users to select elements or groups of faces within the 3D view.
- Pressing
Ewill toggle the Properties Panel. - When an element is selected (indicated by the pink arrow), this panel will display its current assigned properties and allow the user to input/change them (e.g., set Element Type to 'Slab', enter 'Actual Cover' as 25 mm).
-
Current Beta Status:
- The Properties Panel (
Ekey) and Inspector Mode infrastructure exist but currently lack the input fields and element selection capability. - The application currently uses hardcoded default values (e.g., Type: Slab, Restraint: Unrestrained, Cover: 25 mm, Thickness: 125 mm) applied broadly after material mapping.
- This means current simulation results are based on these defaults and will only be accurate if the user's model happens to match them. Inputting project-specific data via the Properties Panel is necessary for meaningful results.
- The Properties Panel (
Explore your imported model using standard first-person controls:
-
Move:
W(Forward),A(Left),S(Backward),D(Right). -
Look: Move the
Mouse. -
Cursor: Press
Cto toggle the mouse cursor's visibility and lock state.- Cursor Hidden: Mouse controls camera look direction.
- Cursor Visible: Mouse can interact with UI elements (when implemented).
- (Browser Issue Note: Occasional conflicts between mouse lock and WASD keys can occur depending on the browser.)
This involves placing a fire source and observing the effects over time.
-
Placing Fire Source:
- Navigate to the desired location.
- Press
Xto spawn the fire source. - (Beta Note: This currently spawns a simple grey cube placeholder. It doesn't yet simulate heat spread or intensity.)
-
Simulation Controls (Planned UI - Simulator Mode):
- A dedicated UI panel or section will provide buttons to:
-
Start: Begin the simulation timer and the ACI checks. -
Pause: Temporarily halt the simulation time. -
Reset: Stop the simulation, reset all element states and timers back to initial conditions.
-
- A dedicated UI panel or section will provide buttons to:
-
Simulation Timer (Planned UI):
- Will display the elapsed simulation time, typically in Hours:Minutes:Seconds (
H:MM:S) format.
- Will display the elapsed simulation time, typically in Hours:Minutes:Seconds (
The core visual feedback shows how elements withstand the fire over the simulated time according to ACI 216 calculations.
-
Color Coding:
- 🟩 Green (Default/Safe): The element meets the ACI 216 requirements for the current elapsed simulation time based on its assigned properties.
- 🟨 Yellow (Exposed/Warning): The element is currently exposed to the fire source (in future implementations) and/or its
TimeBurningis approaching its calculatedFireResistanceHours. - 🟥 Red (Unsafe/Failed): The element's
TimeBurninghas exceeded its calculatedFireResistanceHours. It has failed the ACI check for that duration and is considered to have lost its required fire resistance (barrier or structural). - ⬛ Black (Yielded/Failed Final State): Represents an element that has definitively failed. (May be visually similar to Red in the current beta).
-
Mechanism: The
SimulationManagerperiodically checks each element's assigned ACI properties against the requirements for the currentSimulationTime(using theFireResistanceCalculator). IfActual Property < Required Property for Time T, the state changes.
- Access the Settings menu by clicking the Hamburger Icon (☰) located in the top-right corner of the header bar.
- (Beta Note: Functionality within the Settings menu, such as changing scaling options or simulation parameters, is currently limited or under development.)
-
WASD: Move Camera -
Mouse: Look Around -
C: Toggle Mouse Cursor Lock/Visibility -
X: Spawn Fire Source Placeholder -
E: Toggle Properties Panel (Inspector Mode related)
For technical implementation details, see the Technical Details page. For known issues and limitations, refer back to the Home page or a dedicated Limitations section.