Part Module/sv: Difference between revisions
(Updating to match new version of source page) |
(Redirected page to Part Workbench/sv) Tag: New redirect |
||
(33 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
#REDIRECT [[Part_Workbench/sv]] |
|||
<languages/> |
|||
{{Docnav |
|||
|[[OpenSCAD Module|OpenSCAD Module]] |
|||
|[[PartDesign Workbench|PartDesign Workbench]] |
|||
|IconL=Workbench_OpenSCAD.svg |
|||
|IconR=Workbench_PartDesign.svg |
|||
}} |
|||
[[Image:Workbench_Part.svg|thumb|128px|Part workbench icon]] |
|||
{{TOCright}} |
|||
<div class="mw-translate-fuzzy"> |
|||
FreeCAD's CAD kapabilitet är baserad på [http://en.wikipedia.org/wiki/Open_CASCADE 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 [[Mesh Module/sv|Nätmodul]] objekten, är mycket komplexare, och tillåter därför mycket mer avancerade operationer, som koherenta booleska operationer, ändringshistorik och parametriskt beteende. |
|||
</div> |
|||
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|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|feature editing]]), until the final object is obtained. |
|||
Part objects are more complex than mesh objects created with the [[Mesh Workbench|Mesh Workbench]], as they permit more advanced operations like coherent boolean operations, modifications history, and parametric behaviour. |
|||
[[Image:Part_Workbench_relationships.svg|600px]] |
|||
{{Caption|The Part Workbench is the basic layer that exposes the OCCT drawing functions to all workbenches in FreeCAD.}} |
|||
<div class="mw-translate-fuzzy"> |
|||
=== Verktygen === |
|||
</div> |
|||
<div class="mw-translate-fuzzy"> |
|||
Alla Del modul verktygen finns i '''Del''' menyn som kommer fram när du laddar Del modulen. |
|||
</div> |
|||
===Primitiver=== |
|||
Detta är verktyg för att skapa primitivobjekt. |
|||
<div class="mw-translate-fuzzy"> |
|||
* [[Image:Part_Box.png|32px]] [[Part_Box/sv|Låda]]: Ritar en låda genom att ge dess dimensioner |
|||
* [[Image:Part_Cylinder.png|32px]] [[Part_Cylinder/sv|Cylinder]]: Ritar en cylinder genom att ge dess dimensioner |
|||
* [[Image:Part_Sphere.png|32px]] [[Part_Sphere/sv|Sfär]]: Ritar en sfär genom att ge dess dimensioner |
|||
* [[Image:Part_Cone.png|32px]] [[Part_Cone/sv|Kon]]: Ritar en kon genom att ge dess dimensioner |
|||
* [[Image:Part_Torus.png|32px]] [[Part_Torus/sv|Torus]]: Ritar en torus (ring) genom att ge dess dimensioner |
|||
* [[Image:Part_CreatePrimitives.png|32px]] [[Part_CreatePrimitives/sv|CreatePrimitives]]: Ett verktyg för att skapa olika parametriska geometriska primitiver |
|||
* [[Image:Part_Shapebuilder.png|32px]] [[Part_Shapebuilder/sv|Shapebuilder]]: Ett verktyg för att skapa mer komplexa former från olika parametriska geometriska primitiver |
|||
</div> |
|||
===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. |
|||
<div class="mw-translate-fuzzy"> |
|||
* [[Image:Part_Extrude.png|32px]] [[Part_Extrude/sv|Extrudera]]: Extruderar plana ytor på ett objekt |
|||
* [[Image:Part_Revolve.png|32px]] [[Part_Revolve/sv|Rotera]]: Skapar ett objekt genom att rotera ett annat objekt runt en axel |
|||
* [[Image:Part_Mirror.png|32px]] [[Part_Mirror/sv|Spegling]]: Speglar de valda objekten runt en given axel |
|||
* [[Image:Part_Fillet.png|32px]] [[Part_Fillet/sv|Fasning]]: Fasar (rundar) kanterna på ett objekt |
|||
* [[Image:Part_Chamfer.png|32px]] [[Part_Chamfer/sv|Fasning]]: Fasar (klipper) kanter på ett objekt |
|||
* [[Image:Part_RuledSurface.png|32px]] [[Part_RuledSurface/sv|Ruled Surface]]: |
|||
* [[Image:Part_Loft.png|32px]] [[Part_Loft/sv|Loft]]: Lofts från en profil till en annan |
|||
* [[Image:Part_Sweep.png|32px]] [[Part_Sweep/sv|Sweep]]: Sopa en eller flera profiler längs en bana |
|||
</div> |
|||
* [[Image:Part_CompOffsetTools.png|48px]] [[Part_CompOffsetTools|Offset tools]]: |
|||
** [[Image:Part_Offset.svg|32px]] [[Part_Offset|3D Offset]]: Constructs a parallel shape at a certain distance from original. |
|||
** [[Image:Part_Offset2D.svg|32px]] [[Part_Offset2D|2D Offset]]: Constructs a parallel wire at certain distance from original, or enlarges/shrinks a planar face. {{Version|0.17}} |
|||
* [[Image:Part_Thickness.svg|32px]] [[Part_Thickness|Thickness]]: Hollows out a solid, leaving openings next to select faces. |
|||
* [[Image:Part_ProjectionOnSurface.png|32px]] [[Part_ProjectionOnSurface|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. {{Version|0.19}} |
|||
* [[Image:Part_Compound.svg|48px]] [[Part_CompCompoundTools|Compound Tools]]: |
|||
** [[Image:Part_Compound.svg|32px]] [[Part_Compound|Make compound]]: Creates a compound from the selected objects. |
|||
** [[Image:Part_ExplodeCompound.svg|32px]] [[Part_ExplodeCompound|Explode Compound]]: Tool to split up compounds of shapes |
|||
** [[Image:Part CompoundFilter.svg|32px]] [[Part CompoundFilter|Compound Filter]]: The CompoundFilter can be used to extract the individual pieces. |
|||
<div class="mw-translate-fuzzy"> |
|||
* [[Image:Part_Booleans.png|32px]] [[Part_Booleans/sv|Boolesk]]: Utför booleska operationer på objekt |
|||
* [[Image:Part_Union.png|32px]] [[Part_Union/sv|Förena]]: Förenar två objekt |
|||
* [[Image:Part_Common.png|32px]] [[Part_Common/sv|Gemensamt]]: Tar bort den gemensamma (skärningen) delen mellan två objekt |
|||
* [[Image:Part_Cut.png|32px]] [[Part_Cut/sv|Klipp]]: Klipper (tar bort) ett objekt från ett annat |
|||
</div> |
|||
* [[Image:Part_CompJoinFeatures.png|48px]] [[Part CompJoinFeatures|Join features]]: smart booleans for walled objects (e.g., pipes) {{Version|0.16}} |
|||
** [[Image:Part_JoinConnect.svg|32px]] [[Part_JoinConnect|Connect]]: Connects interiors of objects {{Version|0.16}} |
|||
** [[Image:Part_JoinEmbed.svg|32px]] [[Part_JoinEmbed|Embed]]: Embeds a walled object into another walled object {{Version|0.16}} |
|||
** [[Image:Part_JoinCutout.svg|32px]] [[Part_JoinCutout|Cutout]]: Creates a cutout in a wall of an object for another walled object {{Version|0.16}} |
|||
* [[Image:Part_CompSplittingTools.png|48px]] [[Part CompSplittingTools|Splitting tools]]: {{Version|0.17}} |
|||
** [[Image:Part_BooleanFragments.svg|32px]] [[Part_BooleanFragments|Boolean fragments]]: makes all the pieces that can be obtained by Boolean operations between objects {{Version|0.17}} |
|||
** [[Image:Part SliceApart.svg|32px]] [[Part_SliceApart|Slice a part]]: tool to split shapes by intersection with other shapes |
|||
** [[Image:Part_Slice.svg|32px]] [[Part_Slice|Slice]]: Splits an object into pieces by intersections with another object {{Version|0.17}} |
|||
** [[Image:Part_XOR.svg|32px]] [[Part_XOR|XOR]]: removes space shared by even number of objects (symmetric version of [[Part_Cut|Cut]]) {{Version|0.17}} |
|||
<div class="mw-translate-fuzzy"> |
|||
* [[Image:Part Defeaturing.svg|32px]] [[Part_Defeaturing/sv|Defeaturing]]: (v0.18) |
|||
* [[Image:Part_Section.png|32px]] [[Part_Section/sv|Sektionera]]: Skapar en sektion genom att skära ett objekt med ett sektioneringsplan |
|||
* [[Image:Part_SectionCross.png|32px]] [[Part_SectionCross/sv|Cross sections...]]: |
|||
</div> |
|||
=== Measure === |
|||
[[File:Std Measure Menu.png|64px]] [[Std Measure Menu|Measure]]: Allows linear and angular measurement between points, edges, and faces. |
|||
* [[Image:Part_Measure_Linear.svg|32px]] [[Part_Measure_Linear|Measure Linear]] allows you to make linear measurements. |
|||
* [[Image:Part_Measure_Angular.svg|32px]] [[Part_Measure_Angular|Measure Angular]] allows you to make angular measurements. |
|||
* [[Image:Part_Measure_Refresh.svg|32px]] [[Part_Measure_Refresh|Measure Refresh]] updates the measurements on screen. |
|||
* [[Image:Part_Measure_Clear_All.svg|32px]] [[Part_Measure_Clear_All|Clear All]] Clears all measurements. |
|||
* [[Image:Part_Measure_Toggle_All.svg|32px]] [[Part_Measure_Toggle_All|Toggle All]] shows or hides all measurements. |
|||
* [[Image:Part_Measure_Toggle_3d.svg|32px]] [[Part_Measure_Toggle_3d|Toggle 3D]] shows or hides 3D measurements. |
|||
* [[Image:Part_Measure_Toggle_Delta.svg|32px]] [[Part_Measure_Toggle_Delta|Toggle Delta]] shows or hides delta measurements. |
|||
===Other tools=== |
|||
* [[Image:Part_Import.svg|32px]] [[Part Import|Import]]: This tool allows you to add a file *.IGES, *.STEP, *.BREP to the current document. |
|||
* [[Image:Part_Export.svg|32px]] [[Part Export|Export]]: This tool allows you to export a part object in a *.IGES, *.STEP, *.BREP file. |
|||
* [[File:Part_BoxSelection.svg|32px]] [[Part_BoxSelection|BoxSelection]]: add to the selection the faces of the shapes that are touches by the rectangular selection. {{Version|0.19}} |
|||
* [[Image:Part_ShapeFromMesh.svg|32px]] [[Part ShapeFromMesh|Shape from Mesh]]: Creates a shape object from a mesh object. |
|||
* [[File:Part_PointsFromMesh.svg|32px]] [[Part PointsFromMesh|Points from mesh]]: creates a shape object made of points from the mesh. {{Version|0.19}} |
|||
* [[Part_ConvertToSolid|Convert to solid]]: Converts a shape object to a solid object. |
|||
* [[Part_ReverseShapes|Reverse shapes]]: Flips the normals of all faces of the selected object. |
|||
* Create a copy: |
|||
** [[Image:Part_SimpleCopy.svg|32px]] [[Part_SimpleCopy|Create simple copy]]: Creates a simple copy of the selected object. |
|||
** [[File:Part_TransformedCopy.svg|32px]] [[Part_TransformedCopy|Create transformed copy]]: creates a transformed copy of the selected object. {{Version|0.19}} |
|||
** [[File:Part_ElementCopy.svg|32px]] [[Part_ElementCopy|Create shape element copy]]: creates a copy from an element (vertex, edge, face) of the selected object. {{Version|0.19}} |
|||
** [[Image:Part_RefineShape.svg|32px]] [[Part_RefineShape|Refine shape]]: Cleans faces by removing unnecessary lines. |
|||
* [[Image:Part_CheckGeometry.svg|32px]] [[Part CheckGeometry|Check geometry]]: Checks the geometry of selected objects for errors. |
|||
=== Contextual Menu items === |
|||
*[[Std_SetAppearance|Appearance]]: determines appearance of the whole part (color transparency etc.). |
|||
*[[Std SetColors|Set colors]]: assigns colors to part faces. |
|||
== Preferences == |
|||
<!--The PartDesign preferences are defined in the Part workbench and both the PartDesign workbench and the Part workbench use them--> |
|||
* [[Image:Preferences-part_design.svg|32px]] [[PartDesign_Preferences|Preferences]]: preferences available for Part Tools (the Part workbench also uses the PartDesign Preferences). |
|||
* [[Image:Preferences-import-export.svg|32px]] [[Import_Export_Preference|Import-Export Preferences]]: preferences available for importing from and exporting to different file formats. |
|||
* [[Fine-tuning]]: some extra parameters to fine-tune Part behavior. |
|||
<div class="mw-translate-fuzzy"> |
|||
=== Förklaring av koncepten === |
|||
</div> |
|||
<div class="mw-translate-fuzzy"> |
|||
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. |
|||
</div> |
|||
<div class="mw-translate-fuzzy"> |
|||
Vi skulle kunna säga att geometriprimitiver är "formlösa" byggblock, och former är den riktiga spatiala geometrin som är byggd på dem. |
|||
</div> |
|||
<div class="mw-translate-fuzzy"> |
|||
För att få en komplett lista på dem, se [http://www.opencascade.org/org/doc/ 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. |
|||
</div> |
|||
<blockquote style="color: slategray">''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.''</blockquote> |
|||
<blockquote style="color: slategray">''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.'' - [https://www.opencascade.com/content/geometry-and-topology Source]</blockquote> |
|||
<hr /> |
|||
<blockquote style="color: slategray">''Thus, Topology defines the relationship between simple geometric entities, which can be linked together to represent complex shapes.'' - [https://www.opencascade.com/doc/occt-7.0.0/overview/html/occt_user_guides__modeling_data.html Modeling Data User's Guide]</blockquote> |
|||
[[File:ClassTopoDS_Shape_inherit_graph.png]] |
|||
<div class="mw-translate-fuzzy"> |
|||
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. |
|||
</div> |
|||
<div class="mw-translate-fuzzy"> |
|||
Från en kant eller yta så kan du också gå tillbaka till dess motsvarande geometriska primitiv. |
|||
</div> |
|||
<div class="mw-translate-fuzzy"> |
|||
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. |
|||
</div> |
|||
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. |
|||
[[File:Part_TopoShape_relationships.svg|600px]] |
|||
{{Caption|The {{incode|Part::TopoShape}} class is the geometrical object that is seen on screen. Essentially all workbenches use these [[Part_TopoShape|TopoShapes]] internally to build and display edges, faces, and solids.}} |
|||
<div class="mw-translate-fuzzy"> |
|||
=== Skript === |
|||
</div> |
|||
{{Emphasis|See also:}} [[Part scripting|Part scripting]] |
|||
<div class="mw-translate-fuzzy"> |
|||
Den huvudsakliga data strukturen som används i Del modulen är [http://en.wikipedia.org/wiki/Boundary_representation 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_Scripting_Basics/sv|FreeCAD Skript Grunder]] sidan, för att lära dig mer. |
|||
</div> |
|||
The most basic object that can be created is a [[Part Feature|Part Feature]], which has a simple {{PropertyData|Placement}} property, and basic properties to define its color and appearance. |
|||
Another simple object used in 2D geometrical objects is [[Part Part2DObject|Part Part2DObject]], which is the base of [[Sketcher_SketchObject|Sketcher SketchObject]] ([[Sketcher Workbench|Sketcher]]), and most [[Draft Workbench|Draft elements]]. |
|||
=== Test script === |
|||
Test the creation of [[Part_Primitives|Part Primitives]] with a script. {{Version|0.19}} |
|||
{{Code|code= |
|||
import parttests.part_test_objects as pto |
|||
pto.create_test_file("example_file") |
|||
}} |
|||
This script is located in the installation directory of the program, and can be examined to see how the basic primitives are built. |
|||
{{Code|code= |
|||
$INSTALL_DIR/Mod/Part/parttests/part_test_objects.py |
|||
}} |
|||
=== Exempel === |
|||
För att skapa en linje, växla till Python konsolen och skriv: |
|||
{{Code|code= |
|||
import Part,PartGui |
|||
doc=App.newDocument() |
|||
l=Part.LineSegment() |
|||
l.StartPoint=(0.0,0.0,0.0) |
|||
l.EndPoint=(1.0,1.0,1.0) |
|||
doc.addObject("Part::Feature","Line").Shape=l.toShape() |
|||
doc.recompute() |
|||
}} |
|||
Låt oss gå igenom ovanstående python exempel steg för steg: |
|||
{{Code|code= |
|||
import Part,PartGui |
|||
doc=App.newDocument() |
|||
}} |
|||
laddar Del modulen och skapar ett nytt dokument |
|||
{{Code|code= |
|||
l=Part.LineSegment() |
|||
l.StartPoint=(0.0,0.0,0.0) |
|||
l.EndPoint=(1.0,1.0,1.0) |
|||
}} |
|||
Linje är egentligen ett linjesegment, därför start och slutpunkten. |
|||
{{Code|code= |
|||
doc.addObject("Part::Feature","Line").Shape=l.toShape() |
|||
}} |
|||
<div class="mw-translate-fuzzy"> |
|||
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. |
|||
</div> |
|||
{{Code|code= |
|||
doc.recompute() |
|||
}} |
|||
Uppdaterar dokumentet. Detta förbereder också den visuella representationen av det nya del objektet. |
|||
<div class="mw-translate-fuzzy"> |
|||
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. |
|||
</div> |
|||
A Line can be created also using: |
|||
{{Code|code= |
|||
import FreeCAD |
|||
import Part |
|||
DOC = FreeCAD.newDocument() |
|||
def mycreateLine(pt1, pt2, objName): |
|||
obj = DOC.addObject("Part::Line", objName) |
|||
obj.X1 = pt1[0] |
|||
obj.Y1 = pt1[2] |
|||
obj.Z1 = pt1[2] |
|||
obj.X2 = pt2[0] |
|||
obj.Y2 = pt2[1] |
|||
obj.Z2 = pt2[2] |
|||
DOC.recompute() |
|||
return obj |
|||
line = mycreateLine((0,0,0), (0,10,0), "LineName") |
|||
}} |
|||
En cirkel kan skapas på ett liknanade sätt: |
|||
{{Code|code= |
|||
import Part |
|||
doc = App.activeDocument() |
|||
c = Part.Circle() |
|||
c.Radius=10.0 |
|||
f = doc.addObject("Part::Feature", "Circle") |
|||
f.Shape = c.toShape() |
|||
doc.recompute() |
|||
}} |
|||
or using: |
|||
{{Code|code= |
|||
import FreeCAD |
|||
import Part |
|||
DOC = FreeCAD.newDocument() |
|||
def mycreateCircle(rad, objName): |
|||
obj = DOC.addObject("Part::Circle", objName) |
|||
obj.Radius = rad |
|||
DOC.recompute() |
|||
return obj |
|||
circle = mycreateCircle(5.0, "CircleName") |
|||
}} |
|||
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: |
|||
{{Code|code= |
|||
s = f.Shape |
|||
e = s.Edges[0] |
|||
c = e.Curve |
|||
}} |
|||
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å. |
|||
<div class="mw-translate-fuzzy"> |
|||
Gå till [[Topological data scripting/sv|Topologiska data skript]] sidan om du vill veta mer. |
|||
</div> |
|||
== Tutorials == |
|||
* [[Import_from_STL_or_OBJ|Import from STL or OBJ]] : How to import STL/OBJ files in FreeCAD |
|||
* [[Export_to_STL_or_OBJ|Export to STL or OBJ]] : How to export STL/OBJ files from FreeCAD |
|||
* [[Whiffle_Ball_tutorial|Whiffle Ball tutorial]] : How to use the Part Module |
|||
<div class="mw-translate-fuzzy"> |
|||
{{docnav/sv|Mesh Module/sv|Drawing Module/sv}} |
|||
</div> |
|||
{{Part Tools navi{{#translation:}}}} |
|||
{{Userdocnavi{{#translation:}}}} |
|||
[[Category:Workbenches{{#translation:}}]] |
Latest revision as of 14:58, 27 April 2024
Redirect to: