cqparts Content Library : Fasteners
Components
Base Components
Few of these are useful on their own, they’re used to build more complex parts.
Heads
Counter-sunk varieties
Cylindrical varieties
Externally Driven (eg: hex head)
Drive Types
Cruciform varieties (eg: phillips, frearson)
Hex (aka: alan) varieties
Square varieties (eg: single, double, triple square)
Slotted
Tamper Resistant varieties
Threads
Standard threads included:
ISO68 (standard for metric bolts)
Triangular (eg: for woodscrews)
Ball Screw
Any custom thread can be built by creating a profile as a Wire from within an object inheriting from the base Thread class. (read more here)
Male Fastener Components
Bolts
Screws
Female Fastener Components
Nuts
Utilities
The Fasteners utility assembly can be used to automatically apply fasteners to arbitrary materials.
For example, with the following 2 detatched blocks:
A Fastener can be applied to these two blocks to hold them together in a variety of ways, with varied parameters, such as these 2 exmples:
More detailed examples of customizing a Fastener are documented here.
Catalogue(s)
BoltDepot
boltdepot.com has an exceptional website for details of their products, enough to build 3d models accurate enough for most applications.
At this time, the catalogue you get with this library contains some of the products for boltdepot.com in the categories:
Bolts : boltdepot-bolts.json
Nuts : boltdepot-nuts.json
Woodscrews : boltdepot-woodscrews.json
Other Suppliers
With increased interest in this library I would like to see this list grow, but at this time, it’s just the catalogues listed above.
Examples
Machine Screw
We can create a fastener with many tuned parameters, for this example we’ll create an M3 machine screw, 4mm long, with a domed cheese head, and a 2mm hex drive:
from cqparts_fasteners.male import MaleFastenerPart
screw = MaleFastenerPart(
head=('cheese', {
'diameter': 4.5,
'height': 1.5,
'domed': True,
'dome_ratio': 0.5,
}),
drive=('hex', {
'depth': 1,
'width': 2,
}),
thread=('iso68', {
'diameter': 3, # M3
}),
length=4,
)
from cqparts.display import display
display(screw)
Catalogue Bolt
With use of a JSONCatalogue we can search for all fasteners within that catalogue that suit certain parameters, such as length, diameter, anything used as a parameter to build the part.
For this example, we’ll explicitly define the product’s id, guarenteeing only one result is returned:
import os
from cqparts.catalogue import JSONCatalogue
import cqparts_fasteners
catalogue_filename = os.path.join(
os.path.dirname(cqparts_fasteners.__file__),
'catalogue',
'boltdepot-bolts.json',
)
catalogue = JSONCatalogue(catalogue_filename)
item = catalogue.get_query()
bolt = catalogue.get(item.id == '221')
from cqparts.display import display
display(bolt)
This should generate an accurate model for BoltDepot’s product #221.
Metadata
Release files for cqparts-fasteners 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| cqparts_fasteners-0.1.0.tar.gz | 177.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cqparts_fasteners-0.1.0-py2-none-any.whl | Python 2 | none | any | Details |
Total release size: 383.8 kB
Release files / cqparts_fasteners-0.1.0.tar.gz
| Download URL | cqparts_fasteners-0.1.0.tar.gz |
|---|---|
| Size | 177.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8c55fc3b7cc80d0359ed7d81e7cc79444d171c757abe8bff6c58093205f56333
|
|
BLAKE2b-256 checksum How to use checksums |
bc249aa58a4925414f4e1bf896b91967e3ef8401b4e15f20e94545ec3808bf9e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / cqparts_fasteners-0.1.0-py2-none-any.whl
| Download URL | cqparts_fasteners-0.1.0-py2-none-any.whl |
|---|---|
| Size | 206.7 kB |
| Tags | Python 2 |
|
SHA-256 checksum How to use checksums |
c97c3337a042595efa78b650dd7d4a5986ac315a3e09ced7b71357b9546dcd61
|
|
BLAKE2b-256 checksum How to use checksums |
bb34de605a7c168c981b4779b4018ab3d9f1647851357f0f731323088c8461b3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for cqparts-fasteners 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.