|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.jscience.mathematics.geometry.GeometryElement
org.jscience.mathematics.geometry.AbstractParametricCurve
org.jscience.mathematics.geometry.ParametricCurve2D
org.jscience.mathematics.geometry.BoundedCurve2D
org.jscience.mathematics.geometry.FreeformCurveWithControlPoints2D
org.jscience.mathematics.geometry.BsplineCurve2D
public class BsplineCurve2D
�Q���� : ��L�? (��?���) �a�X�v���C����?��їL�?�a�X�v���C����?��\���N���X?B
���̃N���X�̃C���X�^���X��?A �a�X�v���C���̃m�b�g��Ɋւ���?�� knotData (BsplineKnot)
��?��?B
?���_��Ȃǂ�ێ?����t�B?[���h�ɂ��Ă�?A
�X?[�p?[�N���X�̉�?� ��Q?�?B
�a�X�v���C����?�̃p���??[�^��`���?A�Ή�����m�b�g��ɂ�BČ��܂�?B
t ��p���??[�^�Ƃ���a�X�v���C����?� P(t) �̃p���?�g���b�N�\����?A�ȉ��̒ʂ�?B
n = ��?�̎�?�
m = �Z�O�?���g��?� (�J�����`�� : (?���_��?� - ��?�̎�?�), �����`�� : ?���_��?�)
di = controlPoints[i]
wi = weights[i]
�Ƃ���?A��L�?�a�X�v���C����?��
P(t) = (di * Nn,i(t)) �̑?�a (i = 0, ..., (m + n - 1))
�L�?�a�X�v���C����?��
(wi * di * Nn,i(t)) �̑?�a
P(t) = -------------------------- (i = 0, ..., (m + n - 1))
(wi * Nn,i(t)) �̑?�a
������ Nn,i(t) �͂a�X�v���C������?�?B
�Ȃ�?A�����`����?�?��� i > (?���_��?� - 1) �ƂȂ� i �ɂ��Ă�?A
�Ή�����?���_��?d�݂����ꂼ�� dj, wj (j = i - ?���_��?�) �ƂȂ�?B
| Field Summary |
|---|
| Fields inherited from class org.jscience.mathematics.geometry.FreeformCurveWithControlPoints2D |
|---|
controlPoints, weights |
| Constructor Summary | |
|---|---|
BsplineCurve2D(int degree,
boolean periodic,
int[] knotMultiplicities,
double[] knots,
Point2D[] controlPoints)
�m�b�g�����? |
|
BsplineCurve2D(int degree,
boolean periodic,
int[] knotMultiplicities,
double[] knots,
Point2D[] controlPoints,
double[] weights)
�m�b�g�����? |
|
BsplineCurve2D(int degree,
boolean periodic,
int knotSpec,
Point2D[] controlPoints)
�m�b�g��������� �m�b�g��̎�ʂ�? |
|
BsplineCurve2D(int degree,
boolean periodic,
int knotSpec,
Point2D[] controlPoints,
double[] weights)
�m�b�g��������� �m�b�g��̎�ʂ�? |
|
BsplineCurve2D(int degree,
int[] knotMultiplicities,
double[] knots,
Point2D[] controlPoints)
�m�b�g�����? |
|
BsplineCurve2D(int degree,
int[] knotMultiplicities,
double[] knots,
Point2D[] controlPoints,
double[] weights)
�m�b�g�����? |
|
BsplineCurve2D(int degree,
int knotSpec,
Point2D[] controlPoints)
�m�b�g��������� �m�b�g��̎�ʂ�? |
|
BsplineCurve2D(int degree,
int knotSpec,
Point2D[] controlPoints,
double[] weights)
�m�b�g��������� �m�b�g��̎�ʂ�? |
|
BsplineCurve2D(Point2D[] points,
double[] params)
�_���? |
|
BsplineCurve2D(Point2D[] points,
double[] params,
Vector2D[] endvecs)
�_���? |
|
BsplineCurve2D(Point2D[] points,
double[] params,
Vector2D[] endvecs,
boolean isClosed)
�_���? |
|
BsplineCurve2D(Point2D[] points,
double[] params,
Vector2D[] endDir,
boolean isClosed,
ToleranceForDistance tol,
ToleranceForDistance midTol)
�_���? |
|
| Methods inherited from class org.jscience.mathematics.geometry.FreeformCurveWithControlPoints2D |
|---|
allocateDoubleArray, controlPoints, convRational0Deriv, convRational1Deriv, convRational2Deriv, isFreeform, isPolynomial, isRational, makeUniformWeights, nControlPoints, setCoordinatesToDoubleArray, toDoubleArray, weightAt, weights |
| Methods inherited from class org.jscience.mathematics.geometry.BoundedCurve2D |
|---|
endPoint, fillet, length, offsetByBoundedCurve, offsetByBsplineCurve, startPoint, toPolyline |
| Methods inherited from class org.jscience.mathematics.geometry.ParametricCurve2D |
|---|
checkProjection, dimension, fillet, hasPolyline, identicalParameter, is2D, isComposedOfOnlyPolylines, nearestProjectFrom, nearestProjectWithDistanceFrom, offsetByBoundedCurve, pointToParameter, reverseTransformBy, transformBy, transformBy |
| Methods inherited from class org.jscience.mathematics.geometry.AbstractParametricCurve |
|---|
checkValidity, checkValidity, isClosed, isCurve, isFinite, isInfinite, isNonPeriodic, isOpen, isParametric, isValid, parameterDomain |
| Methods inherited from class org.jscience.mathematics.geometry.GeometryElement |
|---|
getClassName, getToleranceForAngle, getToleranceForAngleAsObject, getToleranceForDistance, getToleranceForDistance2, getToleranceForDistanceAsObject, getToleranceForParameter, getToleranceForParameterAsObject, getToleranceForRealNumber, getToleranceForRealNumberAsObject, is1D, is3D, 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 |
|---|
public BsplineCurve2D(int degree,
boolean periodic,
int[] knotMultiplicities,
double[] knots,
Point2D[] controlPoints)
super(controlPoints)
���?o������?B
knotData ��?\�z�ɂ�?A
new BsplineKnot(degree, KnotType.UNSPECIFIED, periodic, knotMultiplicities, knots, nControlPoints())
���?o������?B
degree - ��?�̎�?�periodic - �����`�����ۂ���\���t���OknotMultiplicities - �m�b�g��?d�x�̔z��knots - �m�b�g�l�̔z��controlPoints - ?���_�̔z��
public BsplineCurve2D(int degree,
int[] knotMultiplicities,
double[] knots,
Point2D[] controlPoints)
super(controlPoints)
���?o������?B
knotData ��?\�z�ɂ�?A
new BsplineKnot(degree, KnotType.UNSPECIFIED, false, knotMultiplicities, knots, nControlPoints())
���?o������?B
degree - ��?�̎�?�knotMultiplicities - �m�b�g��?d�x�̔z��knots - �m�b�g�l�̔z��controlPoints - ?���_�̔z��
public BsplineCurve2D(int degree,
boolean periodic,
int[] knotMultiplicities,
double[] knots,
Point2D[] controlPoints,
double[] weights)
super(controlPoints, weights)
���?o������?B
knotData ��?\�z�ɂ�?A
new BsplineKnot(degree, KnotType.UNSPECIFIED, periodic, knotMultiplicities, knots, nControlPoints())
���?o������?B
degree - ��?�̎�?�periodic - �����`�����ۂ���\���t���OknotMultiplicities - �m�b�g��?d�x�̔z��knots - �m�b�g�l�̔z��controlPoints - ?���_�̔z��weights - ?d�݂̔z��
public BsplineCurve2D(int degree,
int[] knotMultiplicities,
double[] knots,
Point2D[] controlPoints,
double[] weights)
super(controlPoints, weights)
���?o������?B
knotData ��?\�z�ɂ�?A
new BsplineKnot(degree, KnotType.UNSPECIFIED, false, knotMultiplicities, knots, nControlPoints())
���?o������?B
degree - ��?�̎�?�knotMultiplicities - �m�b�g��?d�x�̔z��knots - �m�b�g�l�̔z��controlPoints - ?���_�̔z��weights - ?d�݂̔z��
public BsplineCurve2D(int degree,
boolean periodic,
int knotSpec,
Point2D[] controlPoints)
super(controlPoints)
���?o������?B
knotData ��?\�z�ɂ�?A
new BsplineKnot(degree, knotSpec, periodic, null, null, nControlPoints())
���?o������?B
degree - ��?�̎�?�periodic - �����`�����ۂ���\���t���OknotSpec - �m�b�g��̎��controlPoints - ?���_�̔z��
public BsplineCurve2D(int degree,
int knotSpec,
Point2D[] controlPoints)
super(controlPoints)
���?o������?B
knotData ��?\�z�ɂ�?A
new BsplineKnot(degree, knotSpec, false, null, null, nControlPoints())
���?o������?B
degree - ��?�̎�?�knotSpec - �m�b�g��̎��controlPoints - ?���_�̔z��
public BsplineCurve2D(int degree,
boolean periodic,
int knotSpec,
Point2D[] controlPoints,
double[] weights)
super(controlPoints, weights)
���?o������?B
knotData ��?\�z�ɂ�?A
new BsplineKnot(degree, knotSpec, periodic, null, null, nControlPoints())
���?o������?B
degree - ��?�̎�?�periodic - �����`�����ۂ���\���t���OknotSpec - �m�b�g��̎��controlPoints - ?���_�̔z��weights - ?d�݂̔z��
public BsplineCurve2D(int degree,
int knotSpec,
Point2D[] controlPoints,
double[] weights)
super(controlPoints, weights)
���?o������?B
knotData ��?\�z�ɂ�?A
new BsplineKnot(degree, knotSpec, false, null, null, nControlPoints())
���?o������?B
degree - ��?�̎�?�knotSpec - �m�b�g��̎��controlPoints - ?���_�̔z��weights - ?d�݂̔z��
public BsplineCurve2D(Point2D[] points,
double[] params)
points - ��Ԃ���_��params - �_���̊e�_�ɂ�����p���??[�^�l�̗�
public BsplineCurve2D(Point2D[] points,
double[] params,
Vector2D[] endvecs)
points - ��Ԃ���_��params - �_���̊e�_�ɂ�����p���??[�^�l�̗�endvecs - ���[�_�ł�?ڃx�N�g��
public BsplineCurve2D(Point2D[] points,
double[] params,
Vector2D[] endvecs,
boolean isClosed)
points - ��Ԃ���_��params - �_���̊e�_�ɂ�����p���??[�^�l�̗�endvecs - ���[�_�ł�?ڃx�N�g��isClosed - �����`���̋�?��?�?����邩�ۂ��̃t���O
public BsplineCurve2D(Point2D[] points,
double[] params,
Vector2D[] endDir,
boolean isClosed,
ToleranceForDistance tol,
ToleranceForDistance midTol)
points - ��Ԃ���_��params - �_���̊e�_�ɂ�����p���??[�^�l�̗�endDir - ���[�_�ł�?�?�̕��isClosed - �����`���̋�?��?�?����邩�ۂ��̃t���Otol - �e�_�ɂ�����ߎ���?��xmidTol - �_�̒��Ԃɂ�����ߎ���?��x| Method Detail |
|---|
public int degree()
public int knotSpec()
KnotTypepublic int nKnotValues()
public double knotValueAt(int n)
n - �C���f�b�N�X
public boolean isPeriodic()
isPeriodic in class AbstractParametricCurvepublic Point2D controlPointAt(int n)
controlPointAt in class FreeformCurveWithControlPoints2Dn - �C���f�b�N�X
public DoublePolynomial[] polynomial(int iSseg,
boolean isPoly)
iSseg - �Z�O�?���g�̔�?�isPoly - ��L�?�ł��邩�ǂ���
public double length(ParameterSection pint)
length in class AbstractParametricCurvepint - ��?�̒�����?�߂�p���??[�^���
ParameterOutOfRangepublic Point2D coordinates(double param)
coordinates in class ParametricCurve2Dparam - �p���??[�^�l
ParameterOutOfRangepublic Vector2D tangentVector(double param)
tangentVector in class ParametricCurve2Dparam - �p���??[�^�l
ParameterOutOfRangepublic CurveCurvature2D curvature(double param)
curvature in class ParametricCurve2Dparam - �p���??[�^�l
ParameterOutOfRangepublic CurveDerivative2D evaluation(double param)
evaluation in class ParametricCurve2Dparam - �p���??[�^�l
ParameterOutOfRange
public Point2D blossoming(int segNumber,
double[] parameters)
segNumber - ���Z��?ۂƂȂ�Z�O�?���g�̔�?� (?擪�� 0)parameters - �p���??[�^�l�̔z��
ParameterOutOfRangepublic PointOnCurve2D[] singular()
singular in class ParametricCurve2Dpublic PointOnCurve2D[] inflexion()
inflexion in class ParametricCurve2Dpublic PointOnCurve2D[] projectFrom(Point2D mate)
projectFrom in class ParametricCurve2Dpoint - ���e���̓_
public BsplineCurve2D toBsplineCurve()
toBsplineCurve in class BoundedCurve2Dpublic BsplineCurve2D toBsplineCurve(ParameterSection pint)
toBsplineCurve in class ParametricCurve2Dpint - �L�? Bspline ��?��?�����p���??[�^���
ParameterOutOfRangepublic IntersectionPoint2D[] intersect(ParametricCurve2D mate)
intersect in class ParametricCurve2Dmate - ���̋�?�
public CurveCurveInterference2D[] interfere(BoundedCurve2D mate)
interfere in class BoundedCurve2Dmate - ���̋�?�
public BsplineCurve2D offsetByBsplineCurve(ParameterSection pint,
double magni,
int side,
ToleranceForDistance tol)
offsetByBsplineCurve in class ParametricCurve2Dpint - �I�t�Z�b�g����p���??[�^���magni - �I�t�Z�b�g��side - �I�t�Z�b�g�̌� (WhichSide.LEFT/RIGHT)tol - �����̋��e��?�
WhichSidepublic CommonTangent2D[] commonTangent(ParametricCurve2D mate)
commonTangent in class ParametricCurve2Dmate - ���̋�?�
java.lang.UnsupportedOperationException - ���܂̂Ƃ���?A������Ȃ��@�\�ł���public CommonNormal2D[] commonNormal(ParametricCurve2D mate)
commonNormal in class ParametricCurve2Dmate - ���̋�?�
java.lang.UnsupportedOperationException - ���܂̂Ƃ���?A������Ȃ��@�\�ł���public BsplineCurve2D insertKnot(double param)
param - �m�b�g��}���p���??[�^�l
public BsplineCurve2D[] divide(double param)
param - �p���??[�^�l
ParameterOutOfRangepublic BsplineCurve2D truncate(ParameterSection section)
section - ?ؒf���Ďc��������\���p���??[�^���
ParameterOutOfRange
public BsplineCurve2D shiftIfPeriodic(double newStartParam)
throws OpenCurveException
newStartParam - �J�n�_�ƂȂ�p���??[�^�l
OpenCurveException - ���̋�?�͊J�����`���ł���
public Polyline2D toPolyline(ParameterSection section,
ToleranceForDistance tolerance)
toPolyline in class ParametricCurve2Dsection - ��?�ߎ�����p���??[�^���tolerance - �����̋��e��?�
ParameterOutOfRangepublic PureBezierCurve2D[] toPureBezierCurveArray()
public BsplineCurve2D elevateOneDegree()
public BsplineCurve2D mergeIfContinuous(BsplineCurve2D mate)
throws TwoGeomertiesAreNotContinuousException
mate - ���̋�?��?I���_�Ɍq�����?�
TwoGeomertiesAreNotContinuousException - this ��?I���_�� mate �̊J�n�_����v���Ȃ�
protected ParametricCurve2D doTransformBy(boolean reverseTransform,
CartesianTransformationOperator2D transformationOperator,
java.util.Hashtable transformedGeometries)
doTransformBy in class ParametricCurve2DreverseTransform - �t�ϊ�����̂ł���� true?A�����łȂ���� falsetransformationOperator - �I�ϊ����Z�qtransformedGeometries - ��ɓ��l�̕ϊ���{�����v�f��܂ރn�b�V���e?[�u��
protected void output(java.io.PrintWriter writer,
int indent)
output in class GeometryElementwriter - PrintWriterindent - �C���f���g��?[��GeometryElement
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||