Part Sphere: Difference between revisions

From FreeCAD Documentation
m (Edit Properties.)
(typo)
 
(24 intermediate revisions by 2 users not shown)
Line 20: Line 20:
}}
}}


==Description== <!--T:34-->
== Description == <!--T:34-->


<!--T:2-->
<!--T:2-->
The [[Image:Part_Sphere.svg|24px]] '''Part Sphere''' command creates a parametric sphere solid. It is the result of revolving a circular arc profile around an axis. In the coordinate system defined by its {{PropertyData|Placement}} property, the center of the sphere is positioned at the origin, and its axis of revolution is the Z axis.
Creates a simple parametric sphere, with position, angle1, angle2, angle3 and radius parameters.

<!--T:41-->
A Part Sphere can be truncated at the top and/or bottom by changing its {{PropertyData|Angle1}} and/or {{PropertyData|Angle2}} properties. It can be turned into a segment of a sphere by changing its {{PropertyData|Angle3}} property.


</translate>
</translate>
[[File:SimpleSphere.jpg|400px]]
[[Image:Part_Sphere_Example.png|400px]]
<translate>
<translate>


Line 32: Line 35:


<!--T:3-->
<!--T:3-->
# Switch to the [[Image:Workbench_Part.svg|16px]] [[Part_Workbench|Part Workbench]]
# There are several ways to invoke the command:
# There are several ways to invoke the command:
#* Press the {{Button|[[Image:Part_Sphere.svg|16px]] Sphere}} button in the toolbar.
#* Press the {{Button|[[Image:Part_Sphere.svg|16px]] [[Part_Sphere|Part Sphere]]}} button.
#* Select the {{MenuCommand|Part → Primitives → [[Image:Part_Sphere.svg|16px]] Sphere}} from the menu bar.
#* Select the {{MenuCommand|Part → Primitives → [[Image:Part_Sphere.svg|16px]] Sphere}} option from the menu.
# The sphere is created.
# Optionally change the dimensions and {{PropertyData|Placement}} of the sphere by doing one of the following:
#* Double-click the object in the [[Tree_view|Tree view]]:
#*# The {{MenuCommand|Geometric Primitives}} task panel opens.
#*# Change one or more properties.
#*# The object is dynamically updated in the [[3D_view|3D view]].
#*# Press the {{Button|OK}} button.
#* Change the properties in the [[Property_editor|Property editor]].
#* Change the {{PropertyData|Placement}} with the [[Image:Std_TransformManip.svg|16px]] [[Std_TransformManip|Std TransformManip]] command.


<!--T:31-->
== Example == <!--T:42-->
'''Result:''' The sphere will be positioned at origin (point 0,0,0) on creation. The angle parameters permit to make a portion of sphere instead of a full sphere (they are set to 360° by default).


<!--T:32-->
<!--T:43-->
[[Image:Part_Sphere_Scripting_Example.png|thumb|Part Sphere from the scripting example]]
The properties of the object can be edited, either in the [[Property_editor|Property editor]] or by double-clicking the object in the [[Tree_view|Tree view]].


<!--T:44-->
== Notes ==
A Part Sphere object created with the [[#Scripting|scripting example]] below is shown here.


== Notes == <!--T:45-->
It is difficult to understand the meaning of the three angles.


<!--T:46-->
A full filled sphere is defined by:
* A Part Sphere can also be created with the [[Image:Part_Primitives.svg|16px]] [[Part_Primitives|Part Primitives]] command. With that command you can specify the dimensions and placement at creation time.


== Properties == <!--T:4-->
* Angle 1 = -90°
* Angle 2 = 90°
* Angle 3 = 360°


<!--T:47-->
If you increase or decrease these values, you will get a parted sphere.
See also: [[Property_editor|Property editor]].


<!--T:48-->
Angle 1 is defined as the angle between the x and z axis. 0° is equal to the x axis. Negative values are equal to the -z direction.
A Part Sphere object is derived from a [[Part_Feature|Part Feature]] object and inherits all its properties. It also has the following additional properties:


=== Data === <!--T:36-->
Angle 2 is defined as the angle between the y and z axis. 0° is equal to the y axis. Positive values are equal to the z direction.


<!--T:49-->
Angle 3 is defined as the angle between the x and y axis. 0° is equal to the x axis. The angle rotation is counterclockwise.
{{TitleProperty|Attachment}}


== Properties== <!--T:4-->
<!--T:50-->
The object has the same attachment properties as a [[Part_Part2DObject#Data|Part Part2DObject]].

=== Data === <!--T:36-->


<!--T:37-->
<!--T:37-->
Line 69: Line 81:


<!--T:33-->
<!--T:33-->
* {{PropertyData|Radius|Length}}: Radius of the sphere
* {{PropertyData|Radius|Length}}: The radius of the sphere. The default is {{Value|5mm}}.
* {{PropertyData|Angle1|Angle}}: 1st angle to cut / define the sphere (angle between XZ axis)
* {{PropertyData|Angle1|Angle}}: The start angle of the circular arc profile of the sphere. Valid range: {{Value|-90° &lt;&#61; value &lt;&#61; 90°}}. May not be equal to {{PropertyData|Angle2}}. The default is {{Value|-90°}}.
* {{PropertyData|Angle2|Angle}}: The end angle of the circular arc profile of the sphere. Valid range: {{Value|-90° &lt;&#61; value &lt;&#61; 90°}}. May not be equal to {{PropertyData|Angle1}}. The default is {{Value|90°}}. If the total angle of the arc profile is smaller than {{Value|180°}} the sphere will be truncated and have a flat face at the top and/or bottom.
* {{PropertyData|Angle2|Angle}}: 2nd angle to cut / define the sphere (angle between YZ axis)
* {{PropertyData|Angle3|Angle}}: 3rd angle to cut / define the sphere (angle between XY axis)
* {{PropertyData|Angle3|Angle}}: The total angle of revolution of the sphere. Valid range: {{Value|0° &lt; value &lt;&#61; 360°}}. The default is {{Value|360°}}. If it is smaller than {{Value|360°}} the resulting solid will be a segment of a sphere.


<!--T:23-->
== Scripting == <!--T:38-->
Because it is quite difficult to explain the meaning of the parameters angle 1, angle 2, angle 3, the picture below gives an explanation about these parameters with following values: angle 1 = -45°, angle 2 = 45° and angle 3= 90°.


<!--T:51-->
</translate>
See also: [https://freecad.github.io/SourceDoc/ Autogenerated API documentation], [[Part_scripting|Part scripting]] and [[FreeCAD_Scripting_Basics|FreeCAD Scripting Basics]].
[[File:SphereCutThreeAngles.jpg|400px]]
<translate>

== Limitations ==

If the Angle 1 and Angle 2 values are 'critical' (e.g. both have a value of 45°), the sphere cutoffs are overlapping and the result is invisible.

== Scripting == <!--T:38-->


<!--T:39-->
<!--T:39-->
A Part Sphere can be created using the following function:
A Part Sphere can be created with the {{Incode|addObject()}} method of the document:


</translate>
</translate>
Line 100: Line 104:
* The function returns the newly created object.
* The function returns the newly created object.


<!--T:52-->
The name of the object can be easily changed by
Example:


</translate>
</translate>
{{Code|code=
{{Code|code=
import FreeCAD as App
sphere.Label = "new sphereName"
}}
<translate>


doc = App.activeDocument()
You can access and modify attributes of the {{Incode|sphere}} object.


sphere = doc.addObject("Part::Sphere", "mySphere")
For example, you may wish to modify the radius or the three angles of the sphere.

</translate>
{{Code|code=
sphere.Radius = 20
sphere.Radius = 20
sphere.Angle1 = -30
sphere.Angle1 = -30
sphere.Angle2 = 45
sphere.Angle2 = 45
sphere.Angle3 = 90
sphere.Angle3 = 90
sphere.Placement = App.Placement(App.Vector(3, 9, 11), App.Rotation(75, 60, 30))
}}
<translate>


doc.recompute()
The result will be a part of a sphere, that looks like a piece of cake.

You can change its placement and orientation with:

</translate>
{{Code|code=
sphere.Placement = FreeCAD.Placement(FreeCAD.Vector(2, 4, 6), FreeCAD.Rotation(30, 45, 10))
}}
}}
<translate>
<translate>


The Part Sphere with the values of the scripting example looks like:

[[File:Part Sphere Scripting Example.png|thumb|left|Part Sphere with the values of the scripting example.]]


<!--T:30-->
<!--T:30-->

Latest revision as of 08:55, 4 March 2022

Part Sphere

Menu location
Part → Primitives → Sphere
Workbenches
Part
Default shortcut
None
Introduced in version
-
See also
Part Primitives

Description

The Part Sphere command creates a parametric sphere solid. It is the result of revolving a circular arc profile around an axis. In the coordinate system defined by its DataPlacement property, the center of the sphere is positioned at the origin, and its axis of revolution is the Z axis.

A Part Sphere can be truncated at the top and/or bottom by changing its DataAngle1 and/or DataAngle2 properties. It can be turned into a segment of a sphere by changing its DataAngle3 property.

Usage

  1. There are several ways to invoke the command:
    • Press the Part Sphere button.
    • Select the Part → Primitives → Sphere option from the menu.
  2. The sphere is created.
  3. Optionally change the dimensions and DataPlacement of the sphere by doing one of the following:
    • Double-click the object in the Tree view:
      1. The Geometric Primitives task panel opens.
      2. Change one or more properties.
      3. The object is dynamically updated in the 3D view.
      4. Press the OK button.
    • Change the properties in the Property editor.
    • Change the DataPlacement with the Std TransformManip command.

Example

Part Sphere from the scripting example

A Part Sphere object created with the scripting example below is shown here.

Notes

  • A Part Sphere can also be created with the Part Primitives command. With that command you can specify the dimensions and placement at creation time.

Properties

See also: Property editor.

A Part Sphere object is derived from a Part Feature object and inherits all its properties. It also has the following additional properties:

Data

Attachment

The object has the same attachment properties as a Part Part2DObject.

Sphere

  • DataRadius (Length): The radius of the sphere. The default is 5mm.
  • DataAngle1 (Angle): The start angle of the circular arc profile of the sphere. Valid range: -90° <= value <= 90°. May not be equal to DataAngle2. The default is -90°.
  • DataAngle2 (Angle): The end angle of the circular arc profile of the sphere. Valid range: -90° <= value <= 90°. May not be equal to DataAngle1. The default is 90°. If the total angle of the arc profile is smaller than 180° the sphere will be truncated and have a flat face at the top and/or bottom.
  • DataAngle3 (Angle): The total angle of revolution of the sphere. Valid range: 0° < value <= 360°. The default is 360°. If it is smaller than 360° the resulting solid will be a segment of a sphere.

Scripting

See also: Autogenerated API documentation, Part scripting and FreeCAD Scripting Basics.

A Part Sphere can be created with the addObject() method of the document:

sphere = FreeCAD.ActiveDocument.addObject("Part::Sphere", "mySphere")
  • Where "mySphere" is the name for the object.
  • The function returns the newly created object.

Example:

import FreeCAD as App

doc = App.activeDocument()

sphere = doc.addObject("Part::Sphere", "mySphere")
sphere.Radius = 20
sphere.Angle1 = -30
sphere.Angle2 = 45
sphere.Angle3 = 90
sphere.Placement = App.Placement(App.Vector(3, 9, 11), App.Rotation(75, 60, 30))

doc.recompute()