Model.plydrape#

Model.plydrape(plies_collection, application='', ply_entity=Entity(), seed_point_x=0.0, seed_point_y=0.0, seed_point_z=0.0, draping_direction_x=0.0, draping_direction_y=0.0, draping_direction_z=0.0, draping_normal_x=0.0, draping_normal_y=0.0, draping_normal_z=0.0, elem_size=0.0, locking_angle=0.0, relaxation_angle=0.0, quadrants='Yes', continuations='Yes', directions=15, projection=0, closest_elem=Entity(), surface_approx='default')#

Drapes plies using the kinematic draping. See the`Kinematic Drape`_ topic for additional details.

Parameters:
  • plies_collection (Collection) – The collection containing the ply entities to drape.

  • application (hwString) – The name of the draping solution to use. Valid value is kinematic_draping.

  • ply_entity (Entity) – The object describing the ply entity to drape.

  • seed_point_x (double) – The x-coordinate of draping seed point.

  • seed_point_y (double) – The y-coordinate of draping seed point.

  • seed_point_z (double) – The z-coordinate of draping seed point.

  • draping_direction_x (double) – The x-component of vector describing draping direction.

  • draping_direction_y (double) – The y-component of vector describing draping direction.

  • draping_direction_z (double) – The z-component of vector describing draping direction.

  • draping_normal_x (double) – The x-component of surface normal vector at seed point location.

  • draping_normal_y (double) – The y-component of surface normal vector at seed point location.

  • draping_normal_z (double) – The z-component of surface normal vector at seed point location.

  • elem_size (double) – The length of the element edge in resulting draping mesh.

  • locking_angle (double) – The shearing angle after which material is considered to be locking.

  • relaxation_angle (double) – The relaxation angle for the material.

  • quadrants (hwString) – Default value is Yes. If set to No, draping analysis will produce cross shaped draping pattern from seed point in given draping direction and transverse direction.

  • continuations (hwString) – The valid values are Yes and No (default Yes).

  • directions (int) – Defines combination of 4 possible primary directions in which draping will proceed from seed point. Valid value is integer in range 1-15 (default 15).

  • projection (int) – Valid value is 0.

  • closest_elem (Entity) – The object describing the element entity that is closest to given seed node. This parameter provides alternative input for draping direction. If the draping direction is defined as 0,0,0 ply 1 direction from closest element will be used as draping direction instead.

  • surface_approx (hwString) – Valid value is default.

Example#

Drape the ply with ID 1, by providing the element with ID 1 as closest to seed node for draping direction#
import hm
import hm.entities as ent

model = hm.Model()

model.plydrape(
    plies_collection=hm.Collection(model, ent.Ply, [1]),
    application="kinematic_draping",
    ply_entity=ent.Ply(model, 1),
    seed_point_x=0.0,
    seed_point_y=0.0,
    seed_point_z=0.0,
    draping_direction_x=0.0,
    draping_direction_y=0.0,
    draping_direction_z=0.0,
    draping_normal_x=0.0,
    draping_mormal_y=0.0,
    draping_normal_z=1.0,
    elem_size=1.0,
    locking_angle=55.0,
    relaxation_angle=3.0,
    quadrants="yes",
    continuations="yes",
    directions=15,
    projection=0,
    closest_elem=ent.Element(model, 1),
    surface_approx="default",
)