Karamba3D v2
English 英文
English 英文
  • Welcome to Karamba3D
  • New in Karamba3D 2.2.0
  • See Scripting Guide
  • See Manual 1.3.3
  • 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: Physical Units
      • 2.4: Quick Component Reference
  • 3: In Depth Component Reference
    • 3.0 Settings
      • 3.0.1 Settings
      • 3.0.2 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: Line to Beam
      • 3.1.7: Connectivity to Beam
      • 3.1.8: Index to Beam
      • 3.1.9: Mesh to Shell
      • 3.1.10: Modify Element
      • 3.1.11: Point-Mass
      • 3.1.12: Disassemble Element
      • 3.1.13: Make Beam-Set 🔷
      • 3.1.14: Orientate Element
      • 3.1.15: Dispatch Elements
      • 3.1.16: Select Elements
      • 3.1.17: Support
    • 3.2: Load
      • 3.2.1: General Loads
      • 3.2.2: Beam Loads
      • 3.2.3: Disassemble Mesh Load
      • 3.2.4: Prescribed displacements
    • 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: ModelView
      • 3.7.2: Deformation-Energy
      • 3.7.3: Element Query
      • 3.7.4: Nodal Displacements
      • 3.7.5: Principal Strains Approximation
      • 3.7.6: Reaction Forces 🔷
      • 3.7.7: Utilization of Elements 🔷
        • Examples
      • 3.7.8: BeamView
      • 3.7.9: Beam Displacements 🔷
      • 3.7.10: Beam Forces
      • 3.7.11: Node Forces
      • 3.7.12: ShellView
      • 3.7.13: Line Results on Shells
      • 3.7.14: Result Vectors on Shells
      • 3.7.15: Shell Forces
      • 3.7.16 Results at Shell Sections
    • 3.8: Export 🔷
      • 3.8.1: Export Model to DStV 🔷
      • 3.8.2 Json / Bson Export and Import
    • 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.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
      • 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: Hints on Reducing Computation Time
      • 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
  • Orientate Beam
  • Orientate Shell

Was this helpful?

  1. 3: In Depth Component Reference
  2. 3.1: Model

3.1.14: Orientate Element

Previous3.1.13: Make Beam-Set 🔷Next3.1.15: Dispatch Elements

Last updated 3 years ago

Was this helpful?

“Orientate Element” is a multi-component where the drop-down list under “Element Type” lets one select between beams and shells.

Orientate Beam

In Karamba3D the default orientation of the local coordinate system of a beam or truss follows these conventions:

  • The local X-axis (of red color) is the beam axis and points from starting-node to end-node.

  • The local Y-axis (green) is at right angle to the local X-axis and parallel to the global XY-plane. This specifies the local Y-axis uniquely unless the local X-axis is perpendicular to the XY-plane. If this is the case, the local Y-axis is chosen parallel to the global Y-axis. The default criteria for verticality is, that the z-component of the unit vector in axial direction is larger or equal to 0.999 999 9950.999 999 9950.999 999 995. This value can be changed in the "karamba.ini" file via the “limit_parallel” property.

  • The local Z-axis (blue) follows from the local X- and Y-axis so that the three of them form a right-handed coordinate system.

The local coordinate system affects the direction of locally defined loads and the orientation of the element’s cross section. Use the “Orientate Beam”-component to set the local coordinate system (see fig. 3.1.14.1):

  • The input plug “X-axis” accepts a vector. The local X-axis will be oriented in such a way that its angle with the given vector is less than 90 degree. This allows to give a consistent orientation to a group of beams.

  • The local Y-axis lies in the plane which is defined by the local X-axis and the vector plugged into the “Y-axis”-input. If the Y-axis is parallel to the beam axis it is not applicable to the element.

  • If no vector is supplied at the “Y-axis”-input or the given Y-axis is not applicable, then the local Z-axis of the beam lies in the plane which is defined by the local X-axis and the vector plugged into the “Z-axis”-input.

  • “Alpha” represents an additional rotation angle (in degree) of the local Z-axis about the local X-axis.

In order to control the orientation of a beam, the “Orientate Beam”-component can be applied in two ways:

  1. “Flow-through”: Plug it in between a “LineToBeam”- and an “Assemble”-component. The changes will be applied to all beam elements which pass through it. In case of shell elements the output is “Null”.

Orientate Shell

The “Orientate Shell”-component lets one control local x- and z- directions of the faces which make up a shell: “X-Oris” and “Z-Oris” inputs expect lists of direction vectors, one for each mesh face. In case the number of vectors does not match the number of faces the longest list principle applies. Infeasible directions (e.g. a prescribed z-vector which lies in the plane of an element) get ignored.

Regarding the application of the “Orientate Shell”-component the same two options (“flow-through” or “agent”) exist as for the “Orientate Beam”-component.

“Agent”: Specify beams by identifier via input “BeamId” and plug the resulting beam-agent directly into the “Elem”-input of the “Assemble”-component. This method allows to harness the power of regular expressions for selecting elements (see section ).

For shells the default orientation of their local coordinate systems can be seen in fig. 3.1.14.2. The following convention applies: The local x-axis is parallel to the global x-direction unless the element normal is parallel to the global x-direction. In that case the local x-axis points in the global y-direction. The local z-axis is always perpendicular to the shell element and its orientation depends on the order of the vertices of the underlying mesh face: If the z-axis points towards ones nose, the order of the face vertices is counter-clockwise (See fig. 6.17 in for an unforgettable way of remembering the right-hand rule of rotation.).

3.1.15
[12]
35KB
Orientate_Beam.gh
41KB
Orientate_Beam_AlternativeDefinitions.gh
16KB
Orientate_Beam_YAxis.gh
25KB
Orientate_Shell.gh
26KB
Orientate_BeamShell_ViaID.gh
Fig. 3.1.14.1: Controlling the orientation of local beam coordinate system
Fig. 3.1.14.2: Default orientation of the local shell coordinate systems
Fig. 3.1.14.3: User defined orientation of the local shell coordinate systems