org.jscience.mathematics.geometry
Class GeometrySchemaFunction

java.lang.Object
  extended by org.jscience.mathematics.geometry.GeometrySchemaFunction

public class GeometrySchemaFunction
extends java.lang.Object

ISO 10303-42 4.6 geometry_schema function definitions �̈ꕔ��������N���X?B

ISO 10303-42:1994(E) �� 95 �y?[�W�����Q?Ƃ̂���?B


Field Summary
static Vector3D defaultAxis3D
          �R���� : axis ���w�肳��Ȃ��Ƃ��̃f�t�H���g�l
static Vector2D defaultRefDirection2D
          �Q���� : refDirection ���w�肳��Ȃ��Ƃ��̃f�t�H���g�l
static Vector3D defaultRefDirection3D
          �R���� : refDirection ���w�肳��Ȃ��Ƃ��̃f�t�H���g�l
 
Method Summary
static Vector2D[] baseAxis(Vector2D axis1, Vector2D axis2)
          ISO 10303-42 4.6.6 ?
static Vector3D[] baseAxis(Vector3D axis1, Vector3D axis2, Vector3D axis3)
          ISO 10303-42 4.6.6 ?
static Vector2D[] build2Axes(Vector2D refDirection)
          ISO 10303-42 4.6.7 ?
static Vector3D[] buildAxes(Vector3D axis, Vector3D refDirection)
          ISO 10303-42 4.6.8 ?
static Vector3D firstProjAxis(Vector3D zAxis, Vector3D arg)
          ISO 10303-42 4.6.10 ?
static Vector2D orthogonalComplement(Vector2D vec)
          ISO 10303-42 4.6.9 ?
static Vector3D secondProjAxis(Vector3D zAxis, Vector3D xAxis, Vector3D arg)
          ISO 10303-42 4.6.11 ?
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

defaultRefDirection2D

public static final Vector2D defaultRefDirection2D
�Q���� : refDirection ���w�肳��Ȃ��Ƃ��̃f�t�H���g�l


defaultAxis3D

public static final Vector3D defaultAxis3D
�R���� : axis ���w�肳��Ȃ��Ƃ��̃f�t�H���g�l


defaultRefDirection3D

public static final Vector3D defaultRefDirection3D
�R���� : refDirection ���w�肳��Ȃ��Ƃ��̃f�t�H���g�l

Method Detail

baseAxis

public static Vector2D[] baseAxis(Vector2D axis1,
                                  Vector2D axis2)
ISO 10303-42 4.6.6 ?� (����1) : �^����ꂽ��‚̃x�N�g������?��K�����ꂽ�Q��������?�߂�?B

axis1, axis2 �쳂ɒ��ⷂ��‚̒P�ʃx�N�g�� U1, U2 ��?�߂�?B ���ʂƂ��ē�����z��̗v�f?��� 2 ��?A ?�?��̗v�f����ꎲ��\���P�ʃx�N�g�� U1?A ��Ԗڂ̗v�f����ꎲ�ɒ��ⷂ��񎲂�\���P�ʃx�N�g�� U2 ��\��?B

axis1 �� null �łȂ����?A axis1 ��P�ʉ������x�N�g���� U1 �Ƃ�?A U1 �𔽎��v���� 90?���]�������x�N�g���� U2 �Ƃ���?B ���̂Ƃ��� axis2 �� null �łȂ�?A axis2 �� U2 �̓�?ς̒l�����ł����?AU2 �� 180?���]������?B

axis1 �� null �ł���?A���� axis2 �� null �łȂ����?A axis2 ��P�ʉ������x�N�g���� U2 �Ƃ�?A U2 �v���� 90?���]�������x�N�g���� U1 �Ƃ���?B

axis1, axis2 ���Ƃ�� null �ł����?A �O�??[�o���� X �����̒P�ʃx�N�g���� U1?A �O�??[�o���� Y �����̒P�ʃx�N�g���� U2 �Ƃ���?B

�Ȃ�?A?�L�Ŗ��炩�Ȃ悤��?A ���̃?�\�b�h���Ԃ�����?A?���n�ƂȂ�?�?�������?B

Parameters:
axis1 - ��ꎲ�̕���K�肷��Q�����x�N�g��
axis2 - ��񎲂̕���K�肷��Q�����x�N�g��
Returns:
�Q�����̒��̔z��
See Also:
orthogonalComplement(Vector2D)

baseAxis

public static Vector3D[] baseAxis(Vector3D axis1,
                                  Vector3D axis2,
                                  Vector3D axis3)
ISO 10303-42 4.6.6 ?� (����2) : �^����ꂽ�O�‚̃x�N�g������?��K�����ꂽ�R��������?�߂�?B

axis1, axis2, axis3 �쳂Ɍ݂��ɒ��ⷂ�O�‚̒P�ʃx�N�g�� U1, U2, U3 ��?�߂�?B ���ʂƂ��ē�����z��̗v�f?��� 3 ��?A ?�?��̗v�f����ꎲ��\���P�ʃx�N�g�� U1?A ��Ԗڂ̗v�f����񎲂�\���P�ʃx�N�g�� U2?A ?Ō�̗v�f����O����\���P�ʃx�N�g�� U3 ��\��?B

�܂� axis3 �� null �łȂ����?A axis3 ��P�ʉ������x�N�g���� U3 �Ƃ���?B axis3 �� null �ł����?A �O�??[�o���� Z �����̒P�ʃx�N�g���� U3 �Ƃ���?B

���� U1 ��ȉ���?��?�Ō��肷��?B

        U1 = firstProjAxis(U3, axis1)
 

?Ō�� U2 ��ȉ���?��?�Ō��肷��?B

        U2 = secondProjAxis(U3, U1, axis2)
 

�Ȃ�?A���̃?�\�b�h��ł�?A firstProjAxis(Vector3D, Vector3D) ����� secondProjAxis(Vector3D, Vector3D, Vector3D) �Ŕ�?������O�� catch ���Ă��Ȃ�?B

�Ȃ�?A?�L�Ŗ��炩�Ȃ悤��?A ���̃?�\�b�h���Ԃ�����?A?���n�ƂȂ�?�?�������?B

Parameters:
axis1 - ��ꎲ�̕���K�肷��R�����x�N�g��
axis2 - ��񎲂̕���K�肷��R�����x�N�g��
axis3 - ��O���̕���K�肷��R�����x�N�g��
Returns:
�R�����̒��̔z��
See Also:
firstProjAxis(Vector3D,Vector3D), secondProjAxis(Vector3D,Vector3D,Vector3D)

build2Axes

public static Vector2D[] build2Axes(Vector2D refDirection)
ISO 10303-42 4.6.7 ?� : �^����ꂽ�x�N�g������?A��?�?W�n�� X/Y ����\���P�ʃx�N�g����?�߂�?B

���ʂƂ��ē�����z��̗v�f?��� 2 ��?A ?�?��̗v�f����?�?W�n�� X ����\���P�ʃx�N�g��?A ��Ԗڂ̗v�f����?�?W�n�� Y ����\���P�ʃx�N�g����?B

refDirection �� null �łȂ����?A refDirection ��P�ʉ������x�N�g�����?�?W�n�� X ���Ƃ���?B refDirection �� null �ł����?A �O�??[�o���� X �����̒P�ʃx�N�g�����?�?W�n�� X ���Ƃ���?B

��?�?W�n�� Y �����P�ʃx�N�g����?A ?�ɋ�?�?W�n�� X �����P�ʃx�N�g���� �����v���� 90?���]��������̂ł���?B

Parameters:
refDirection - ��?�?W�n�� X ����\���Q�����x�N�g��
Returns:
��?�?W�n�� X/Y ����\���P�ʃx�N�g���̔z��

buildAxes

public static Vector3D[] buildAxes(Vector3D axis,
                                   Vector3D refDirection)
ISO 10303-42 4.6.8 ?� : �^����ꂽ�x�N�g������?A��?�?W�n�� X/Y/Z ����\���P�ʃx�N�g����?�߂�?B

���ʂƂ��ē�����z��̗v�f?��� 3 ��?A ?�?��̗v�f����?�?W�n�� X ����\���P�ʃx�N�g�� U1?A ��Ԗڂ̗v�f����?�?W�n�� Y ����\���P�ʃx�N�g�� U2?A ?Ō�̗v�f����?�?W�n�� Z ����\���P�ʃx�N�g�� U3 ��?B

�܂�?Aaxis �� null �łȂ����?A axis ��P�ʉ������x�N�g���� U3 �Ƃ���?B axis �� null �ł����?A �O�??[�o���� Z �����̒P�ʃx�N�g���� U3 �Ƃ���?B

����?AU1 ��ȉ���?��?�Ō��肷��?B

        U1 = firstProjAxis(U3, refDirection)
 

?Ō�� U3 �� U1 �̊O?ς�P�ʉ������x�N�g���� U2 �Ƃ���?B

�Ȃ�?A���̃?�\�b�h��ł�?A firstProjAxis(Vector3D, Vector3D) �Ŕ�?������O�� catch ���Ă��Ȃ�?B

Parameters:
axis - Z ����K�肷��R�����x�N�g��
refDirection - X ����K�肷��Q�����x�N�g��
Returns:
X/Y/Z ����\���P�ʃx�N�g���̔z��
See Also:
firstProjAxis(Vector3D,Vector3D)

orthogonalComplement

public static Vector2D orthogonalComplement(Vector2D vec)
ISO 10303-42 4.6.9 ?� : �^����ꂽ�x�N�g����?���� (�����v���) �� 90?���]�������x�N�g����?�߂�?B

Parameters:
vec - �x�N�g��
Returns:
?���� (�����v���) �� 90?���]�������x�N�g��

firstProjAxis

public static Vector3D firstProjAxis(Vector3D zAxis,
                                     Vector3D arg)
ISO 10303-42 4.6.10 ?� : �^����ꂽ�x�N�g���⠂镽�ʂɓ��e�����x�N�g����?�߂�?B

arg ��?AzAxis ��@?���Ƃ��镽�ʂɓ��e?��P�ʉ������x�N�g����Ԃ�?B

zAxis �� null ��?�?��ɂ� FatalException �̗�O��?�����?B

zAxis ��P�ʉ������x�N�g���� arg �̊O?σx�N�g���̑傫����?A ��?�?ݒ肳��Ă��鉉�Z?�?�̋����̋��e��?�����?�����?�?��ɂ� FatalException �̗�O��?�����?B

arg �� null �ł����?A ���̃?�\�b�h�̓Ք�� zAxis �Ɠ�����ł͂Ȃ��x�N�g����I��?A ����� arg �Ƃ��ĉ��Z��?i�߂�?B

Parameters:
zAxis - ���ʂ̖@?�����x�N�g��
arg - ���e�����x�N�g��
Returns:
���e��̃x�N�g��

secondProjAxis

public static Vector3D secondProjAxis(Vector3D zAxis,
                                      Vector3D xAxis,
                                      Vector3D arg)
ISO 10303-42 4.6.11 ?� : �^����ꂽ�x�N�g���⠂��‚̕��ʂɓ��e�����x�N�g����?�߂�?B

arg ��?A zAxis ��@?���Ƃ��镽�ʂɓ��e�������?A����� xAxis ��@?���Ƃ��镽�ʂɓ��e?��P�ʉ������x�N�g����Ԃ�?B

zAxis, xAxis �̂����ꂩ�� null ��?�?��ɂ� FatalException �̗�O��?�����?B

arg �� null �ł����?A �O�??[�o���� Y �����̒P�ʃx�N�g���� arg �Ƃ��ĉ��Z��?i�߂�?B

Parameters:
zAxis - ���̕��ʂ̖@?�����x�N�g��
xAxis - ���̕��ʂ̖@?�����x�N�g��
arg - ���e�����x�N�g��
Returns:
���e��̃x�N�g��