Karamba3D v3
  • Welcome to Karamba3D
  • New in Karamba3D 3.1
  • See Scripting Guide
  • See Manual 2.2.0
  • 1 Introduction
    • 1.1 Installation
    • 1.2 Licenses
      • 1.2.1 Cloud Licenses
      • 1.2.2 Network Licenses
      • 1.2.3 Temporary Licenses
      • 1.2.4 Standalone Licenses
  • 2 Getting Started
    • 2 Getting Started
      • 2.1 Karamba3D Entities
      • 2.2 Setting up a Structural Analysis
        • 2.2.1 Define the Model Elements
        • 2.2.2 View the Model
        • 2.2.3 Add Supports
        • 2.2.4 Define Loads
        • 2.2.5 Choose an Algorithm
        • 2.2.6 Provide Cross Sections
        • 2.2.7 Specify Materials
        • 2.2.8 Retrieve Results
      • 2.3 The Karamba3D Menu
      • 2.4 User Settings
      • 2.5 Physical Units
      • 2.6 Asynchronous Execution of Karamba3D Components
      • 2.7 Quick Component Reference
  • 3 In Depth Component Reference
    • 3.0 Settings
      • 3.0.1 License
    • 3.1 Model
      • 3.1.1 Assemble Model
      • 3.1.2 Disassemble Model
      • 3.1.3: Modify Model
      • 3.1.4: Connected Parts
      • 3.1.5: Activate Element
      • 3.1.6 Create Linear Element
        • 3.1.6.1 Line to Beam
        • 3.1.6.2 Line to Truss
        • 3.1.6.3 Connectivity to Beam
        • 3.1.6.4: Index to Beam
      • 3.1.7 Create Surface Element
        • 3.1.7.1: Mesh to Shell
        • 3.1.7.2: Mesh to Membrane
      • 3.1.8: Modify Element
      • 3.1.9: Point-Mass
      • 3.1.10: Disassemble Element
      • 3.1.11: Make Element-Set
      • 3.1.12: Orientate Element
      • 3.1.13: Dispatch Elements
      • 3.1.14: Select Elements
      • 3.1.15: Support
    • 3.2: Load
      • 3.2.1: General Loads
      • 3.2.2: Beam Loads
      • 3.2.3: Disassemble Mesh Load
      • 3.2.4 Load-Case-Combinations
        • 3.2.5.1 Load-Case-Combinator
        • 3.2.5.2 Disassemble Load-Case-Combinaton
        • 3.2.5.3 Load-Case-Combination Settings
    • 3.3: Cross Section
      • 3.3.1: Beam Cross Sections
      • 3.3.2: Shell Cross Sections
      • 3.3.3: Spring Cross Sections
      • 3.3.4: Disassemble Cross Section
      • 3.3.5: Eccentricity on Beam and Cross Section
      • 3.3.6: Modify Cross Section
      • 3.3.7: Cross Section Range Selector
      • 3.3.8: Cross Section Selector
      • 3.3.9: Cross Section Matcher
      • 3.3.10: Generate Cross Section Table
      • 3.3.11: Read Cross Section Table from File
    • 3.4: Joint
      • 3.4.1: Beam-Joints
      • 3.4.2: Beam-Joint Agent
      • 3.4.3: Line-Joint
    • 3.5: Material
      • 3.5.1: Material Properties
      • 3.5.2: Material Selection
      • 3.5.3: Read Material Table from File
      • 3.5.4: Disassemble Material
    • 3.6: Algorithms
      • 3.6.1: Analyze
      • 3.6.2: AnalyzeThII
      • 3.6.3: Analyze Nonlinear WIP
      • 3.6.4: Large Deformation Analysis
      • 3.6.5: Buckling Modes
      • 3.6.6: Eigen Modes
      • 3.6.7: Natural Vibrations
      • 3.6.8: Optimize Cross Section
      • 3.6.9: BESO for Beams
      • 3.6.10: BESO for Shells
      • 3.6.11: Optimize Reinforcement
      • 3.6.12: Tension/Compression Eliminator
    • 3.7 Results
      • 3.7.1 General Results
        • 3.7.1.1 ModelView
        • 3.7.1.2 Result Selector
        • 3.7.1.3 Deformation-Energy
        • 3.7.1.4 Element Query
        • 3.7.1.5 Nodal Displacements
        • 3.7.1.6 Principal Strains Approximation
        • 3.7.1.7 Reaction Forces
        • 3.7.1.8 Utilization of Elements
        • 3.7.1.9 ReactionView
      • 3.7.2 Results on Beams
        • 3.7.2.1 BeamView
        • 3.7.2.2 Beam Displacements
        • 3.7.2.3 Beam Forces
        • 3.7.2.4 Node Forces
      • 3.7.3 Results on Shells
        • 3.7.3.1 ShellView
        • 3.7.3.2 Line Results on Shells
        • 3.7.3.3 Result Vectors on Shells
        • 3.7.3.4 Shell Forces
        • 3.7.3.5 Shell Sections
    • 3.8 Export
      • 3.8.1 Export Model to DStV
      • 3.8.2 Json/Bson Export and Import
      • 3.8.3 Export Model to SAF
      • 3.8.4 Export/Import Model to and from Speckle (WIP)
    • 3.9 Utilities
      • 3.9.1: Mesh Breps
      • 3.9.2: Closest Points
      • 3.9.3: Closest Points Multi-dimensional
      • 3.9.4: Cull Curves
      • 3.9.5: Detect Collisions
      • 3.9.6: Get Cells from Lines
      • 3.9.7: Line-Line Intersection
      • 3.9.8: Principal States Transformation
      • 3.9.9: Remove Duplicate Lines
      • 3.9.10: Remove Duplicate Points
      • 3.9.11: Simplify Model
      • 3.9.12: Element Felting
      • 3.9.13: Mapper
      • 3.9.14: Interpolate Shape
      • 3.9.15: Connecting Beams with Stitches
      • 3.9.16: User Iso-Lines and Stream-Lines
      • 3.9.17: Cross Section Properties
      • 3.9.18 Surface To Truss
    • 3.10 Parametric UI
      • 3.10.1: View-Components
      • 3.10.2: Rendered View
  • Troubleshooting
    • 4.1: Miscellaneous Questions and Problems
      • 4.1.0: FAQ
      • 4.1.1: Installation Issues
      • 4.1.2: Purchases
      • 4.1.3: Licensing
      • 4.1.4: Runtime Errors
      • 4.1.5: Definitions and Components
      • 4.1.6: Default Program Settings
    • 4.2: Support
  • Appendix
    • A.1: Release Notes
      • Work in Progress Versions
      • Older Versions
      • Version 2.2.0
      • Version 2.2.0 WIP
      • Version 1.3.3
      • Version 1.3.2 build 190919
      • Version 1.3.2 build 190731
      • Version 1.3.2 build 190709
      • Version 1.3.2
    • A.2: Background information
      • A.2.1: Basic Properties of Materials
      • A.2.2: Additional Information on Loads
      • A.2.3: Tips for Designing Statically Feasible Structures
      • A.2.4: Performance Optimization in Karamba3D
      • A.2.5: Natural Vibrations, Eigen Modes and Buckling
      • A.2.6: Approach Used for Cross Section Optimization
    • A.3: Workflow Examples
    • A.4: Bibliography
Powered by GitBook
On this page
  1. 3 In Depth Component Reference
  2. 3.9 Utilities

3.9.18 Surface To Truss

Previous3.9.17: Cross Section PropertiesNext3.10 Parametric UI

Last updated 7 months ago

The "Surface to Truss" component facilitates the generation of various truss geometries based on arbitrary surface inputs. In addition to generating geometry, it provides local orientations for the truss members derived from the specified surface (refer to Fig. 3.9.18.1). The output of this component can be directly utilized by the "" component for integration into a structural model. Additionally, the component includes an option to relax the truss geometry, optimizing the angles between truss members to achieve their maximum possible value.

These are the component inputs:

Input-plug Name (Nickname)
Description

Surface (S)

The input surface used to generate the truss. By default, U=0 corresponds to the left side of the truss, V=0 designates the position of the lower girder, and V=1 indicates the position of the upper girder.

Truss Type (Type)

An integer value specifying the type of truss to generate. Right-click the component and select "Expand ValueLists" to display the available options. The options are as follows:

1: Pratt Truss 2: Warren Truss 3: Warren Truss with verticals 4: K-Truss 5: Diamond 6: Diamond Straight 7: Vierendeel Truss.

Number of Subdivisions (NSub)

Number of truss subdivisions, by default in surface U-direction.

Flip U Direction (FlipU)

Reverts the surface's U-direction for truss generation.

Flip V Direction (FlipV)

Reverts the surface's V-direction for truss generation.

Swap UV Directions (SwapUV)

Exchanges the surface's U- and V-directions for truss generation.

Relax Angles (Relax)

When set to true, the truss nodes on the upper and lower boundaries are shifted along the surface to minimize the sum of the squared angles between the truss members at the nodes. If this option is disabled, the nodes on the upper and lower boundaries are positioned at evenly subdivided U-values.

Target Post Direction (TargetDir)

If the vertical posts of the truss require a predefined direction, the corresponding directional constraint can be specified here using a vector, which will be mapped onto the underlying surface.

Maximum Relaxation Iterations (MaxIter)

The minimization of the internal angles is achieved through dynamic relaxation. This input value defines the maximum number of equilibrium iterations.

Length Tolerance (LTol)

Relative displacement tolerance from one iteration to the next for stopping the dynamic relaxation iterations.

Damping Factor (DFac)

Factor for scaling the displacement change from one dynamic relaxation iteration to the next.

In cases where the UV-space is highly distorted, it may be necessary to experiment with different settings for the damping factor and the maximum number of relaxation iterations.

Create Linear Element
13KB
SurfaceToTruss.gh
Fig. 3.9.18.1: Creation of a K-Truss on a given surface.