GridBlockSupportGenerator

class pyslm.support.GridBlockSupportGenerator

Bases: BlockSupportGenerator

The GridBlockSupportGenerator class provides common methods used for generating the ‘support’ structures typically used in Metal Additive Manufacturing for block polygon regions. A truss structure is generated that provides more efficient scanning of supports of exposure based processes, by minimising exposure jumps.

Attributes Summary

gridSpacing

The spacing of the grid truss structure within the block support

mergeMesh

Determines if the support truss geometry should be merged together into a connected unified mesh

supportBorderDistance

The offset used when generating a border or support skin for each truss slice in the support block.

supportTeethBaseInterval

The gap between the base of the tooth.

supportTeethBottomLength

The bottom span or length of the perforated support teeth

supportTeethHeight

The height of the perforated support teeth

supportTeethTopLength

The upper span or length of the perforated support teeth

supportTeethUpperPenetration

Vertical (\(+Z\)) penetration of the support teeth into the intersecting mesh

supportWallThickness

trussAngle

The angle (degrees) used for generating the truss structures used in the support structure

trussWidth

The width of a strut in the truss grid

useLowerSupportTeeth

useSupportBorder

Generates a border around each truss grid

useSupportSkin

Generates a truss support skin around the extruded boundary of the support

useUpperSupportTeeth

Methods Summary

identifySupportRegions(part, overhangAngle)

Extracts the overhang mesh and generates block regions given a part and target overhang angle.

Attributes Documentation

gridSpacing

The spacing of the grid truss structure within the block support

mergeMesh

Determines if the support truss geometry should be merged together into a connected unified mesh

supportBorderDistance

The offset used when generating a border or support skin for each truss slice in the support block.

supportTeethBaseInterval

The gap between the base of the tooth.

supportTeethBottomLength

The bottom span or length of the perforated support teeth

supportTeethHeight

The height of the perforated support teeth

supportTeethTopLength

The upper span or length of the perforated support teeth

supportTeethUpperPenetration

Vertical (\(+Z\)) penetration of the support teeth into the intersecting mesh

supportWallThickness
trussAngle

The angle (degrees) used for generating the truss structures used in the support structure

trussWidth

The width of a strut in the truss grid

useLowerSupportTeeth
useSupportBorder

Generates a border around each truss grid

useSupportSkin

Generates a truss support skin around the extruded boundary of the support

useUpperSupportTeeth

Methods Documentation

identifySupportRegions(part, overhangAngle, findSelfIntersectingSupport=True)

Extracts the overhang mesh and generates block regions given a part and target overhang angle. The algorithm uses a combination of boolean operations and ray intersection/projection to discriminate support regions. If findSelfIntersectingSupport is to set True (default), the algorithm will process and separate overhang regions that by downward projection self-intersect with the part. This provides more refined behavior than simply projected support material downwards into larger support block regions and separates an overhang surface between intersecting and non-intersecting regions.

Parameters:
  • part (Part) – Part for generating support structures for

  • overhangAngle (float) – Overhang angle (degrees)

  • findSelfIntersectingSupport (bool) – Generates supports that intersect with the part

Return type:

List[GridBlockSupport]

Returns:

A list of BlockSupports