Documentación
Generadores de funciones
Engranajes de espiral, roscas métricas ISO, hélices y tiras de chapa con patrones planos: perfiles y mallas exactos a partir de unos pocos números.
La traducción automática no está disponible ahora; el texto está en inglés con la interfaz en tu idioma. Ver el original en inglés
Generadores de funciones
Los generadores de características convierten algunos números de ingeniería en perfiles o mallas exactas: un engranaje involutivo a partir del módulo y el número de dientes, una rosca ISO a partir del diámetro y el paso, una hélice a partir del radio y el paso, una tira doblada a partir de una línea central y un espesor. Cada uno es una función pura en packages/core/src/cad; el editor, el asistente y el modelo CAM llaman a la misma función, por lo que los tres ven la misma parte.
| Generador | Archivo | Principales exportaciones |
|---|---|---|
| Engranaje recto involuto | gear.ts | dimensiones del engranaje, contorno del engranaje, MIN_GEAR_TEETH = 6 |
| Rosca métrica ISO | thread.ts (124 líneas) | threadSizes, threadProblem, threadTool, threadGroove |
| Hélice/bobina | helix.ts (41 líneas) | coilGeometry, pasosPorVuelta, COIL_STEPS_PER_TURN = 32, COIL_MAX_TURNS = 60 |
| Chapa de metal | sheet-metal.ts (235 líneas) | hojaEsquema, desarrolladoLongitud, conDobladillos, planoPatrónDibujo, planoPatrónDxf |
engranajes involutos
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.
| Especulación | paso | base | consejo | raíz |
|---|---|---|---|---|
| m 2, z 18, 20° | 18 | 16.914 | 20 | 15.5 |
| m 2, z 12, 20° | 12 | 11.276 | 14 | 9.5 |
| m 2, z 18, 25° | 18 | 16.314 | 20 | 15.5 |
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 Roscas métricas 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.
| Hilo | ext. menor d₃ | ext. altura h₃ | int. menor re₁ | ancho de raíz | ancho de cresta |
|---|---|---|---|---|---|
| M6 × 1 | 4.7731 | 0.6134 | 4.9175 | 0.8333 | 0.125 |
| M8 × 1.25 | 6.4664 | 0.7668 | 6.6468 | 1.0417 | 0.1563 |
| M10 × 1.5 | 8.1597 | 0.9201 | 8.3762 | 1.25 | 0.1875 |
| M12 × 1.75 | 9.853 | 1.0735 | 10.1056 | 1.4583 | 0.2188 |
Los valores son threadSizes(d, P, internal) output. Heights are 0.61343·P (external) and 0.54127·P (internal); the crest is P/8.
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 El límite de 58 turnos es COIL_MAX_TURNS − 2: la cresta comienza un paso antes de la rosca y termina uno después, de modo que los cortes del extremo plano coincidan con el perfil completo.
hélices
coilGeometry devuelve la línea central y el primer anillo de perfil de un alambre enrollado alrededor de Z, por ejemplo sweepSolid. Los puntos por vuelta se derivan del radio, por lo que las cuerdas permanecen dentro de 0.01 mm de la hélice verdadera: stepsPerTurn(r) = clamp(⌈π / acos(1 − 0.01/r)⌉, 32, 128).
| radio | stepsPerTurn |
|---|---|
| 1 | 32 |
| 5 | 50 |
| 50 | 128 |
Chapa de metal
Un perfil de chapa es una línea central engrosada hasta formar una tira de espesor constante, con el material a la izquierda, a la derecha o a ambos lados, y con un radio de curvatura interior r en cada esquina. 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.
{"straight":70,
"bends":[{"angle":1.5707963267948966,"allowance":6.094689747964199},
{"angle":1.5707963267948966,"allowance":6.094689747964199}],
"length":82.18937949592839} | Segmento | Luz de patrón plano, mm |
|---|---|
| departamento | 0 → 25 |
| doblar 90° | 25 → 31.095 (allowance 6.0947) |
| departamento | 31.095 → 61.095 |
| doblar 90° | 61.095 → 67.189 |
| departamento | 67.189 → 82.189 |
Check: (3 + 0.44 × 2) × π/2 = 6.0947 per bend, and 70 + 2 × 6.0947 = 82.189 mm.
Solución de problemas
| Mensaje | Arreglar |
|---|---|
| Un engranaje necesita un módulo > 0 y al menos 6 dientes enteros | use z ≥ 6 y un número entero de dientes |
| El ángulo de presión debe estar entre 0 y 45 grados | 20° es estándar; 14.5° y 25° son alternativas comunes |
| Un paso de P mm es demasiado grueso para una rosca de D mm | el paso debe ser como máximo la mitad del diámetro |
| Un hilo tiene como máximo 58 vueltas | divida el hilo en secciones más cortas o use un paso más grueso |
| El espesor de la lámina debe ser positivo (es 0) | pasar un espesor > 0 |
| El camino es demasiado estrecho para este espesor: su curva desplazada se rompe | aumentar el radio de curvatura o reducir el espesor |