|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Interface used for accessing to an Axis3D with an Origin and its AX,AY,AZ axis components.
Usualy Axis3D are used to define 3D scene objects local axes.
Axis3D can also be useful to compute 3D space calculations & transformations.
IScene3DObject
,
IPoint3D
Method Summary | |
IAxis3D |
add(double x,
double y,
double z)
Add/Move this axis by a given vector. |
IAxis3D |
add(IPoint3D point)
Add/Move this axis by a given 3d point. |
IAxis3D |
copy(IAxis3D source)
Copy value from an other axis3D. |
IPoint3D |
getAX()
Gets a copy of the x axis (ax) in the current space. |
IPoint3D |
getAY()
Gets a copy of the y axis (ay) in the current space. |
IPoint3D |
getAZ()
Gets a copy of the z axis (az) in the current space. |
IPoint3D |
getOrigin()
Gets origine for axis3D in the current space. |
IAxis3D |
getRotationXZY(IPoint3D rotation)
Update the given 3d point with the rotation of this axis. |
IAxis3D |
init()
(Re)Initialise this axis3D. |
IAxis3D |
rotate(double angle,
double x,
double y,
double z)
Rotate this axis3D around and arbitrary axis. |
IAxis3D |
rotate(double angle,
double px,
double py,
double pz,
double x,
double y,
double z)
Rotate this axis3D around and arbitrary axis using a specific pivot point. |
IAxis3D |
rotate(double angle,
double px,
double py,
double pz,
IPoint3D axis)
Rotate this axis3D around and arbitrary axis using a specific pivot point. |
IAxis3D |
rotate(double angle,
IPoint3D axis)
Rotate this axis3D around and arbitrary axis. |
IAxis3D |
rotate(double angle,
IPoint3D pivot,
IPoint3D axis)
Rotate this axis3D around and arbitrary axis using a specific pivot point. |
IAxis3D |
rotateX(double angle)
Rotate this axis3D around the X axis. |
IAxis3D |
rotateY(double angle)
Rotate this axis3D around the Y axis. |
IAxis3D |
rotateZ(double angle)
Rotate this axis3D around the Z axis. |
IAxis3D |
sub(double x,
double y,
double z)
Substract/Move this axis by a given vector. |
IAxis3D |
sub(IPoint3D point)
Substract/Move this axis by a given 3d point. |
Method Detail |
public IPoint3D getAX()
public IPoint3D getAY()
public IPoint3D getAZ()
public IPoint3D getOrigin()
public IAxis3D copy(IAxis3D source)
source
- source axis3D to copy value from.
public IAxis3D rotateX(double angle)
X axis means vector(1,0,0) and does not means this axis AX vector.
You may call myaxis.rotate(angle,myaxis.getAX()) to rotate "myaxis" around it own AX axis.
angle
- rotation angle expressed in radian.
public IAxis3D rotateY(double angle)
Y axis means vector(0,1,0) and does not means this axis AY vector.
You may call myaxis.rotate(angle,myaxis.getAY()) to rotate "myaxis" around it own AY axis.
angle
- rotation angle expressed in radian.
public IAxis3D rotateZ(double angle)
Z axis means vector(0,0,1) and does not means this axis AZ vector.
You may call myaxis.rotate(angle,myaxis.getAZ()) to rotate "myaxis" around it own AZ axis.
angle
- rotation angle expressed in radian.
public IAxis3D rotate(double angle, double x, double y, double z)
angle
- rotation angle expressed in radian.x
- rotation axis x component.y
- rotation axis y component.z
- rotation axis z component.
public IAxis3D rotate(double angle, double px, double py, double pz, double x, double y, double z)
angle
- rotation angle expressed in radian.px
- pivot point x position.py
- pivot point y position.pz
- pivot point z position.x
- rotation axis x component relative to pivot point.y
- rotation axis y component relative to pivot point.z
- rotation axis z component relative to pivot point.
public IAxis3D rotate(double angle, IPoint3D axis)
angle
- rotation angle expressed in radian.axis
- rotation axis.
public IAxis3D rotate(double angle, double px, double py, double pz, IPoint3D axis)
angle
- rotation angle expressed in radian.px
- pivot point x position.py
- pivot point y position.pz
- pivot point z position.axis
- rotation axis relative to pivot point.
public IAxis3D rotate(double angle, IPoint3D pivot, IPoint3D axis)
angle
- rotation angle expressed in radian.pivot
- pivot point.axis
- rotation axis relative to pivot point.
public IAxis3D add(double x, double y, double z)
x
- vector x component.y
- vector y component.z
- vector z component.
public IAxis3D sub(double x, double y, double z)
x
- vector x component.y
- vector y component.z
- vector z component.
public IAxis3D add(IPoint3D point)
point
- vector.
public IAxis3D sub(IPoint3D point)
point
- vector.
public IAxis3D getRotationXZY(IPoint3D rotation)
this function will update the given point3d with the rotations
that must be applied to a new axis3D to get the same axis.
ex:
axis.getRotationXZY(rotation);
To get a new axis3D aligned to this axis you can do the following:
newAxis.rotateX(rotation.getX()).rotateZ(rotation.getZ()).rotateY(rotation.getY())
Note: rotations must be applied in the following order : RX,RZ,RY.
rotation
- point that will received the axis3D rotation rx,ry,rz.
public IAxis3D init()
this function will do the following
- set Origin to (0,0,0)
- set AX to (1,0,0)
- set AY to (0,1,0)
- set AZ to (0,0,1)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |