Difference between revisions of "API Panel.Position.RotateX"

From Flowcode Help
Jump to navigationJump to search
(XML import)
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<sidebar>API contents</sidebar>
+
<sidebar>API Contents</sidebar>
 
Rotates the object around the X axis
 
Rotates the object around the X axis
  
Line 11: Line 11:
  
 
==Parameters==
 
==Parameters==
[[Variable types|HANDLE]] ''Handle''
+
[[Variable Types|HANDLE]] ''Handle''
 
:The position or component to update
 
:The position or component to update
 
:''The default value for this parameter is: '''''this'''
 
:''The default value for this parameter is: '''''this'''
  
[[Variable types|HANDLE]] ''PivotHandle''
+
[[Variable Types|HANDLE]] ''PivotHandle''
 
:An optional position to treat as the origin to rotate around
 
:An optional position to treat as the origin to rotate around
  
[[Variable types|FLOAT]] ''Degrees''
+
[[Variable Types|FLOAT]] ''Degrees''
 
:Number of degrees to rotate by
 
:Number of degrees to rotate by
  
Line 27: Line 27:
  
 
==Detailed description==
 
==Detailed description==
There are several api calls that deal with rotation of an object and the effects can be quite complex. Here we are going to deal exlusively with the RotateX() api call. An object can rotate around it's own axis(x,y,z), or around the axis of another object's axis(x,y,x) if a different object is named as the pivothandle in the api call.
+
[[file:SIMAPI_Panel_Position_Rotate_Pic1.png|375px|right]]
When dealing with rotation in Flowcode it is important therefore to understand the following points
+
The rotation call allows an object to be [[Object Rotation|rotated]] around any point in the target objects local X axis. This has the effect of altering the '''pitch''' of the object - in terms of an aeroplane this makes the plane climb or bank.
  
#Rotation of an object occurs from the centre of an object or group.
+
The handle must be a valid handle to a component or position, or a quoted (string) name of an object that can be selected on the panel.
#The axis orientation of the object or group may well be different from the axis on the system panel(world axis)
 
#The axis orientation of another object if used as a pivothandle could be different from the object to rotate.
 
  
 +
The ''PivotHandle'' is an optional position to rotate around. The object will adjust its angle as though it is sliding around the edge of a circle, so at 180 degrees the object will appear 'upside-down' in the same way as a human walking around the globe from the north to south pole.
  
[[file:SIMAPI_Panel_Position_Rotate_Pic1.png|375px|right]]
+
If the ''PivotHandle'' is zero the object rotates around its own center.
===Rotating around an object's own axis===
+
 
This technique is the simplest way of rotating an object or group when the type of rotation required is '''not''' relative to any other object or component.  
+
The image to the right shows a cube with it's axis positions identified.  
The image to the right shows a cube with it's axis positions identified. Note in this context the x,y,z axis is illustrated just to highlight the explanation of technique, it is not representative of the axis position in Flowcode v6.  
+
 
 +
Calling the simulation api '''Panel.Position.RotateX(MyCube,MyCube,1)''' will rotate the object in one-degree steps along it's X-axis as shown by the red rotation arc. To rotate the cube in a counter direction simply specify a negative number for the degrees parameter.
 +
 
 +
The screenshot from Flowcode v6 below shows a cuboid with it's internal axis shown (red is the X-axis line), and also a circle that cuts right through the cuboid's X-axis (see example section below for links to the file) When the program runs the cuboid rotates along it's X axis. Note also incidentally the cuboids axis is also the same as the world axis but this might not always be the case.
 +
 
 +
[[file:SIMAPI_Panel_Position_Rotate_Pic2.png|400px]]
 +
 
 +
 
 +
===See also===
  
Calling the simulation api Panel.Position.RotateX(MyCube,MyCube,1) will rotate the object in one-degree steps along it's X-axis as shown by the red rotation arc. To rotate the cube in a counter direction simply specify a negative number for the degrees parameter.
+
[[Object Rotation]]
  
The screenshot from Flowcode v6 below shows a cubiod with it's internal axis shown (red is the X-axis line), and also a circle that cuts right through the cuboid's X-axis (see example section below for links to the file) When the program runs the cuboid rotates along it's X axis. Note also incidentally the cuboids axis is also the same as the world axis but this might not always be the case.[[file:SIMAPI_Panel_Position_Rotate_Pic2.png|800px]]
+
[[Local and World Space]]
  
 
==Examples==
 
==Examples==
Line 48: Line 55:
 
* Add to a calculation icon: <pre class="brush:[cpp]">::Panel.Position.RotateX(handle, pivothandle, degrees)</pre>
 
* Add to a calculation icon: <pre class="brush:[cpp]">::Panel.Position.RotateX(handle, pivothandle, degrees)</pre>
  
''<span style="color:red;">No additional information</span>''
+
===Flowcode example file===
 +
Download {{Fcfile|SIMAPI_Panel_Position_RotateX_v1.fcfx|SIMAPI_Panel_Position_RotateX_v1}} and open it in Flowcode v6.
 +
 
 +
The sample file {{Fcfile|SIMAPI Panel Position RotateXYZ.fcfx|SIMAPI Panel Position RotateXYZ}} rotates a grouped object around its X, Y, and Z axis.

Latest revision as of 15:57, 16 January 2014

<sidebar>API Contents</sidebar> Rotates the object around the X axis

Class hierarchy

Panel

Position
RotateX

Parameters

HANDLE Handle

The position or component to update
The default value for this parameter is: this

HANDLE PivotHandle

An optional position to treat as the origin to rotate around

FLOAT Degrees

Number of degrees to rotate by


Return value

This call does not return a value


Detailed description

SIMAPI Panel Position Rotate Pic1.png

The rotation call allows an object to be rotated around any point in the target objects local X axis. This has the effect of altering the pitch of the object - in terms of an aeroplane this makes the plane climb or bank.

The handle must be a valid handle to a component or position, or a quoted (string) name of an object that can be selected on the panel.

The PivotHandle is an optional position to rotate around. The object will adjust its angle as though it is sliding around the edge of a circle, so at 180 degrees the object will appear 'upside-down' in the same way as a human walking around the globe from the north to south pole.

If the PivotHandle is zero the object rotates around its own center.

The image to the right shows a cube with it's axis positions identified.

Calling the simulation api Panel.Position.RotateX(MyCube,MyCube,1) will rotate the object in one-degree steps along it's X-axis as shown by the red rotation arc. To rotate the cube in a counter direction simply specify a negative number for the degrees parameter.

The screenshot from Flowcode v6 below shows a cuboid with it's internal axis shown (red is the X-axis line), and also a circle that cuts right through the cuboid's X-axis (see example section below for links to the file) When the program runs the cuboid rotates along it's X axis. Note also incidentally the cuboids axis is also the same as the world axis but this might not always be the case.

SIMAPI Panel Position Rotate Pic2.png


See also

Object Rotation

Local and World Space

Examples

Calling in a calculation

  • Add to a calculation icon:
    ::Panel.Position.RotateX(handle, pivothandle, degrees)

Flowcode example file

Download FC6 Icon.png SIMAPI_Panel_Position_RotateX_v1 and open it in Flowcode v6.

The sample file FC6 Icon.png SIMAPI Panel Position RotateXYZ rotates a grouped object around its X, Y, and Z axis.