Skip to main content

Nuts, Bolts and Screws content library for cqparts

Project description

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)

https://fragmuffin.github.io/cqparts/media/img/fasteners/heads-assorted.png

Drive Types

  • Cruciform varieties (eg: phillips, frearson)

  • Hex (aka: alan) varieties

  • Square varieties (eg: single, double, triple square)

  • Slotted

  • Tamper Resistant varieties

https://fragmuffin.github.io/cqparts/media/img/fasteners/drives-assorted.png

Threads

Standard threads included:

  • ISO68 (standard for metric bolts)

  • Triangular (eg: for woodscrews)

  • Ball Screw

https://fragmuffin.github.io/cqparts/media/img/fasteners/threads-assorted.png

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

https://fragmuffin.github.io/cqparts/media/img/fasteners/male-assorted.png

Female Fastener Components

  • Nuts

https://fragmuffin.github.io/cqparts/media/img/fasteners/female-assorted.png

Utilities

The Fasteners utility assembly can be used to automatically apply fasteners to arbitrary materials.

For example, with the following 2 detatched blocks:

https://fragmuffin.github.io/cqparts/media/img/fasteners/fastener-detatched.png

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:

https://fragmuffin.github.io/cqparts/media/img/fasteners/fastener-assorted.png

More detailed examples of customizing a Fastener are documented here.

https://fragmuffin.github.io/cqparts/media/img/fasteners/fastener-custom-assorted.png

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)
https://fragmuffin.github.io/cqparts/media/img/fasteners/example-screw.png

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.

https://fragmuffin.github.io/cqparts/media/img/fasteners/example-catalogue.png

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cqparts_fasteners-0.1.0.tar.gz (177.0 kB view details)

Uploaded Source

Built Distribution

cqparts_fasteners-0.1.0-py2-none-any.whl (206.7 kB view details)

Uploaded Python 2

File details

Details for the file cqparts_fasteners-0.1.0.tar.gz.

File metadata

File hashes

Hashes for cqparts_fasteners-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8c55fc3b7cc80d0359ed7d81e7cc79444d171c757abe8bff6c58093205f56333
MD5 34b32b2f07accb61b246d7361e8a1f4f
BLAKE2b-256 bc249aa58a4925414f4e1bf896b91967e3ef8401b4e15f20e94545ec3808bf9e

See more details on using hashes here.

File details

Details for the file cqparts_fasteners-0.1.0-py2-none-any.whl.

File metadata

File hashes

Hashes for cqparts_fasteners-0.1.0-py2-none-any.whl
Algorithm Hash digest
SHA256 c97c3337a042595efa78b650dd7d4a5986ac315a3e09ced7b71357b9546dcd61
MD5 c453d94e4d92325a449cd8c99fb24faf
BLAKE2b-256 bb34de605a7c168c981b4779b4018ab3d9f1647851357f0f731323088c8461b3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page