Aller au contenu
CADCAMFUN
Docs

Documentation

Générateurs de fonctionnalités

Engrenages à développante, filetages métriques ISO, hélices et bandes de tôle à motifs plats : profils et mailles précis à partir de quelques chiffres.

Traduit automatiquement de l'anglais. Voir l'original en anglais

Générateurs de fonctionnalités

Les générateurs de caractéristiques transforment quelques nombres techniques en profils ou maillages exacts : un engrenage à développante à partir du module et du nombre de dents, un filetage ISO à partir du diamètre et du pas, une hélice à partir du rayon et du pas, une bande pliée à partir d'une ligne centrale et d'une épaisseur. Chacun est une fonction pure dans packages/core/src/cad; l'éditeur, l'assistant et le modèle CAM appellent la même fonction, donc tous les trois voient la même pièce.

GénérateurDéposerPrincipales exportations
Engrenage droit à développantegear.tsgearDimensions, gearOutline, MIN_GEAR_TEETH = 6
Filetage métrique ISOthread.ts (124 lignes)threadSizes, threadProblem, threadTool, threadGroove
Hélice / bobinehelix.ts (41 lignes)coilGeometry, stepsPerTurn, COIL_STEPS_PER_TURN = 32, COIL_MAX_TURNS = 60
Tôlesheet-metal.ts (235 lignes)feuilleContour, longueur développée, avec ourlets, motif platDessin, motif platDxf

Engrenages à développante

Pitch radius m·z/2, tip radius pitch + m, root radius pitch − 1.25·m, flanks the involute of the base circle r_p·cos α (ISO 53 / DIN 867). The outline is one counter-clockwise ring about the origin with tooth 0 centred on +X. When the teeth would come to a point before the tip circle (few teeth, a large pressure angle), the tip is pulled in by bisection to where the tooth is still 2 % of a pitch wide.

Spécificationpasbaseconseilracine
m 2, z 18, 20°1816.9142015.5
m 2, z 12, 20°1211.276149.5
m 2, z 18, 25°1816.3142015.5
Paire de maillage m 2 : z 18 et z 12 Faites glisser vers l'orbite · faites défiler pour zoomer · faites glisser vers la droite pour effectuer un panoramique
Both outlines are gearOutline(…, 4) output, extruded 8 mm with Ø8 and Ø6 bores. Centre distance m(z₁ + z₂)/2 = 30 mm; the 12-tooth gear is turned half a pitch (π/12) so its tooth sits in a gap of the 18-tooth gear.
Erreurs – vrais messages
gearOutline({ moduleValue: 2, teeth: 5 })
// RangeError: A gear needs a module > 0 and at least 6 whole teeth
gearOutline({ moduleValue: 2, teeth: 18, pressureAngle: 50 })
// RangeError: The pressure angle must be between 0 and 45 degrees

Filetages métriques ISO

A modelled thread is real helical geometry: a core cylinder at the root united with a ridge swept along a helix with the profile kept radial, clipped to the thread length. External threads have their core at d₃ = d − 1.22687·P and a ridge up to d; internal ones are the tool that cuts a tapped hole, core at D₁ = D − 1.08253·P (the tap drill) and a groove out to D. The flank is cut square to the helix and the axial widths are corrected by the cosine of the helix angle so pitch and crest widths are exact.

Filposte. mineur d₃poste. hauteur h₃int. mineur D₁largeur de racinelargeur de crête
M6 × 14.77310.61344.91750.83330.125
M8 × 1.256.46640.76686.64681.04170.1563
M10 × 1.58.15970.92018.37621.250.1875
M12 × 1.759.8531.073510.10561.45830.2188

Les valeurs sont threadSizes(d, P, internal) output. Heights are 0.61343·P (external) and 0.54127·P (internal); the crest is P/8.

M8 × 1.25 filetage extérieur, 5 mm Faites glisser vers l'orbite · faites défiler pour zoomer · faites glisser vers la droite pour effectuer un panoramique
threadTool({ diameter: 8, pitch: 1.25, length: 5, internal: false }): 3 698 triangles. The full 10 mm version is 7 020 triangles, a closed solid of genus 0, V 408.0 mm³, built in 460 ms.
threadProblem — vrais messages
threadProblem({ diameter: 6, pitch: 4, length: 10, internal: false })
// "A pitch of 4 mm is too coarse for a 6 mm thread"       (pitch > d/2)
threadProblem({ diameter: 6, pitch: 0.1, length: 10, internal: false })
// "A thread has at most 58 turns (this one is 100.0 long: 10 mm at a pitch of 0.1 mm)"
threadProblem({ diameter: 6, pitch: 1, length: 10, internal: false })   // undefined: buildable

La limite de 58 tours est COIL_MAX_TURNS − 2: la crête commence un pas avant le filetage et se termine un après, de sorte que les coupes des extrémités plates rencontrent le profil complet.

Hélices

coilGeometry renvoie la ligne médiane et le premier anneau de profil d'un fil enroulé autour de Z, pour sweepSolid. Les points par tour découlent du rayon afin que les cordes restent à moins de 0,01 mm de la véritable hélice : stepsPerTurn(r) = clamp(⌈π / acos(1 − 0.01/r)⌉, 32, 128).
rayonstepsPerTurn
132
550
50128
Bobine r 10, pas 4, 5 tours Faites glisser vers l'orbite · faites défiler pour zoomer · faites glisser vers la droite pour effectuer un panoramique
coilGeometry({ cx: 0, cy: 0, z0: 0, radius: 10, pitch: 4, turns: 5, wire: 1.5, square: false, left: false }).path: 356 points (5 × 71 + 1), drawn as a toolpath-style polyline.

Tôle

Un profilé en tôle est une ligne centrale épaissie en une bande d'épaisseur constante, avec le matériau sur les côtés gauche, droit ou des deux côtés, et un rayon de courbure intérieur r à chaque coin. developedLength unbends it with a K-factor (default 0.44): each bend contributes (r + K·t)·θ and each straight run loses the setback of its neighbouring bends.

Canal U : t 2, intérieur R3, bride de 30 mm Faites glisser vers l'orbite · faites défiler pour zoomer · faites glisser vers la droite pour effectuer un panoramique
sheetOutline([(0,30),(0,0),(40,0),(40,20)], 2, ”left”, 3): an 80-point closed outline, extruded 30 mm along the sketch normal as the history does.
developLength(path, 2, 3, "left") — sortie réelle
{"straight":70,
 "bends":[{"angle":1.5707963267948966,"allowance":6.094689747964199},
          {"angle":1.5707963267948966,"allowance":6.094689747964199}],
 "length":82.18937949592839}
SegmentPortée à motif plat, mm
plat0 → 25
plier 90°25 → 31.095 (allocation 6.0947)
plat31.095 → 61.095
plier 90°61.095 → 67.189
plat67.189 → 82.189

Check: (3 + 0.44 × 2) × π/2 = 6.0947 per bend, and 70 + 2 × 6.0947 = 82.189 mm.

Dépannage

MessageRéparer
Un engrenage a besoin d'un module > 0 et d'au moins 6 dents entièresutilisez z ≥ 6 et un nombre entier de dents
L'angle de pression doit être compris entre 0 et 45 degrés20° est la norme ; 14.5° et 25° sont des alternatives courantes
Un pas de P mm est trop grossier pour un filetage de D mmle pas doit être au maximum la moitié du diamètre
Un fil de discussion comporte au maximum 58 toursdivisez le filetage en éléments plus courts ou utilisez un pas plus grossier
L'épaisseur de la tôle doit être positive (elle est 0)passer une épaisseur > 0
Le chemin est trop étroit pour cette épaisseur : sa courbe décalée se briseaugmenter le rayon de courbure ou réduire l'épaisseur