org.jscience.mathematics.geometry
Class BoundedLine3D

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.BoundedCurve3D
                  extended by org.jscience.mathematics.geometry.BoundedLine3D
All Implemented Interfaces:
java.io.Serializable

public class BoundedLine3D
extends BoundedCurve3D

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

?��?A �n�_��?W�l spnt �� ?I�_��?W�l epnt �Œ�`�����?B

?�͔���I�ȗL� �?��?A���̃p���??[�^��`��� [0, 1] �ƂȂ�?B

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

        P(t) = (1 - t) * spnt + t * epnt
 

See Also:
Serialized Form

Constructor Summary
BoundedLine3D(Point3D spnt, Point3D epnt)
          �n�_��?
BoundedLine3D(Point3D spnt, Vector3D dir)
          �n�_��?
 
Method Summary
 Point3D coordinates(double param)
          ���̋�?
 CurveCurvature3D curvature(double param)
          ���̋�?
protected  ParametricCurve3D doTransformBy(boolean reverseTransform, CartesianTransformationOperator3D transformationOperator, java.util.Hashtable transformedGeometries)
          ���̋�?
 Point3D epnt()
          ����?
 CurveDerivative3D evaluation(double param)
          ���̋�?
 PointOnCurve3D[] inflexion()
          ���̋�?
 CurveCurveInterference3D[] interfere(BoundedCurve3D mate)
          ���̗L� �?
 CurveCurveInterference3D interfere1(BoundedLine3D mate)
          ����?
 IntersectionPoint3D[] intersect(ParametricCurve3D mate)
          ���̋�?
 IntersectionPoint3D[] intersect(ParametricSurface3D mate)
          ���̋�?
 IntersectionPoint3D intersect1(BoundedLine3D mate)
          ����?
 double length()
          ���̗L� �?
 double length(ParameterSection pint)
          �^����ꂽ�p���??
protected  void output(java.io.PrintWriter writer, int indent)
          ?
 ParametricCurve3D parallelTranslate(Vector3D moveVec)
          ���̋�?
 PointOnCurve3D project1From(Point3D point)
          �^����ꂽ�_���炱�̋�?
 PointOnCurve3D[] projectFrom(Point3D point)
          �^����ꂽ�_���炱�̋�?
 BoundedLine3D reverse()
          ����?
 PointOnCurve3D[] singular()
          ���̋�?
 Point3D spnt()
          ����?
 Vector3D tangentVector(double param)
          ���̋�?
 BsplineCurve3D toBsplineCurve(ParameterSection pint)
          ���̋�?
 Line3D toLine()
           
 Polyline3D toPolyline(ParameterSection pint, ToleranceForDistance tol)
          ���̋�?
 double torsion(double param)
          ���̋�?
 Vector3D unitizedDirection()
          ����?
 
Methods inherited from class org.jscience.mathematics.geometry.BoundedCurve3D
endPoint, startPoint, toBsplineCurve, toPolyline
 
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

BoundedLine3D

public BoundedLine3D(Point3D spnt,
                     Point3D epnt)
�n�_��?I�_��^���ăI�u�W�F�N�g��?\�z����?B

spnt �� epnt �̋�������?�?ݒ肳��Ă��鉉�Z?�?�̋����̋��e��?�����?�������� InvalidArgumentValueException �̗�O��?�����?B

Parameters:
spnt - �n�_
epnt - ?I�_
See Also:
Point3D.identical(Point3D), InvalidArgumentValueException

BoundedLine3D

public BoundedLine3D(Point3D spnt,
                     Vector3D dir)
�n�_��?u�n�_����?I�_�܂ł̃x�N�g��?v��^���ăI�u�W�F�N�g��?\�z����?B

dir �̑傫������?�?ݒ肳��Ă��鉉�Z?�?�̋����̋��e��?�����?�������� InvalidArgumentValueException �̗�O��?�����?B

Parameters:
spnt - �n�_
dir - �n�_����?I�_�܂ł̃x�N�g��
See Also:
InvalidArgumentValueException
Method Detail

spnt

public Point3D spnt()
����?�̎n�_��Ԃ�?B

Returns:
�n�_

epnt

public Point3D epnt()
����?��?I�_��Ԃ�?B

Returns:
?I�_

length

public double length(ParameterSection pint)
�^����ꂽ�p���??[�^��Ԃɂ����邱�̋�?�̎ ��?�ł̒��� (���̂�) ��Ԃ�?B

pint �̑?���l�͕��ł©�܂�Ȃ�?B

�^����ꂽ�p���??[�^��Ԃ���`���O��Ă���?�?��ɂ�?A ParameterOutOfRange �̗�O��?�����?B

Specified by:
length in class AbstractParametricCurve
Parameters:
pint - ��?�̒�����?�߂�p���??[�^���
Returns:
�w�肳�ꂽ�p���??[�^��Ԃɂ������?�̒���
See Also:
ParameterOutOfRange

length

public double length()
���̗L� �?�S�̂̎ ��?�ł̒��� (���̂�) ��Ԃ�?B

Overrides:
length in class BoundedCurve3D
Returns:
��?�S�̂̒���

coordinates

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

�^����ꂽ�p���??[�^��Ԃ���`���O��Ă���?�?��ɂ�?A ParameterOutOfRange �̗�O��?�����?B

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

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

?�̋ȗ���?A?�� 0 �ł���?B

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

torsion

public double torsion(double param)
���̋�?��?A�^����ꂽ�p���??[�^�l�ł̃��C����Ԃ�?B

?�̃��C����?A?�� 0 �ł���?B

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

evaluation

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

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

singular

public PointOnCurve3D[] singular()
���̋�?�̓Hٓ_��Ԃ�?B

?�ɂ͓Hٓ_�͑�?݂��Ȃ���̂Ƃ���?A���� 0 �̔z���Ԃ�?B

Specified by:
singular in class ParametricCurve3D
Returns:
�Hٓ_�̔z��

inflexion

public PointOnCurve3D[] inflexion()
���̋�?�̕ϋȓ_��Ԃ�?B

?�ɂ͕ϋȓ_�͑�?݂��Ȃ���̂Ƃ���?A���� 0 �̔z���Ԃ�?B

Specified by:
inflexion in class ParametricCurve3D
Returns:
�ϋȓ_�̔z��

projectFrom

public PointOnCurve3D[] projectFrom(Point3D point)
�^����ꂽ�_���炱�̋�?�ւ̓��e�_��?�߂�?B

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

����_����?�ւ̓��e�_��?���?A���ꂪ��?݂���?�?��ɂ�?A�K�� 1 �ł���?B

Specified by:
projectFrom in class ParametricCurve3D
Parameters:
point - ���e���̓_
Returns:
���e�_
See Also:
project1From(Point3D)

project1From

public PointOnCurve3D project1From(Point3D point)
�^����ꂽ�_���炱�̋�?�ւ̓��e�_���‹?�߂�?B

���e�_����?݂��Ȃ��Ƃ��� null ��Ԃ�?B

����_����?�ւ̓��e�_��?���?A���ꂪ��?݂���?�?��ɂ�?A�K�� 1 �ł���?B

Parameters:
point - ���e���̓_
Returns:
���e�_
See Also:
projectFrom(Point3D)

toPolyline

public Polyline3D toPolyline(ParameterSection pint,
                             ToleranceForDistance tol)
���̋�?�̎w��̋�Ԃ�?A�^����ꂽ��?��Œ�?�ߎ�����|�����C����Ԃ�?B

���ʂƂ��ĕԂ����|�����C����?\?�����_�� ���̋�?��x?[�X�Ƃ��� PointOnCurve3D �� ���邱�Ƃ��҂ł���?B

������|�����C����?�Ɍ����ɂ���?��?Č�����̂�?A ���̃?�\�b�h�̓Ք�ł� tol �̒l�͎Q?Ƃ��Ȃ�?B

Specified by:
toPolyline in class ParametricCurve3D
Parameters:
pint - ��?�ߎ�����p���??[�^���
tol - �����̋��e��?�
Returns:
���̋�?�̎w��̋�Ԃ�?�ߎ�����|�����C��
See Also:
PointOnCurve3D

toBsplineCurve

public BsplineCurve3D toBsplineCurve(ParameterSection pint)
���̋�?�̎w��̋�Ԃ쵖���?Č�����L�? Bspline ��?��Ԃ�?B

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

toLine

public Line3D toLine()

unitizedDirection

public Vector3D unitizedDirection()
����?��?i?s����P�ʉ������x�N�g����Ԃ�?B

Returns:
�P�ʉ����ꂽ?i?s���

intersect

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

���܂̂Ƃ���?A���̋@�\�̓T�|?[�g����Ă��Ȃ�?B ��B�?A�‚˂� UnsupportedOperationException �̗�O��?�����?B

Specified by:
intersect in class ParametricCurve3D
Parameters:
mate - ���̋�?�
Returns:
��_�̔z��
See Also:
UnsupportedOperationException

intersect

public IntersectionPoint3D[] intersect(ParametricSurface3D mate)
���̋�?�Ƒ��̋Ȗʂ̌�_��?�߂�?B

���܂̂Ƃ���?A���̋@�\�̓T�|?[�g����Ă��Ȃ�?B ��B�?A�‚˂� UnsupportedOperationException �̗�O��?�����?B

Specified by:
intersect in class ParametricCurve3D
Parameters:
mate - ���̋Ȗ�
Returns:
��_�̔z��
See Also:
UnsupportedOperationException

interfere1

public CurveCurveInterference3D interfere1(BoundedLine3D mate)
����?�Ƒ���?�Ƃ̊�?‚�?�߂�?B

��?‚���?݂��Ȃ�?�?��ɂ� null ��Ԃ�?B

Parameters:
mate - ����?�
Returns:
��?�

interfere

public CurveCurveInterference3D[] interfere(BoundedCurve3D mate)
���̗L� �?�Ƒ��̗L� �?�̊�?‚�?�߂�?B

��?‚���?݂��Ȃ�?�?��ɂ͒��� 0 �̔z���Ԃ�?B

Specified by:
interfere in class BoundedCurve3D
Parameters:
mate - ���̋�?�
Returns:
���?�̊�?‚̔z��

intersect1

public IntersectionPoint3D intersect1(BoundedLine3D mate)
                               throws IndefiniteSolutionException
����?�Ƒ���?�̌�_��?�߂�?B

��_����?݂��Ȃ�?�?��ɂ� null ��Ԃ�?B

Parameters:
mate - ����?�
Returns:
��_�̔z��
Throws:
IndefiniteSolutionException - ��?�I?[�o?[���b�v������

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�ړ���̋�?�

reverse

public BoundedLine3D reverse()
����?�𔽓]����?��Ԃ�?B

Returns:
���]����?�

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