Model.propagatesplithexas#

Model.propagatesplithexas(splittype, startelement, n1, n2)#

Given a hexa element and two nodes diagonally across a face of that element, splits the hexa according to a set pattern and propagates that split to any hexa adjoining the opposite face of the hexa and so on through the displayed elements of the database.

Parameters:
  • splittype (int) –

    A number between 1 and 6 identifying the splitting pattern to use.

    1 - Two pentas (split along the diagonal formed by n1 and n2).

    2 - Penta & hexa (with the penta to the left of the diagonal).

    3 - Hexa & penta (with the penta to the right of the diagonal).

    4 - Two hexas (split from the right of n1 to the left of n2).

    5 - Three hexas (split from n1 to both sides adjacent to n2).

    6 - Four hexas (split in a plus pattern).

  • startelement (Entity) – The starting hexa element entity.

  • n1 (Entity) – One of the nodes entity defining the starting face of the hexa.

  • n2 (Entity) – The other node entity defining the starting face of the hexa.

Example#

Split a column of hexas into paired pentas start with element with ID 205 , where nodes with IDs 1015 and 1017 are diagonally opposite from each other across one face of the hexa#
import hm
import hm.entities as ent

model = hm.Model()

model.propagatesplithexas(
    splittype=1,
    startelement=ent.Element(model, 205),
    n1=ent.Node(model, 1015),
    n2=ent.Node(model, 1017),
)

Note

The hexa elements can be first or second order and need not all be the same order.