Part Module/sv



FreeCAD's CAD kapabilitet är baserad på OpenCasCade kärnan. Del modulen tillåter FreeCAD att komma åt och använda OpenCasCade objekt och funktioner. OpenCascade är en professionell CAD kärna, som erbjuder avancerad 3D geometrimanipulation och objekt. Del objekten, till skillnad från Nätmodul objekten, är mycket komplexare, och tillåter därför mycket mer avancerade operationer, som koherenta booleska operationer, ändringshistorik och parametriskt beteende.

The objects created with the Part Workbench are relatively simple; they are intended to be used with boolean operations (unions and cuts) in order to build more complex shapes. This modeling paradigm is known as the constructive solid geometry (CSG) workflow, and it was the traditional methodology used in early CAD systems. On the other hand, the PartDesign Workbench provides a more modern workflow to constructing shapes: it uses a parametrically defined sketch, that is extruded to form a basic solid body, which is then modified by parametric transformations (feature editing), until the final object is obtained.

Part objects are more complex than mesh objects created with the Mesh Workbench, as they permit more advanced operations like coherent boolean operations, modifications history, and parametric behaviour.



Verktygen
Alla Del modul verktygen finns i Del menyn som kommer fram när du laddar Del modulen.

Primitiver
Detta är verktyg för att skapa primitivobjekt.


 * [[Image:Part_Box.png|32px]] Låda: Ritar en låda genom att ge dess dimensioner
 * [[Image:Part_Cylinder.png|32px]] Cylinder: Ritar en cylinder genom att ge dess dimensioner
 * [[Image:Part_Sphere.png|32px]] Sfär: Ritar en sfär genom att ge dess dimensioner
 * [[Image:Part_Cone.png|32px]] Kon: Ritar en kon genom att ge dess dimensioner
 * [[Image:Part_Torus.png|32px]] Torus: Ritar en torus (ring) genom att ge dess dimensioner
 * [[Image:Part_CreatePrimitives.png|32px]] CreatePrimitives: Ett verktyg för att skapa olika parametriska geometriska primitiver
 * [[Image:Part_Shapebuilder.png|32px]] Shapebuilder: Ett verktyg för att skapa mer komplexa former från olika parametriska geometriska primitiver

Förändra objekt
Detta är verktyg för att förändra existerande objekt. De kommer att låta dig välja vilka objekt som du vill förändra.


 * [[Image:Part_Extrude.png|32px]] Extrudera: Extruderar plana ytor på ett objekt
 * [[Image:Part_Revolve.png|32px]] Rotera: Skapar ett objekt genom att rotera ett annat objekt runt en axel
 * [[Image:Part_Mirror.png|32px]] Spegling: Speglar de valda objekten runt en given axel
 * [[Image:Part_Fillet.png|32px]] Fasning: Fasar (rundar) kanterna på ett objekt
 * [[Image:Part_Chamfer.png|32px]] Fasning: Fasar (klipper) kanter på ett objekt
 * [[Image:Part_RuledSurface.png|32px]] Ruled Surface:
 * [[Image:Part_Loft.png|32px]] Loft: Lofts från en profil till en annan
 * [[Image:Part_Sweep.png|32px]] Sweep: Sopa en eller flera profiler längs en bana


 * [[Image:Part_CompOffsetTools.png|48px]] Offset tools:
 * [[Image:Part_Offset.svg|32px]] 3D Offset: Constructs a parallel shape at a certain distance from original.
 * [[Image:Part_Offset2D.svg|32px]] 2D Offset: Constructs a parallel wire at certain distance from original, or enlarges/shrinks a planar face.


 * [[Image:Part_Thickness.svg|32px]] Thickness: Hollows out a solid, leaving openings next to select faces.


 * [[Image:Part_ProjectionOnSurface.png|32px]] Projection on surface: Project a logo, text or any face,wire,edge to a surface. With the projection part it is possible to create a solid or wire.


 * [[Image:Part_Compound.svg|48px]] Compound Tools:
 * [[Image:Part_Compound.svg|32px]] Make compound: Creates a compound from the selected objects.
 * [[Image:Part_ExplodeCompound.svg|32px]] Explode Compound: Tool to split up compounds of shapes
 * [[Image:Part Compound‏‎Filter.svg|32px]] Compound Filter: The CompoundFilter can be used to extract the individual pieces.


 * [[Image:Part_Booleans.png|32px]] Boolesk: Utför booleska operationer på objekt
 * [[Image:Part_Union.png|32px]] Förena: Förenar två objekt
 * [[Image:Part_Common.png|32px]] Gemensamt: Tar bort den gemensamma (skärningen) delen mellan två objekt
 * [[Image:Part_Cut.png|32px]] Klipp: Klipper (tar bort) ett objekt från ett annat


 * [[Image:Part_CompJoinFeatures.png|48px]] Join features: smart booleans for walled objects (e.g., pipes)
 * [[Image:Part_JoinConnect.svg|32px]] Connect: Connects interiors of objects
 * [[Image:Part_JoinEmbed.svg|32px]] Embed: Embeds a walled object into another walled object
 * [[Image:Part_JoinCutout.svg|32px]] Cutout: Creates a cutout in a wall of an object for another walled object


 * [[Image:Part_CompSplittingTools.png|48px]] Splitting tools:
 * [[Image:Part_BooleanFragments.svg|32px]] Boolean fragments: makes all the pieces that can be obtained by Boolean operations between objects
 * [[Image:Part SliceApart.svg|32px]] Slice a part: tool to split shapes by intersection with other shapes
 * [[Image:Part_Slice.svg|32px]] Slice: Splits an object into pieces by intersections with another object
 * [[Image:Part_XOR.svg|32px]] XOR: removes space shared by even number of objects (symmetric version of Cut)


 * [[Image:Part Defeaturing.svg|32px]] Defeaturing: (v0.18)
 * [[Image:Part_Section.png|32px]] Sektionera: Skapar en sektion genom att skära ett objekt med ett sektioneringsplan
 * [[Image:Part_SectionCross.png|32px]] Cross sections...:

Measure
Measure: Allows linear and angular measurement between points, edges, and faces.


 * [[Image:Part_Measure_Linear.svg|32px]] Measure Linear allows you to make linear measurements.
 * [[Image:Part_Measure_Angular.svg|32px]] Measure Angular allows you to make angular measurements.
 * [[Image:Part_Measure_Refresh.svg|32px]] Measure Refresh updates the measurements on screen.
 * [[Image:Part_Measure_Clear_All.svg|32px]] Clear All Clears all measurements.
 * [[Image:Part_Measure_Toggle_All.svg|32px]] Toggle All shows or hides all measurements.
 * [[Image:Part_Measure_Toggle_3d.svg|32px]] Toggle 3D shows or hides 3D measurements.
 * [[Image:Part_Measure_Toggle_Delta.svg|32px]] Toggle Delta shows or hides delta measurements.

Other tools

 * [[Image:Part_Import.svg|32px]] Import: This tool allows you to add a file *.IGES, *.STEP, *.BREP to the current document.
 * [[Image:Part_Export.svg|32px]] Export: This tool allows you to export a part object in a *.IGES, *.STEP, *.BREP file.
 * Part_BoxSelection.svg BoxSelection: add to the selection the faces of the shapes that are touches by the rectangular selection.
 * [[Image:Part_ShapeFromMesh.svg|32px]] Shape from Mesh: Creates a shape object from a mesh object.
 * Part_PointsFromMesh.svg Points from mesh: creates a shape object made of points from the mesh.
 * Convert to solid: Converts a shape object to a solid object.
 * Reverse shapes: Flips the normals of all faces of the selected object.


 * Create a copy:
 * [[Image:Part_SimpleCopy‎.svg|32px]] Create simple copy: Creates a simple copy of the selected object.
 * Part_TransformedCopy.svg Create transformed copy: creates a transformed copy of the selected object.
 * Part_ElementCopy.svg Create shape element copy: creates a copy from an element (vertex, edge, face) of the selected object.
 * [[Image:Part_RefineShape.svg|32px]] Refine shape: Cleans faces by removing unnecessary lines.


 * [[Image:Part_CheckGeometry.svg|32px]] Check geometry: Checks the geometry of selected objects for errors.

Contextual Menu items

 * Appearance: determines appearance of the whole part (color transparency etc.).
 * Set colors: assigns colors to part faces.

Preferences

 * [[Image:Preferences-part_design.svg|32px]] Preferences: preferences available for Part Tools (the Part workbench also uses the PartDesign Preferences).
 * [[Image:Preferences-import-export.svg|32px]] Import-Export Preferences: preferences available for importing from and exporting to different file formats.
 * Fine-tuning: some extra parameters to fine-tune Part behavior.

Förklaring av koncepten
I OpenCasCade terminologi, så skiljer vi mellan geometriska primitiver och (topologiska) former. En geometrisk primitiv kan vara en punkt, en linje, en cirkel, ett plan, etc. eller även mer komplexa typer som en B-Spline kurva eller yta. En form kan vara ett hörn, en kant, en tråd, en yta, en solid eller en sammansättning av andra former. De geometriska primitiverna är inte gjorda för att direkt visas i 3D scenen, utan snarare för att användas som bygggeometri för former. Till exempel så kan en kant skapas av en linje eller av en cirkeldel.

Vi skulle kunna säga att geometriprimitiver är "formlösa" byggblock, och former är den riktiga spatiala geometrin som är byggd på dem.

För att få en komplett lista på dem, se OCC documentation och leta efter Geom_Geometry och TopoDS_Shape. Där kan du också läsa mer om skillnaderna mellan geometriska objekt och former. Notera att OCC dokumentationen inte är tillgänglig online (du måste ladda ned ett arkiv) och är mest riktad till programmerare, inte till slutanvändare. Men förhoppningsvis hittar du tillräckligt med information här för att kunna börja.

''At a very high level, topology tells what pieces an object is made of, and the logical relationships between them. A shape is made of a certain set of faces. A face is bounded by a certain set of edges. Two faces are adjacent if they share a common edge.''

''Topology alone does not tell you the size, curvature, or 3D locations of any of those pieces. However, each piece of topology does knows about it's underlying geometry. A face knows what surface it lies on. An edge knows what curve it lies on. The geometry knows about curvature and location in space.'' - Source

Thus, Topology defines the relationship between simple geometric entities, which can be linked together to represent complex shapes. - Modeling Data User's Guide



De geometriska typeerna kan uppdelas i två huvudgrupper: kurvor och ytor. Från kurvor (linje, cirkel, ...) så kan du bygga en kant, från ytor (plan, cylinder, ...) så kan en yta byggas. Den geometriska primitiven linje är till exempel obegränsad, d.v.s. den är definierad av en basvektor och en riktningsvektor emedan dess formrepresentation måste vara något som begränsas av en start och en slutpunkt. Och en låda -- en solid -- kan skapas av sex begränsade plan.

Från en kant eller yta så kan du också gå tillbaka till dess motsvarande geometriska primitiv.

Så, av former så kan du bygga mycket komplexa delar eller, åt andra hållet, plocka ut alla delformer som en mer komplex form är gjord av.

Thus, out of shapes you can build very complex parts or, the other way round, extract all sub-shapes a more complex shape is made of.



Skript
Part scripting

Den huvudsakliga data strukturen som används i Del modulen är BRep datatypen från OpenCascade.

Nästan alla Del modulens innehåll och objekttyper finns nu tillgängliga för python skript. Detta inkluderar geometriska primitiver, som Linje och Cirkel (eller Cirkelbåge), och alla topologiska former, som Hörn, Kanter, Trådar, Ytor, Solider och Sammansättningar. För vart och ett av dessa objekt, så finns flera metoder att skapa dem, och för en del av dem, speciellt de topologiska formerna, så finns avancerade operationer som booleska förening/skillnad/skärning. Utforska innehållet in Del modulen, som det är beskrivet i FreeCAD Skript Grunder sidan, för att lära dig mer.

The most basic object that can be created is a Part Feature, which has a simple property, and basic properties to define its color and appearance.

Another simple object used in 2D geometrical objects is Part Part2DObject, which is the base of Sketcher SketchObject (Sketcher), and most Draft elements.

Test script
Test the creation of Part Primitives with a script.

This script is located in the installation directory of the program, and can be examined to see how the basic primitives are built.

Exempel
För att skapa en linje, växla till Python konsolen och skriv:

Låt oss gå igenom ovanstående python exempel steg för steg:

laddar Del modulen och skapar ett nytt dokument

Linje är egentligen ett linjesegment, därför start och slutpunkten.

Detta lägger till en Del objekttyp till dokumentet och tilldelar linjesegmentets formrepresentation till 'Shape' egenskapen på det tillagda objektet. Det är viktigt att förstå att vi använde en geometrisk primitiv (Part.line) för att skapa en topologisk form av den ( toShape metoden). Endast former kan adderass till dokumentet. I FreeCAD, så används geometriprimitiver som "byggstrukturer" för former.

Uppdaterar dokumentet. Detta förbereder också den visuella representationen av det nya del objektet.

Notera att en Linje kan skapas genom att du specificerar dess start och slutpunkt direkt i konstruktorn, till exempel Part.Line(point1,point2) eller vi kan skapa en standardlinje och ändra dess egenskaper efteråt, som vi gjorde här.

A Line can be created also using:

En cirkel kan skapas på ett liknanade sätt:

or using:

Notera igen, att vi använde cirkel (geometriprimitiv) för att konstruera en form av den. Vi kan förstår fortfarande komma åt vår konstruktionsgeometri efteråt, genom att göra:

Här tar vi formen av vårt objekt f, sedan tar vi dess lista av kanter, i detta fall kommer det endast att vara en, eftersom vi gjorde hela formen av en enda cirkel, så vi tar endast den första punkten i Kant listan, och vi tar dess kurva. Varje Kant har en Kurva, vilken är den geometriprimitiv den är baserad på.

Gå till Topologiska data skript sidan om du vill veta mer.

Tutorials

 * Import from STL or OBJ : How to import STL/OBJ files in FreeCAD
 * Export to STL or OBJ : How to export STL/OBJ files from FreeCAD
 * Whiffle Ball tutorial : How to use the Part Module