Model.beamsectioncreateshelldirect#
- Model.beamsectioncreateshelldirect(collection, merge_tol, use_normal_vector, normal_vector, use_orient_vector, orient_vector, center_option, x_loc, y_loc, z_loc, part_generation, create_centroid_node, create_shear_node)#
Creates a shell beam section for , using the given parameters. The shell type beam section may be centered at the centroid of the section, the shear center, or at an arbitrary point defined by you. Optionally, nodes can be created at the centroid and shear center of the beam section.
The entities selected will be projected to a plane aligned normal to the normal vector, rotated such that the orient vector points vertically, and then converted into a shell type section. The normal vector forms the beam section’s local x-axis (length) and the orient vector forms the beam section’s local y-axis (height).
The results for the beam section will be automatically calculated after creation.
- Parameters:
collection (Collection) – The collection containing the entities that define the cross-section. Valid values are lines and elems. For elements, only 1D elements can be used.
merge_tol (double) – The tolerance used to merge input lines.
use_normal_vector (int) –
0 - The normal vector will be automatically calculated for the given entities.
1 - The normal vector defined by
normal_vectorwill be used.normal_vector (hwTriple) – The hwTriple object defining the vector components. User can also supply a Python list of three doubles.
use_orient_vector (int) –
0 - The orientation vector will be automatically calculated for the given entities.
1 - The orientation vector defined by
orient_vectorwill be used.orient_vector (hwTriple) – The hwTriple object defining the vector components. User can also supply a Python list of three doubles.
center_option (int) –
0 - The beam section will be centered at a point defined by
x_loc,y_loc, andz_loc.1 - The beam section will be centered at the beam section centroid.
2 - The beam section will be centered at the beam section shear center.
x_loc (double) – Defines the x coordinate of the center of the beam for
center_option=0. For othercenter_optionvalues, this is ignored.y_loc (double) – Defines the y coordinate of the center of the beam for
center_option=0. For othercenter_optionvalues, this is ignored.z_loc (double) – Defines the z coordinate of the center of the beam for
center_option=0. For othercenter_optionvalues, this is ignored.part_generation (int) –
0 - Parts for the section will be automatically generated.
1 - Parts for the section will be generated using a simple algorithm.
create_centroid_node (int) –
0 - No node will be created at the centroid.
1 - A node will be created at the centroid of the section relative to the entities.
create_shear_node (int) –
0 - No node will be created at the shear center.
1 - A node will be created at the shear center of the section relative to the entities.
Examples#
Create a shell type beam section from a line, using automatic calculation of the normal and orientation vectors and positioning it at the shear center#import hm import hm.entities as ent model = hm.Model() lines = hm.Collection(model, ent.Line, list(range(1, 20))) model.beamsectioncreateshelldirect( collection=lines, merge_tol=0.01, use_normal_vector=0, normal_vector=(0.0, 0.0, 1.0), use_orient_vector=0, orient_vector=(0.0, 1.0, 0.0), center_option=2, x_loc=0.0, y_loc=0.0, z_loc=0.0, part_generation=0, create_centroid_node=0, create_shear_node=0 )
Create a shell type beam section from elements, using user defined normal and orientation vectors, positioning it at a user-defined point, and creating nodes at the centroid and shear center#import hm model = hm.Model() elems = hm.Collection(model, ent.Element, list(range(1, 23))) model.beamsectioncreateshelldirect( collection=elems, merge_tol=0.01, use_normal_vector=1, normal_vector=(-0.2322, 0.0104, 0.4257), use_orient_vector=1, orient_vector=(0.0, 0.0, 1.0), center_option=0, x_loc=1.4, y_loc=0.5, z_loc=6.0, part_generation=0, create_centroid_node=1, create_shear_node=1 )