org.jscience.mathematics.geometry
Class Ellipse3D

java.lang.Object
  extended by org.jscience.mathematics.geometry.GeometryElement
      extended by org.jscience.mathematics.geometry.AbstractParametricCurve
          extended by org.jscience.mathematics.geometry.ParametricCurve3D
              extended by org.jscience.mathematics.geometry.Conic3D
                  extended by org.jscience.mathematics.geometry.Ellipse3D
All Implemented Interfaces:
java.io.Serializable

public class Ellipse3D
extends Conic3D

�R���� : �ȉ~��\���N���X?B

�ȉ~��?A���̒�?S�̈ʒu�Ƌ�?� X/Y ���̕�����?�?W�n (�z�u?��?AAxis2Placement3D) position �� ��?� X �����̔��a semiAxis1?A ��?� Y �����̔��a semiAxis2 �Œ�`�����?B

t ��p���??[�^�Ƃ���ȉ~ P(t) �̃p���?�g���b�N�\����?A�ȉ��̒ʂ�?B

        P(t) = position.location()
             + semiAxis1 * cos(t) * position.x()
             + semiAxis2 * sin(t) * position.y()
 

See Also:
Serialized Form

Constructor Summary
Ellipse3D(Axis2Placement3D position, double semiAxis1, double semiAxis2)
          ��?
 
Method Summary
 Point3D coordinates(double param)
          ���̋�?
 CurveCurvature3D curvature(double param)
          ���̋�?
protected  ParametricCurve3D doTransformBy(boolean reverseTransform, CartesianTransformationOperator3D transformationOperator, java.util.Hashtable transformedGeometries)
          ���̋�?
 CurveDerivative3D evaluation(double param)
          ���̋�?
 IntersectionPoint3D[] intersect(ParametricCurve3D mate)
          ���̋�?
protected  void output(java.io.PrintWriter writer, int indent)
          ?
 ParametricCurve3D parallelTranslate(Vector3D moveVec)
          ���̋�?
 double semiAxis1()
          ���̑ȉ~�̔��a1 (��?
 double semiAxis2()
          ���̑ȉ~�̔��a2 (��?
 Vector3D tangentVector(double param)
          ���̋�?
 BsplineCurve3D toBsplineCurve(ParameterSection pint)
          ���̋�?
 PureBezierCurve3D[] toPolyBezierCurves(ParameterSection pint)
          ���̋�?
 double xRadius()
          semiAxis1() �̕ʖ��?
 double yRadius()
          semiAxis2() �̕ʖ��?
 
Methods inherited from class org.jscience.mathematics.geometry.Conic3D
convertPolyBezierCurvesToOneBsplineCurve, inflexion, intersect, length, position, projectFrom, singular, toGlobal, toPolyline, torsion
 
Methods inherited from class org.jscience.mathematics.geometry.ParametricCurve3D
checkProjection, dimension, hasPolyline, identicalParameter, is3D, isComposedOfOnlyPolylines, nearestProjectFrom, nearestProjectWithDistanceFrom, pointToParameter, reverseTransformBy, transformBy, transformBy
 
Methods inherited from class org.jscience.mathematics.geometry.AbstractParametricCurve
checkValidity, checkValidity, isClosed, isCurve, isFinite, isInfinite, isNonPeriodic, isOpen, isParametric, isPeriodic, isValid, parameterDomain
 
Methods inherited from class org.jscience.mathematics.geometry.GeometryElement
getClassName, getToleranceForAngle, getToleranceForAngleAsObject, getToleranceForDistance, getToleranceForDistance2, getToleranceForDistanceAsObject, getToleranceForParameter, getToleranceForParameterAsObject, getToleranceForRealNumber, getToleranceForRealNumberAsObject, is1D, is2D, isFreeform, isPlacement, isPoint, isSurface, isTransformationOperator, isVector, makeIndent, output
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Ellipse3D

public Ellipse3D(Axis2Placement3D position,
                 double semiAxis1,
                 double semiAxis2)
��?�?W�n�Ɗe���ɑ΂��锼�a��^���ăI�u�W�F�N�g��?\�z����?B

position �� null ��?�?��ɂ�?A InvalidArgumentValueException �̗�O��?�����?B

semiAxis1, semiAxis2 �̂����ꂩ�̒l�� ��?�?ݒ肳��Ă��鉉�Z?�?�̋����̋��e��?����?�����?�?��ɂ� InvalidArgumentValueException �̗�O��?�����?B

Parameters:
position - ��?S�Ƌ�?� X/Y/Z ���̕�����?�?W�n
semiAxis1 - ���a1 (��?� X ���ɑ΂��锼�a)
semiAxis2 - ���a2 (��?� Y ���ɑ΂��锼�a)
See Also:
InvalidArgumentValueException
Method Detail

semiAxis1

public double semiAxis1()
���̑ȉ~�̔��a1 (��?�?W�n�� X �����̔��a) ��Ԃ�?B

Returns:
���a1

xRadius

public double xRadius()
semiAxis1() �̕ʖ��?�\�b�h?B

Returns:
���a1

semiAxis2

public double semiAxis2()
���̑ȉ~�̔��a2 (��?�?W�n�� Y �����̔��a) ��Ԃ�?B

Returns:
���a2

yRadius

public double yRadius()
semiAxis2() �̕ʖ��?�\�b�h?B

Returns:
���a2

coordinates

public Point3D coordinates(double param)
���̋�?��?A�^����ꂽ�p���??[�^�l�ł�?W�l��Ԃ�?B

Specified by:
coordinates in class ParametricCurve3D
Parameters:
param - �p���??[�^�l
Returns:
?W�l

tangentVector

public Vector3D tangentVector(double param)
���̋�?��?A�^����ꂽ�p���??[�^�l�ł�?ڃx�N�g����Ԃ�?B

Specified by:
tangentVector in class ParametricCurve3D
Parameters:
param - �p���??[�^�l
Returns:
?ڃx�N�g��

curvature

public CurveCurvature3D curvature(double param)
���̋�?��?A�^����ꂽ�p���??[�^�l�ł̋ȗ���Ԃ�?B

Specified by:
curvature in class ParametricCurve3D
Parameters:
param - �p���??[�^�l
Returns:
�ȗ�

evaluation

public CurveDerivative3D evaluation(double param)
���̋�?��?A�^����ꂽ�p���??[�^�l�ł̓���?���Ԃ�?B

Specified by:
evaluation in class ParametricCurve3D
Parameters:
param - �p���??[�^�l
Returns:
����?�

toPolyBezierCurves

public PureBezierCurve3D[] toPolyBezierCurves(ParameterSection pint)
���̋�?�̎w��̋�Ԃ�?Č�����L�?�x�W�G��?�̗��Ԃ�?B

pint �̑?���l��?�Βl�� (2 * ��) ��?��?�?��ɂ�?A ����� (2 * ��) �ƌ��Ȃ���?��?����?B

Parameters:
pint - ?�����p���??[�^���
Returns:
���̋�?�̎w��̋�Ԃ�?Č�����L�?�x�W�G��?�̔z��

toBsplineCurve

public BsplineCurve3D toBsplineCurve(ParameterSection pint)
���̋�?�̎w��̋�Ԃ�?Č�����L�?�a�X�v���C����?��Ԃ�?B

pint �̑?���l��?�Βl�� (2 * ��) ��?��?�?��ɂ�?A ����� (2 * ��) �ƌ��Ȃ���?��?��?A �‚����`���̋�?��Ԃ�?B

Specified by:
toBsplineCurve in class ParametricCurve3D
Parameters:
pint - ?�����p���??[�^���
Returns:
���̋�?�̎w��̋�Ԃ�?Č�����L�?�a�X�v���C����?�

intersect

public IntersectionPoint3D[] intersect(ParametricCurve3D mate)
                                throws IndefiniteSolutionException
���̋�?�Ƒ��̋�?�Ƃ̌�_��?�߂�?B

��_����?݂��Ȃ��Ƃ��͒��� 0 �̔z���Ԃ�?B

�����ȉ~�̂Ƃ���?A ��?�?ݒ肳��Ă��鉉�Z?�?�̉���?A ��ȉ~�����ꕽ��?��?�BĂ���?A ��ȉ~�̒�?S�Ԃ̋����������̋��e��?����?�����?A ��ȉ~�̋�?� X ���̂Ȃ��p�x���p�x�̋��e��?����?�����?A ��ȉ~�̋�?� X/Y �����ꂼ��ɂ‚��Ă̔��a��?��������̋��e��?��ȓ�ł���?�?��ɂ�?A ��ȉ~�̓I?[�o?[���b�v���Ă����̂Ƃ���?A IndefiniteSolutionException �̗�O��?�������?B

Specified by:
intersect in class ParametricCurve3D
Parameters:
mate - ���̋�?�
Returns:
��_�̔z��
Throws:
IndefiniteSolutionException - mate ��ȉ~��?A��ȉ~�̓I?[�o?[���b�v���Ă���?A�⪕s��ł���

parallelTranslate

public ParametricCurve3D parallelTranslate(Vector3D moveVec)
���̋�?��?A�^����ꂽ�x�N�g����?]�Bĕ�?s�ړ�������?��Ԃ�?B

Specified by:
parallelTranslate in class ParametricCurve3D
Parameters:
moveVec - ��?s�ړ��̕��Ɨʂ�\���x�N�g��
Returns:
��?s�ړ���̋�?�

doTransformBy

protected ParametricCurve3D doTransformBy(boolean reverseTransform,
                                          CartesianTransformationOperator3D transformationOperator,
                                          java.util.Hashtable transformedGeometries)
���̋�?��?A�^����ꂽ�􉽓I�ϊ����Z�q�ŕϊ�����?B

transformedGeometries ��?A �ϊ��O�̊􉽗v�f��L?[�Ƃ�?A �ϊ���̊􉽗v�f��l�Ƃ���n�b�V���e?[�u���ł���?B

this �� transformedGeometries ��ɃL?[�Ƃ��đ�?݂��Ȃ�?�?��ɂ�?A this �� transformationOperator �ŕϊ�������̂�Ԃ�?B ����?ۂɃ?�\�b�h�Ք�ł� this ��L?[?A �ϊ����ʂ�l�Ƃ��� transformedGeometries �ɒljB���?B

this �� transformedGeometries ��Ɋ�ɃL?[�Ƃ��đ�?݂���?�?��ɂ�?A ��?ۂ̕ϊ���?s�Ȃ킸?A���̃L?[�ɑΉ�����l��Ԃ�?B ����?��?��?ċA�I��?s�Ȃ���?B

transformedGeometries �� null �ł�?\��Ȃ�?B transformedGeometries �� null ��?�?��ɂ�?A ?�� this �� transformationOperator �ŕϊ�������̂�Ԃ�?B

Specified by:
doTransformBy in class ParametricCurve3D
Parameters:
reverseTransform - �t�ϊ�����̂ł���� true?A�����łȂ���� false
transformationOperator - �􉽓I�ϊ����Z�q
transformedGeometries - ��ɓ��l�̕ϊ���{�����􉽗v�f��܂ރn�b�V���e?[�u��
Returns:
�ϊ���̊􉽗v�f

output

protected void output(java.io.PrintWriter writer,
                      int indent)
?o�̓X�g��?[���Ɍ`?�?���?o�͂���?B

Specified by:
output in class GeometryElement
Parameters:
writer - PrintWriter
indent - �C���f���g��?[��
See Also:
GeometryElement