PartDesign project/es

Aquí está la planificación del proyecto Diseño de Piezas como parte del mapa de desarrollo.

Propósito y principios
Este es un proyecto de desarrollo de software que trata de implementar capacidades de diseño de Piezas. Trata de implementar algunas características principales en los módulos de CAD de FreeCAD, Pieza, Diseño de Pieza y Ensamblaje (Part, PartDesign y Assembly).

Los pasos de desarrollo son planificados aquí y rastreados en el sistema de rastreo de incidencias para tener un registro de cambios bien definido: Rastreo de incidencias

Resultado
La intención del proyecto es permitir conseguir a FreeCAD una tarea de diseño como la que puede verse a la derecha.



Esto se logrará utilizando el Croquizador (Sketcher) y el Diseño de Piezas (PartDesign) para diseñar partes especiales y Pieza (Part) para cargar piezas estándar como STEP. El Ensamblaje (Assembly) lo pone todo junto con restricciones.

También un resultado importante es la Metodología de edición de Operaciones. La cual da al usuario una aproximación intuitiva a la reutilización y edición de operaciones. Esto es importante para todos los demás módulos y entornos que están por llegar, para cumplir con una interfaz de usuario coherente!





Croquizador
Un croquizador paramétrico con un solucionador de restricciones geométricas, para más detalles mira el Proyecto del Croquizador.

Operación principal de pieza MainPart
Ya que un modelado basado en el historial puede tener un montón de pasos para llegar a la forma final, es necesario una agrupación. Esta es la MainPart, que tiene el resultado final del modelado y actúa como un grupo para todas las operaciones del árbol de historial.

Operación saliente
Una Pad feature extruye un croquis (o cualquier Part2DObject) en la dirección de su normal. Siempre que garantice la creación de un sólido, o dará error.

Operación cajera
Marca un croquis en un sólido base definiendo su profundidad o "Hasta el último | Hasta el primero". También garantiza la obtención de un sólido.

Operación taladro
Una muy buena definición de parámetros de taladros de la especificación de NaroCad:

Pattern
Replicate one of the above features

RectangularPattern
Replicate one of the above features along an x,y pattern

CircularPattern
Replicate one of the above features along a pattern in polar coordinates

ScriptedPattern
Replicate one of the above features according to a general rule provided in form of a script.

What others do

 * SolidWorks examples

Pattern Implementation
The Pattern feature class can be implemented as a tabular pattern and serve as a base class for the Rectangular, Circular and Scripted Pattern features. These derived classes will only have to fill in the repetitions table of the base class.

Each line of the repetitions table of the base Pattern class has to hold at least a transformation matrix to applied to the Placement of the original feature to be replicated. Additionally we could have optional transformation rules like for example manipulating some parameter value the feature to be replicated (e.g. in order to create a pattern of holes with varying radius).

Modeling objects hierarchy
This UML chart shows the planed object hierarchy and its relationships. Yellow is a abstract base class, blue implemented and grey is planed.



Tutorials
PartDesign Bearingholder Tutorial I

PartDesign Bearingholder Tutorial II

Next actions
Next actions are defined in the Roadmap entry for PartDesign:

Body
Since the parametric/associative nature of the PartDesign we need finally a "Body" which groups and organizes a construction history. The Body itself holds the end result as a shape and has grouped as children the PartDesign features. It also defines the actual head of the modeling history. Its also related to the Assembly project since its the building block for products and compounds.

Additional features
The Pad and Pocket features are the first teaser for the PartDesign. There is still work to do especially the visibility control and the visual manipulators. But then additional features are needed.

Pattern
Pattern feature which repeatingly apply a Pad or Pocket feature according to a circular or rectangular patter. An Example in IronCAD. Done [jrheinlaender]

BoreHole
Classical bore hole with all parameters for threading and counter bore....

Sweep
Sweeps a Sketch along a curve and create a Solid.

Revolve
Rotate a Sketch along one of its Axis and a certain angle. Done [jrheinlaender et al.]

TODO List

 * 1) Fillet/Chamfer Part
 * 2) Apply fillet/chamfer operation to different selection types (face/faces pair/whole body)*
 * 3) Pad Tool
 * 4) Create 'up to next' mode DONE [mrlukeparry]
 * 5) Create 'up to surface/face' mode [mrlukeparry]
 * 6) Create draft property for pad DONE [mrlukeparry]
 * 7) If pad is selected on face automatically create a sketch?
 * 8) Create 'midplane' mode DONE [jrheinlaender]
 * 9) Pocket Tool
 * 10) Create 'up to first', 'up to last', 'through all', 'up to surface/face' modes DONE [jrheinlaender]
 * 11) If pocket is selected on face automatically create a sketch?
 * 12) Revolution Part
 * 13) Allow a generic line segment/axis to be used for reference
 * 14) Create 'midplane' mode DONE [jrheinlaender]
 * 15) Hole Feature
 * 16) Pattern Feature DONE [jrheinlaender]
 * 17) Sweep Feature
 * 18) Body Feature
 * 19) Reference Geometry
 * 20) Plane
 * 21) Mirror Tool DONE [jrheinlaender]
 * 22) Copy feature Tool