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 Part Workbench allows the user to access and use the OCCT objects and functions. Part objects, unlike Mesh objects, are more complex, and therefore 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.

These are tools for creating primitive objects.


 * [[Image:Part_Box.png|32px]] Box: Draws a box by specifying its dimensions
 * [[Image:Part_Cone.png|32px]] Cone: Draws a cone by specifying its dimensions
 * [[Image:Part_Cylinder.png|32px]] Cylinder: Draws a cylinder by specifying its dimensions
 * [[Image:Part_Sphere.png|32px]] Sphere: Draws a sphere by specifying its dimensions
 * [[Image:Part_Torus.png|32px]] Torus: Draws a torus (ring) by specifying its dimensions
 * [[Image:Part_CreatePrimitives.png|32px]] CreatePrimitives: A tool to create various parametric geometric primitives
 * [[Image:Part_Shapebuilder.png|32px]] Shapebuilder: A tool to create more complex shapes from various parametric geometric primitives

Modifying objects
These are tools for modifying existing objects. They will allow you to choose which object to modify.


 * [[Image:Part_Extrude.png|32px]] Extrude: Extrudes planar faces of an object
 * [[Image:Part_Revolve.png|32px]] Revolve: Creates a solid by revolving another object (not solid) around an axis
 * [[Image:Part_Mirror.png|32px]] Mirror: Mirrors the selected object on a given mirror plane
 * [[Image:Part_Fillet.png|32px]] Fillet: Fillets (rounds) edges of an object
 * [[Image:Part_Chamfer.png|32px]] Chamfer: Chamfers edges of an object
 * [[Image:Part_RuledSurface.png|32px]] Ruled Surface:
 * [[Image:Part_Loft.png|32px]] Loft: Lofts from one profile to another
 * [[Image:Part_Sweep.png|32px]] Sweep: Sweeps one or more profiles along a path


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


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


 * [[Image:Part_CompCompoundTools.png|48px]] Compound Tools:
 * [[Image:Part MakeCompound.png|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.png|32px]] Compound Filter: The CompoundFilter can be used to extract the individual pieces.


 * [[Image:Part_Booleans.png|32px]] Booleans: Performs boolean operations on objects
 * [[Image:Part_Union.png|32px]] Union: Fuses (unions) two objects
 * [[Image:Part_Common.png|32px]] Common: Extracts the common (intersection) part of two objects
 * [[Image:Part_Cut.png|32px]] Cut: Cuts (subtracts) one object from another


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


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


 * [[Image:Part Defeaturing.svg|32px]] Defeaturing: (v0.18)
 * [[Image:Part_Section.png|32px]] Section: Creates a section by intersecting an object with a section plane
 * [[Image:Part_SectionCross.png|32px]] Cross sections...:

Other tools

 * [[Image:Part ImportCAD.png|32px]] Import CAD: This tool allows you to add a file *.IGES, *.STEP, *.BREP to the current document.
 * [[Image:Part ExportCAD.png|32px]] Export CAD: This tool allows you to export a part object in a *.IGES, *.STEP, *.BREP file.
 * [[Image:Part ShapeFromMesh.png|32px]] Shape from Mesh: Creates a shape object from a mesh object.
 * Convert to solid: Converts a shape object to a solid object.
 * Reverse shapes: Flips the normals of all faces of the selected object.
 * [[Image:Part CreateSimpleCopy‎.svg|32px]] Create simple copy: Creates a simple copy of the selected object.
 * [[Image:Part RefineShape.png|32px]] Refine shape: Cleans faces by removing unnecessary lines.
 * [[Image:Part CheckGeometry.png|32px]] Check geometry: Checks the geometry of selected objects for errors.
 * Measure: Allows linear and angular measurement between points/edges/faces.
 * [[Image:Part Attachment.svg|32px]] Attachment: Attachment is a utility to attach an object to another one.



Preferences

 * [[Image:Preferences-import-export.svg|32px]] Preference ... Import Export

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.

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.

Skript
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.

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.

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

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