Part RefineShape/cs: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{Docnav
{{Docnav
|[[Part_ElementCopy|ElementCopy]]
|[[Part_ElementCopy|ElementCopy]]
|[[Part_CheckGeometry|CheckGeometry]]
|[[Part_CheckGeometry|CheckGeometry]]
|[[Part_Module|Part]]
|[[Part_Workbench|Part]]
|IconL=Part_ElementCopy.svg
|IconL=Part_ElementCopy.svg
|IconR=Part_CheckGeometry.svg
|IconR=Part_CheckGeometry.svg
Line 10: Line 11:


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
{{GuiCommand/cs|Name=Part RefineShape|Name/cs=Díl Vyčistit tvar|MenuLocation=Díl → Vyčistit tvar|Workbenches=[[Part Module/cs|Díl]], [[OpenSCAD_Module/cs|OpenSCAD]]|SeeAlso=}}
{{GuiCommand/cs|Name=Part RefineShape|Name/cs=Díl Vyčistit tvar|MenuLocation=Díl → Vyčistit tvar|Workbenches=[[Part_Workbench/cs|Díl]], [[OpenSCAD_Workbench/cs|OpenSCAD]]|SeeAlso=}}
</div>
</div>


<span id="Description"></span>
<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
==Popis==
==Popis==
Line 18: Line 20:
</div>
</div>


The {{Button|[[Image:Part_RefineShape.svg|16px]] [[Part_RefineShape|Part RefineShape]]}} produces a non-parametric copy with a refined shape, that is, with certain edges and faces cleaned up.
The [[Image:Part_RefineShape.svg|24px]] '''Part RefineShape''' command produces parametric copies with a refined shape from selected objects. It can for example be used to remove unnecessary edges left over after a [[Part_Fuse|Part Fuse]] operation.

After certain boolean operations, like [[Part_Fuse|Part Fuse]], some lines from the previous shapes may remain visible. This tool produces a copy of that boolean result, and cleans up those seams.

'''Alternatively''', to produce other non-parametric copies use {{Button|[[Image:Part_SimpleCopy.svg|16px]] [[Part SimpleCopy|Simple Copy]]}}, {{Button|[[Image:Part_TransformedCopy.svg|16px]][[Part TransformedCopy|Transformed Copy]]}}, and {{Button|[[Image:Part_ElementCopy.svg|16px]] [[Part ElementCopy|Element Copy]]}}


[[File:PartRefineShape_it.png]]
[[File:PartRefineShape_it.png]]
{{Caption|Original boolean result (left), and refined shape copy (right).}}
{{Caption|Original with 11 faces (left), and refined copy with 7 faces (right).}}


<span id="Usage"></span>
<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
==Použití==
==Použití==
Line 35: Line 34:
</div>
</div>


# Select an object that you wish to clean and copy.
# Select one or more objects.
# Go to the menu {{MenuCommand|Part → Create a copy → [[Image:Part_RefineShape.svg|16px]] Refine shape}}.
# Select the {{MenuCommand|Part → Create a copy → [[Image:Part_RefineShape.svg|16px]] Refine shape}} option from the menu.
# A cleaned, independent copy of the original object is created; the original object is hidden.
# For each object a cleaned, parametric copy is created
# The original objects are hidden.


== Notes ==
As of {{VersionPlus|0.19}} the result defaults to a parametric (linked) copy.


* This command can be used as the last step in a traditional [[constructive solid geometry|constructive solid geometry]] workflow.
This behavior can be changed in the [[Image:Std_DlgParameter.svg|24px|link=Std DlgParameter]] [[Std DlgParameter|Parameter editor]]:
* It may help to clean up the model before applying other features, such as [[Part_Fillet|fillets]].
# Go to the subgroup: {{incode|BaseApp/Preferences/Mod/Part}}
* Cleaning up an object may prevent 3D printers from printing unwanted edges once the object is exported to a mesh format.
# Change {{incode|ParametricRefine}} of type {{incode|Boolean}} to {{FALSE}} to get the old behavior (independent copy).
* This command can also be used after converting a mesh to a shape ([[Part_ShapeFromMesh|Part ShapeFromMesh]]).

* By default this command creates parametric (linked) copies. There is [[Fine-tuning|fine-tuning]] parameter to change this to non-parametric copies. More information about parametric/non-parametric copy behavior can be found in this [https://forum.freecad.org/viewtopic.php?t=42993 forum post].
See other parameters in [[Fine-tuning|Fine-tuning]].
* Some interesting information about what is happening with placement and how to access by Python can be found in this [https://forum.freecad.org/viewtopic.php?t=77568#p675456 forum post].

=== Limitations ===

* The refinement algorithm only works on shells. Therefore it iterates over the shells of the input shape and then for each shell it creates a new shell with joined faces wherever possible. This means that if your input shape is only a face, wire, edge or vertex then the algorithm does nothing.
* Unlike the [[Image:OpenSCAD_RefineShapeFeature.svg|24px]] [[OpenSCAD RefineShapeFeature|OpenSCAD RefineShapeFeature]] command, [[Image:Part_RefineShape.svg|24px]] [[Part_RefineShape|Part RefineShape]] won't update when the preceding shapes are changed.

=== Notes ===

* This function can be used as the last step in the modelling work to clean up shapes in a traditional [[constructive solid geometry|constructive solid geometry]] workflow.
* This function may help to clean up the model before applying another feature, such as a [[Part_Fillet|Fillet]].
* This clean up may stop 3D printers from printing unwanted edges once the solid model is exported to a mesh format.
* This function can also be used after converting a mesh to a shape ([[Part_ShapeFromMesh|ShapeFromMesh]]) to clean up the residual edges on flat faces.


==Scripting==
==Scripting==
Line 66: Line 55:
shape.removeSplitter()
shape.removeSplitter()
}}
}}

The '''Part RefineShape''' command can be applied after selecting one or more objects in the [[Tree_view|Tree view]]:

{{Code|code=
FreeCADGui.runCommand('Part_RefineShape')
}}

The selection can be manual (by using the mouse), or via the [[Python_console|Python console]].<br>
To know more about selecting objects programmatically, refer to [[Selection_methods|Selection methods]].




Line 80: Line 60:
|[[Part_ElementCopy|ElementCopy]]
|[[Part_ElementCopy|ElementCopy]]
|[[Part_CheckGeometry|CheckGeometry]]
|[[Part_CheckGeometry|CheckGeometry]]
|[[Part_Module|Part]]
|[[Part_Workbench|Part]]
|IconL=Part_ElementCopy.svg
|IconL=Part_ElementCopy.svg
|IconR=Part_CheckGeometry.svg
|IconR=Part_CheckGeometry.svg

Latest revision as of 14:13, 5 February 2024

Díl Vyčistit tvar

Umístění Menu
Díl → Vyčistit tvar
Pracovní stoly
Díl, OpenSCAD
Výchozí zástupce
Nikdo
Představen ve verzi
-
Viz také
Nikdo

Popis

Vyčistí zbytečné čáry. Po logických operacích zůstávají viditelné čáry, které definovaly původní tvary. Nástroj vytváří kopii vyčištěného objektu.

The Part RefineShape command produces parametric copies with a refined shape from selected objects. It can for example be used to remove unnecessary edges left over after a Part Fuse operation.

Original with 11 faces (left), and refined copy with 7 faces (right).

Použití

  1. Vyberte tvar, který má být vyčištěn.
  2. Klikněte na menu Díl → Vyčistit tvar.
  • Je vytvořena kopie objektu a je kompletně vyčištěna, původní objekt je skryt.
  • Nově vytvořená kopie je nezávislá na originálu.
  1. Select one or more objects.
  2. Select the Part → Create a copy → Refine shape option from the menu.
  3. For each object a cleaned, parametric copy is created
  4. The original objects are hidden.

Notes

  • This command can be used as the last step in a traditional constructive solid geometry workflow.
  • It may help to clean up the model before applying other features, such as fillets.
  • Cleaning up an object may prevent 3D printers from printing unwanted edges once the object is exported to a mesh format.
  • This command can also be used after converting a mesh to a shape (Part ShapeFromMesh).
  • By default this command creates parametric (linked) copies. There is fine-tuning parameter to change this to non-parametric copies. More information about parametric/non-parametric copy behavior can be found in this forum post.
  • Some interesting information about what is happening with placement and how to access by Python can be found in this forum post.

Scripting

The Python command for refining a shape is the following:

shape.removeSplitter()