org.jscience.mathematics.geometry
Class BsplineKnot

java.lang.Object
  extended by org.jscience.mathematics.geometry.BsplineKnot
All Implemented Interfaces:
java.io.Serializable

public class BsplineKnot
extends java.lang.Object
implements java.io.Serializable

�a�X�v���C���̃m�b�g���\���N���X?B

���̃N���X�̃C���X�^���X��?A�ȉ��̑�?��l�ɂ�BĂa�X�v���C���̃m�b�g���\��?B

��?ۂ̃m�b�g��̒�����?A periodic �� false �ł���� (degree + nControlPoints + 1)?A periodic �� true �ł���� (2 * degree + nControlPoints + 1) �ɂȂ�?B

[��?��Ԃ�?S��?�?]

degree �� 1 ��?�łȂ���΂Ȃ�Ȃ�?B

knotSpec �� KnotType.UNIFORM_KNOTS ��?�?��ɂ�

knotSpec �� KnotType.UNSPECIFIED ��?�?��ɂ�

knotSpec �� KnotType.QUASI_UNIFORM_KNOTS ���邢�� KnotType.PICEWISE_BEZIER_KNOTS �ł��BĂ͂Ȃ�Ȃ�?B

See Also:
Serialized Form

Constructor Summary
BsplineKnot(int degree, int knotSpec, boolean periodic, int[] knotMultiplicities, double[] knots, int nControlPoints)
          �e�t�B?
 
Method Summary
 BsplineKnot beautify()
          �m�b�g?
 int degree()
          ���̃m�b�g��̎�?
 boolean isNonPeriodic()
          ���̃m�b�g�񂪊J�����`���ł��邩�ۂ���Ԃ�?
 boolean isPeriodic()
          ���̃m�b�g�񂪕‚����`���ł��邩�ۂ���Ԃ�?
 double knotAt(int i)
          ���̃m�b�g�񂪎?
 int[] knotMultiplicities()
          ���̃m�b�g��̃m�b�g��?
 int knotMultiplicityAt(double knot)
          ���̃m�b�g���?
 int knotMultiplicityAt(int i)
          ���̃m�b�g�񂪎?
 double[] knots()
          ���̃m�b�g��̃m�b�g�l�̔z���Ԃ�?
 int knotSpec()
          ���̃m�b�g��̃m�b�g�̎�ʂ�Ԃ�?
 double knotValueAt(int n)
          ���̃m�b�g��� n �Ԗڂ̃m�b�g�l��Ԃ�?
 int nControlPoints()
          ���̃m�b�g���?
 int nKnots()
          ���̃m�b�g��̃m�b�g�l�̔z��̒�����Ԃ�?
 int nKnotValues()
          ���̃m�b�g��̃m�b�g��?
 int nSegments()
          ���̃m�b�g�񂪎����a�X�v���C���̃Z�O�?
 void output(java.io.OutputStream out)
          ?
protected  void output(java.io.PrintWriter writer, int indent, int index)
          ?
 BsplineKnot reverse()
          ���̃m�b�g��𔽓]�����m�b�g���Ԃ�?
 int segmentIndex(double param)
          ���̃m�b�g���?
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BsplineKnot

public BsplineKnot(int degree,
                   int knotSpec,
                   boolean periodic,
                   int[] knotMultiplicities,
                   double[] knots,
                   int nControlPoints)
�e�t�B?[���h��?ݒ肷��l��^���ăI�u�W�F�N�g��?\�z����?B

��?��̒l�� [��?��Ԃ�?S��?�?] �𖞂����Ȃ�?�?��ɂ�?A InvalidArgumentValueException �̗�O��?�����?B

Parameters:
degree - ��?�
knotSpec - �m�b�g�̎�� (KnotType)
periodic - �‚����`�����ۂ���\���t���O
knotMultiplicities - �m�b�g��?d�x�̔z��
knots - �m�b�g�l�̔z��
nControlPoints - ?���_��?�
See Also:
KnotType, InvalidArgumentValueException
Method Detail

degree

public int degree()
���̃m�b�g��̎�?���Ԃ�?B

Returns:
��?�

nControlPoints

public int nControlPoints()
���̃m�b�g���?���_��?���Ԃ�?B

Returns:
?���_��?�

knotSpec

public int knotSpec()
���̃m�b�g��̃m�b�g�̎�ʂ�Ԃ�?B

Returns:
�m�b�g�̎��
See Also:
KnotType

nKnots

public int nKnots()
���̃m�b�g��̃m�b�g�l�̔z��̒�����Ԃ�?B

�m�b�g�̎�ʂ� KnotType.UNSPECIFIED �łȂ�?�?��ɂ� FatalException �̗�O��?�����?B

Returns:
�m�b�g�l�̔z��̒���
See Also:
FatalException

knotMultiplicities

public int[] knotMultiplicities()
���̃m�b�g��̃m�b�g��?d�x�̔z���Ԃ�?B

�m�b�g�̎�ʂ� KnotType.UNSPECIFIED �łȂ�?�?��ɂ� FatalException �̗�O��?�����?B

Returns:
�m�b�g��?d�x�̔z��
See Also:
FatalException

knots

public double[] knots()
���̃m�b�g��̃m�b�g�l�̔z���Ԃ�?B

�m�b�g�̎�ʂ� KnotType.UNSPECIFIED �łȂ�?�?��ɂ� FatalException �̗�O��?�����?B

Returns:
�m�b�g�l�̔z��
See Also:
FatalException

knotMultiplicityAt

public int knotMultiplicityAt(int i)
���̃m�b�g�񂪎?�ƒm�b�g��?d�x�̔z��� i �Ԗڂ̒l��Ԃ�?B

�m�b�g�̎�ʂ� KnotType.UNSPECIFIED �łȂ�?�?��ɂ� FatalException �̗�O��?�����?B

Returns:
i �Ԗڂ̃m�b�g��?d�x
See Also:
FatalException

knotMultiplicityAt

public int knotMultiplicityAt(double knot)
���̃m�b�g���?A�w��̃m�b�g�l�ɑΉ�����m�b�g��?d�x��Ԃ�?B

�^����ꂽ�l���m�b�g�l�łȂ�?�?��ɂ� 0 ��Ԃ�?B

�Ȃ�?A���̃?�\�b�h��?������l��Ԃ�����ɂ� �m�b�g��?��`����Ă���K�v������?B

Parameters:
knot - ��?d�x�𒲂ׂ�m�b�g�l
Returns:
�w��̃m�b�g�l�̃m�b�g��?d�x
See Also:
beautify()

knotAt

public double knotAt(int i)
���̃m�b�g�񂪎?�ƒm�b�g�l�̔z��� i �Ԗڂ̒l��Ԃ�?B

�m�b�g�̎�ʂ� KnotType.UNSPECIFIED �łȂ�?�?��ɂ� FatalException �̗�O��?�����?B

Returns:
i �Ԗڂ̃m�b�g�l
See Also:
FatalException

isPeriodic

public boolean isPeriodic()
���̃m�b�g�񂪕‚����`���ł��邩�ۂ���Ԃ�?B

Returns:
�‚����`���ł���� true?A�����łȂ���� false

isNonPeriodic

public boolean isNonPeriodic()
���̃m�b�g�񂪊J�����`���ł��邩�ۂ���Ԃ�?B

Returns:
�J�����`���ł���� true?A�����łȂ���� false

nSegments

public int nSegments()
���̃m�b�g�񂪎����a�X�v���C���̃Z�O�?���g��?���Ԃ�?B

Returns:
�Z�O�?���g��?�

nKnotValues

public int nKnotValues()
���̃m�b�g��̃m�b�g��?���Ԃ�?B

�����Ō���?u�m�b�g��?�?v�Ƃ� knots �t�B?[���h��?ݒ肳�ꂽ�m�b�g�l�̔z��̒����ł͂Ȃ�?A �a�X�v���C���̃m�b�g��{���̃m�b�g��?��ł���?B

Returns:
�m�b�g��?�

knotValueAt

public double knotValueAt(int n)
���̃m�b�g��� n �Ԗڂ̃m�b�g�l��Ԃ�?B

�����Ō���?un �Ԗ�?v�Ƃ� knots �t�B?[���h��?ݒ肳�ꂽ�m�b�g�l�̔z���̃C���f�b�N�X�ł͂Ȃ�?A �a�X�v���C���̃m�b�g��{���̈Ӗ��ł̃C���f�b�N�X�ł���?B

Parameters:
n - �C���f�b�N�X
Returns:
n �Ԗڂ̃m�b�g�l

segmentIndex

public int segmentIndex(double param)
���̃m�b�g���?A�^����ꂽ�p���??[�^�l�ɑΉ�����Z�O�?���g�̃C���f�b�N�X��Ԃ�?B

param �� ParameterDomain.wrap(double) ���邢�� ParameterDomain.force(double) ��p����?��K������Ă���K�v������?B

Parameters:
param - �p���??[�^�l
Returns:
�Ή�����Z�O�?���g�̃C���f�b�N�X

beautify

public BsplineKnot beautify()
�m�b�g?���?��`����?B

�^����ꂽ�m�b�g��ɂ‚��đ�?d�x�� knotMultiplicities �Ŗ�������Ă��Ȃ���?���?C?�����?B

Returns:
?C?����ꂽ�m�b�g��

reverse

public BsplineKnot reverse()
���̃m�b�g��𔽓]�����m�b�g���Ԃ�?B

���̃?�\�b�h���Ԃ��m�b�g��̃p���??[�^��`��� 0 �Ŏn�܂�?B

Returns:
���]�����m�b�g��

output

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

index �̒l�͈ȉ��̈Ӗ���?��?B

                0 : ��?�p�̕������?o�͂���
                1 : �Ȗʂ� U ���p�̕������?o�͂���
                2 : �Ȗʂ� V ���p�̕������?o�͂���
 

Parameters:
writer - PrintWriter
indent - �C���f���g��?[��
index - �L?[�??[�h��I�ⷂ�l

output

public void output(java.io.OutputStream out)
?o�̓X�g��?[���Ɍ`?�?���?o�͂���?B

Parameters:
out - ?o�̓X�g��?[��