Model.createfoldingtable#

Model.createfoldingtable(airbagComponents, originnode, xaxisnode, planenode, fabricnode, gap=0.0, righthanded=False, exportdir='')#

Creates the table rigid body for the purpose of folding the airbag. The table is created below the airbag. The model should contain no systems and it should be a runnable solver deck.

Parameters:
  • airbagComponents (Collection) – The collection containing the airbag component entities.

  • originnode (Entity) – The node entity defining the initial position of local x-axis vector of the folding table with this point as the origin.

  • xaxisnode (Entity) – The node entity defining the final position of local x-axis vector of the folding table.

  • planenode (Entity) – The node entity defining the plane parallel to the airbag plane. All three nodes (originnode, xaxisnode and planenode) are used to define a plane parallel to the airbag plane. This node must not lie on the line formed by originnode and xaxisnode to create a valid plane.

  • fabricnode (Entity) – The object describing the point entity on the airbag fabric.

  • gap (double) – The distance between the bounding box of the airbag and the folding table in the local frame defined by the originnode, xaxisnode and planenode nodes.

  • righthanded (bool) – If True, the righthand rule is applied from originnode to xaxisnode vector to originnode to planenode vector and the folding table is created in the positive thumb direction from the airbag (default). Otherwise, set to False.

  • exportdir (hwString) – The directory path where the resulting solver deck is exported. User should have the write permission in this directory. Default is set to the location defined by the environment variable ALTAIR_HOME.

Example#

Create the airbag fold table#
import hm
import hm.entities as ent

model = hm.Model()

comps = hm.Collection(model, ent.Component)

model.createfoldingtable(
    airbagComponents=comps,
    originnode=ent.Node(model, 100),
    xaxisnode=ent.Node(model, 101),
    planenode=ent.Node(model, 102),
    fabricnode=ent.Node(model, 200),
    gap=2.0,
    righthanded=True,
    exportdir="E:/data",
)