Package for generating periodic truss based lattices
Project description
Description
LatticeGeometryLib is a python library for creating spacial lattice structures which consist of an interconnected network of nodes struts and plates. These individual entities are combined into a unitary cell which periodic repetition creates the lattice. Furthermore this lattice can be inserted into any shell-like CAD geometry. This library is based on the CADQuery library.
Requirements
Package |
Version |
---|---|
cadquery |
2.2.0 |
Installation
Embedding the library into your python code is just as easy as for any other library Just call the following command from your python terminal:
pip install latticegeometrylib
Usage
Example
from latticegeometrylib.Generator import LatticeGenerator # create a new generator for the lattice generator = LatticeGenerator() # import a geometry as STEP-file # cylinder has a height and radius of 10. generator.import_initial_model( "cylinder.STEP" ) # create a shell object from geometry # thickness of wall is set to 1.0 generator.create_shell( 1.0 ) # define the sizes of the unit cell in every spacial direction size = ( 2., 2., 2. ) # state, if the measurements shall be set exactly as given strict = ( True, True, True ) # initialize unitary cell generator.init_unitary_cell( size, strict ) # define the strut diameter d = 0.25 # add entities to the cell, which are defined by node ids of the unit cell (cell type is called BCC here) generator.add_entity( [ 1, 7, { 'diameter': d } ] ) generator.add_entity( [ 2, 6, { 'diameter': d } ] ) generator.add_entity( [ 3, 5, { 'diameter': d } ] ) generator.add_entity( [ 4, 8, { 'diameter': d } ] ) # create unitary cell object from given entities generator.create_unitary_cell() # create lattice from given unit cell generator.create_lattice() # create intersection of lattice and shell generator.intersect_lattice() # merge shell and intersected lattice generator.unify() # export the shell with lattice core generator.export_unified( "cylinder_with_lattice.STEP" )
Additional Remarks
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
latticegeometrylib-0.0.16.tar.gz
(140.2 kB
view hashes)
Built Distribution
Close
Hashes for latticegeometrylib-0.0.16.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5b8591b49f29a4f4916eb1cc2262b0d6189e37066082301cd737df29ec4e8d6 |
|
MD5 | 9e25e37d4ea0be32a24b1cff9513d94b |
|
BLAKE2b-256 | e1866995966cd49eed788f6cbd413c7f406f87a0d4547814a52f9179f382066f |
Close
Hashes for latticegeometrylib-0.0.16-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ce339e4f850efe6e310ca42e15fc2dd068d6627c280c72e8f79828e5338e4601 |
|
MD5 | 33ec0f799ae66fe82f999d5d8a714e83 |
|
BLAKE2b-256 | e188fa43d55e5d66c2ea258ddc8c1174c640e79751e9670d6ff333a244408bd4 |