1. Produse
  2.   CAD
  3.   Python
  4.   CadQuery
 
  

Biblioteca Python cu sursă deschisă pentru formate de fișiere CAD 3D

Biblioteca CAD Python gratuită pentru a crea modele CAD 3D parametrice. Creează formate CAD de înaltă calitate, cum ar fi STEP, AMF și 3MF, pe lângă STL tradițional

Biblioteca open source Python CadQuery este o bibliotecă Python ușor de utilizat pentru construirea de modele CAD 3D parametrice. Biblioteca este foarte puternică și prin scrierea de scripturi scurte poate produce modele CAD de înaltă calitate în aplicațiile Python. De asemenea, este posibil să personalizați scriptul și să faceți multe obiecte diferite folosind un singur script. Scripturile CadQuery sunt foarte rapide și pot construi STL, STEP, AMF și 3MF mai rapid decât alte biblioteci disponibile.

Biblioteca oferă abilități avansate de modelare, cum ar fi fileuri, extrudări curbilinii, curbe parametrice și loft. Este o bibliotecă bazată pe scripturi care poate crea un model parametric care poate fi personalizat cu ușurință de către utilizatorii finali. Creează modele 3D cu scripturi cât mai apropiate de modul în care ai descrie obiectul unui om. CadQuery este licențiat în conformitate cu termenii licenței publice Apache, versiunea 2.0.

Acea bibliotecă CadQuery este proiectată în mod deliberat să nu aibă interfață grafică, astfel încât să poată fi utilizată în interiorul aplicațiilor de inginerie și științifice pentru crearea programatică de modele 3D. Dacă trebuie să utilizați o interfață grafică, puteți lua în considerare un editor CQ cu GUI bazat pe Qt sau extensia Jupyter jupyter-cadquery. De asemenea, este posibil să utilizați biblioteca împreună cu alte biblioteci Python.

Previous Next

Noțiuni introductive cu CadQuery

Cel mai simplu mod de a instala versiunea stabilă CadQuery este utilizarea pip. Vă rugăm să utilizați următoarea comandă pentru o instalare fără probleme.

Instalați CadQuery prin pip

pip install cadquery 

Puteți descărca biblioteca partajată compilată din depozitul Github.

Lucrați cu Polygon prin Python 3D Library

Un poligon este o formă bidimensională cu laturi drepte. Modelarea poligonală este o abordare pentru modelarea obiectelor prin reprezentarea sau aproximarea suprafețelor acestora folosind ochiuri poligonale. Biblioteca Python cu sursă deschisă CadQuery le permite dezvoltatorilor de software să creeze poligoane pentru fiecare punct de stivă cu doar câteva linii de cod Python. Este foarte benefic în imprimantele 3d al căror firmware nu corectează dimensiunile mici ale găurilor.

Creați planuri de lucru pe fețe prin Python 3D Library

Biblioteca Python cu sursă deschisă CadQuery a oferit suport complet pentru crearea planurilor de lucru pe fețe în cadrul aplicațiilor Python. utilizarea planurilor de lucru în acest fel este o caracteristică cheie a CadQuery. Eliberează utilizatorii de a căuta poziția diferitelor caracteristici în variabile și permite modelului să ștergă dimensiunile redundante. Utilizatorii pot selecta fețele solidului rezultat apelând metoda Workplane.faces (). Vă rugăm să rețineți că, în mod implicit, originea unui nou plan de lucru este calculată făcând un plan din fața selectată și proiectând originea anterioară pe acel plan.

Crearea planurilor de lucru pe fețe prin Python

result = cq.Workplane("front").box(2, 3, 0.5)  # make a basic prism
result = result.faces(">Z").workplane().hole(0.5)  # find the top-most face and make a hole
 

Lucrul cu cărămizi LEGO 3D prin Python

Biblioteca CadQuery a oferit suport complet pentru crearea de animație 3D reprezentând cărămizile Lego în diferite dimensiuni folosind comenzile Python. De asemenea, este posibil să recreați cărămizi prin unirea mai multor cuburi și cilindri împreună. Putem crea un obiect compus pentru a uni aceste forme 3D împreună într-un singur obiect (cărămidă). Următorul exemplu demonstrează cum se generează cărămidă Lego(TM) dreptunghiulară obișnuită de orice dimensiune. Este dificil doar din cauza logicii cu privire la partea inferioară a cărămizii.

Creați cărămizi LEGO 3D prin Python

#####
# Inputs
######
lbumps = 6       # number of bumps long
wbumps = 2       # number of bumps wide
thin = True      # True for thin, False for thick
#
# Lego Brick Constants-- these make a lego brick a lego :)
#
pitch = 8.0
clearance = 0.1
bumpDiam = 4.8
bumpHeight = 1.8
if thin:
    height = 3.2
else:
    height = 9.6
t = (pitch - (2 * clearance) - bumpDiam) / 2.0
postDiam = pitch - t  # works out to 6.5
total_length = lbumps*pitch - 2.0*clearance
total_width = wbumps*pitch - 2.0*clearance
# make the base
s = cq.Workplane("XY").box(total_length, total_width, height)
# shell inwards not outwards
s = s.faces("Z").workplane(). \
    rarray(pitch, pitch, lbumps, wbumps, True).circle(bumpDiam / 2.0) \
    .extrude(bumpHeight)
# add posts on the bottom. posts are different diameter depending on geometry
# solid studs for 1 bump, tubes for multiple, none for 1x1
tmp = s.faces(" 1 and wbumps > 1:
    tmp = tmp.rarray(pitch, pitch, lbumps - 1, wbumps - 1, center=True). \
        circle(postDiam / 2.0).circle(bumpDiam / 2.0).extrude(height - t)
elif lbumps > 1:
    tmp = tmp.rarray(pitch, pitch, lbumps - 1, 1, center=True). \
        circle(t).extrude(height - t)
elif wbumps > 1:
    tmp = tmp.rarray(pitch, pitch, 1, wbumps - 1, center=True). \
        circle(t).extrude(height - t)
else:
    tmp = s
# Render the solid
build_object(tmp)
 Română