Unified CAD and scripting packages for megastructure design, handle library generation and visualization.
Project description
Crisscross Kit Python Library
#-CAD was developed alongside a Python API (crisscross) that can be used to manipulate megastructures programmatically. They share the same file format and can be used interchangeably. The Python interface provides more flexibility and customizability, at the cost of a steeper learning curve. We have also developed our own custom-made algorithm for creating an orthogonal assembly handle library, which is accessible via the orthoseq_generator package. Both packages are installed together with the below instructions.
Installation and Requirements
- The Python package was developed using Python 3.11. Other versions of Python should also work, but it is recommended to use 3.10+.
- To install the python interface, simply run the below in your environment of choice:
pip install crisscross_kit
- (Optional), if you would like to be able to generate 3D graphics or 3D blender files for further customization, you need to install additional dependencies:
pip install crisscross_kit[3d]
pip install crisscross_kit[blender]
- To be able to use the
orthoseq_generator, you will need to separately download and install NUPACK 4.x after installing thecrisscross_kit. Please follow their instructions here for installation.
Developer Installation
- To install the python interface and allow for changes to the code to be immediately updated in your package, clone this repository and navigate to the
crisscross_kitdirectory. Next, run:
pip install -e .
- You may also choose to install the package dependencies using other package managers, such as conda. The requirements are hosted in requirements.txt.
Usage Guides and Documentation
The documentation for both the designer library (crisscross) and the orthogonal sequence generator (orthoseq_generator) are provided within separate readmes:
- For the crisscross library, details are provided here.
- For the orthogonal sequence generator, details are provided here.
Building for PyPI
- For developers looking to build the package for PyPI, you can use the following commands from the
crisscross_kitdirectory of the repository: - First, make sure the build tools are installed:
pip install build twine setuptools-scm
- Next, build the package:
python -m build
- The build command will create a
distfolder containing the.whland.tar.gzfiles for the package. These can be uploaded to PyPI using:
twine upload dist/*
- You will need to have a PyPI account and set up your credentials in
~/.pypircfor the upload to work (you will also need to be set as a collaborator on thecrisscross_kitproject too).
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
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file crisscross_kit-1.2.0.tar.gz.
File metadata
- Download URL: crisscross_kit-1.2.0.tar.gz
- Upload date:
- Size: 2.5 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
002106ac0cc4dec3de2d3081fe73c170947228479d8ded127e9d4c94854e15cc
|
|
| MD5 |
70d0a7220565178e1152db95fe09ef20
|
|
| BLAKE2b-256 |
0cc9d34e77521b6ceb637c32d4f5bf475e1de521f58a992c8c32daabbc1deec8
|
File details
Details for the file crisscross_kit-1.2.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6b145c6574a34e0c4d98660f7ec5e8325287373d686bfb15826e62a2d9953a6f
|
|
| MD5 |
92d453c0cf3301d9ed3c5043998b9d2c
|
|
| BLAKE2b-256 |
09141a58da3950d319db7b2ec7e778cc8491ce00af633e3936949f187af7e842
|
File details
Details for the file crisscross_kit-1.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.4 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e757409b2b7ce21b106c908f287d71ae7d06e5a8f17007b43e6c07abe581d342
|
|
| MD5 |
27e78e6e0b26369fc704a740275ab62e
|
|
| BLAKE2b-256 |
39017dac324d68aef19f185b0b86c24b1e11a77a4d25ec6a1085571f72494974
|
File details
Details for the file crisscross_kit-1.2.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
716f3642eecbc5760a9a04260e89dd47ac0cb9c2550ee1bfbd899e7a6924f477
|
|
| MD5 |
a1e8f3bc7c0c80bbb6c07180693168b6
|
|
| BLAKE2b-256 |
2a99dadce772fead4f0b6634f4192ee8786e1117ee5b51d54d192aa4870c5ec9
|
File details
Details for the file crisscross_kit-1.2.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
320b1ec5b6939c0a14ccecdc990c7af574db9caec0eb21780e7aa31234c30648
|
|
| MD5 |
93c33964c934765f613d2cc3e7700736
|
|
| BLAKE2b-256 |
b464926f06ab0975aae509bd185a51c11b16e170c7f028fa341756397a6f01df
|
File details
Details for the file crisscross_kit-1.2.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e9c602b531b053907690a065d114baea5fdc785d8c15ad9f64025587423fa424
|
|
| MD5 |
55b1b1a8e62c4b298bf28183ed873304
|
|
| BLAKE2b-256 |
783b496267642fb6a46180c3c116548ab50cf76ab28435a2aba7d965872e30d0
|
File details
Details for the file crisscross_kit-1.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.4 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
248365e53fbd41c1bd2c2dc07c2b8e27ca6fc1566fa82a35c53c993b45d9248b
|
|
| MD5 |
0c4c9c35d80793e0b67f4218b555f45c
|
|
| BLAKE2b-256 |
cae6705bc90a8056480d86b5ea54590301ccdd0a2fd4fcad43b43ed69b53838c
|
File details
Details for the file crisscross_kit-1.2.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
920d25fe8089aa28918ad25ab26a8f04dae7d8279b00be6cd57b921578bc086a
|
|
| MD5 |
1842eb54d2269f2b8cec2172b04862c9
|
|
| BLAKE2b-256 |
5311e292343121d9d9f32c8d0131883fdf66b48b1b15fc2e8d8ed7d90ca7e802
|
File details
Details for the file crisscross_kit-1.2.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7ff4c1a6b1f86861c5f24495546c4d2b227d8e4fd18936ff6b1cf7c1f5f509b
|
|
| MD5 |
2810d8df6baaafd6c4e76e074caeff95
|
|
| BLAKE2b-256 |
b1e29f412d3d8a8dbe23a228c6f6bdc3a526419055da0c017cc6c9251f57ea40
|
File details
Details for the file crisscross_kit-1.2.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2de436e4d61a3b259f2ce55331f802983017ca3b7b303d173488e94a020e1f7a
|
|
| MD5 |
559741fc28939eab497353e6c03dba56
|
|
| BLAKE2b-256 |
87d750671dfc5417867e1e4b1f2d76fa113541942cc258de4a39e495bee85f32
|
File details
Details for the file crisscross_kit-1.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.4 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc1d38297e8c873469c6ff7e85e08f54e98f0ca3cd3e3e7a529edfbb1addf0cf
|
|
| MD5 |
8216ddfe847af495ef54542a2a8b5d8b
|
|
| BLAKE2b-256 |
9c13d65a65c124a8dc5d95fb5dca9bbd4098984dfd12f0f4cb34f589d9d2afbf
|
File details
Details for the file crisscross_kit-1.2.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1713091a51fef8f9898ce290fee64fa8ef64344ce74a1c8ad4ca7952d2ad0302
|
|
| MD5 |
d18c8c175a1945234dcaf24571014f8a
|
|
| BLAKE2b-256 |
27fb2904fb7c9c6a3e956af53e994adff69381099618050e189aeb4fb4ff6d8f
|
File details
Details for the file crisscross_kit-1.2.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f01897f8f66bc24845717cd1cb0b5491e6e4497cb8441945b542964bd749654a
|
|
| MD5 |
1266be17c8defc8a7daf90d39ac0082c
|
|
| BLAKE2b-256 |
4241ee3a8df74d418cfad194f4054a979584071f9ae4a98e7c07de17bdb746d2
|
File details
Details for the file crisscross_kit-1.2.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e7da6f8c406a2c8ee00a59679fd0a94c327a6f25c98368089cbbeb37b735ce9
|
|
| MD5 |
c0f65bab293bcf7cc035672b528f727b
|
|
| BLAKE2b-256 |
9b1afc2cb377ca877f239c108b83070847ea847e1e8949a97b13c79af0da74ae
|
File details
Details for the file crisscross_kit-1.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 3.4 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ad309c2cc9752706a88a742c3e2eea523c6746c8a6a8dffd43aa7d74a0cda4c
|
|
| MD5 |
7182722170e2bc5692d55bc863ec9006
|
|
| BLAKE2b-256 |
4b155d371662a155c15d1678a7bbad23fb34762db7e2593224ef6c75f561c03c
|
File details
Details for the file crisscross_kit-1.2.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ead4750bc426b4c8410fe322ee2f69b8303ac57d7757cd5771d2cf4a32b083ac
|
|
| MD5 |
ec78aad4d24cfb4e5923e22d380683b7
|
|
| BLAKE2b-256 |
fffdf35b173c00504f5a4c6591e8da535162c7ba21e7b0462eda08ff45b1dae2
|
File details
Details for the file crisscross_kit-1.2.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: crisscross_kit-1.2.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 3.3 MB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57cd0f79154528322ac03928789eaac52ab9d2024592f898b13abb52ef790fe6
|
|
| MD5 |
da3c394c9e0d0802cc0cc6770fe02488
|
|
| BLAKE2b-256 |
80a4967f5b8882fe41208f65f72ae9d2a223ee884e8016f7c0a81d1e8c4e6955
|