|
|||||||||
| 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.ParametricCurve3D
org.jscience.mathematics.geometry.BoundedCurve3D
org.jscience.mathematics.geometry.FreeformCurveWithControlPoints3D
org.jscience.mathematics.geometry.BsplineCurve3D
public class BsplineCurve3D
�R���� : ��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.FreeformCurveWithControlPoints3D |
|---|
controlPoints, weights |
| Constructor Summary | |
|---|---|
BsplineCurve3D(int degree,
boolean periodic,
int[] knotMultiplicities,
double[] knots,
Point3D[] controlPoints)
�m�b�g�����? |
|
BsplineCurve3D(int degree,
boolean periodic,
int[] knotMultiplicities,
double[] knots,
Point3D[] controlPoints,
double[] weights)
�m�b�g�����? |
|
BsplineCurve3D(int degree,
boolean periodic,
int knotSpec,
Point3D[] controlPoints)
�m�b�g��������� �m�b�g��̎�ʂ�? |
|
BsplineCurve3D(int degree,
boolean periodic,
int knotSpec,
Point3D[] controlPoints,
double[] weights)
�m�b�g��������� �m�b�g��̎�ʂ�? |
|
BsplineCurve3D(int degree,
int[] knotMultiplicities,
double[] knots,
Point3D[] controlPoints)
�m�b�g�����? |
|
BsplineCurve3D(int degree,
int[] knotMultiplicities,
double[] knots,
Point3D[] controlPoints,
double[] weights)
�m�b�g�����? |
|
BsplineCurve3D(int degree,
int knotSpec,
Point3D[] controlPoints)
�m�b�g��������� �m�b�g��̎�ʂ�? |
|
BsplineCurve3D(int degree,
int knotSpec,
Point3D[] controlPoints,
double[] weights)
�m�b�g��������� �m�b�g��̎�ʂ�? |
|
BsplineCurve3D(Point3D[] points,
double[] params)
�_���? |
|
BsplineCurve3D(Point3D[] points,
double[] params,
Vector3D[] endvecs)
�_���? |
|
BsplineCurve3D(Point3D[] points,
double[] params,
Vector3D[] endvecs,
boolean isClosed)
�_���? |
|
BsplineCurve3D(Point3D[] points,
double[] params,
Vector3D[] endDir,
boolean isClosed,
ToleranceForDistance tol,
ToleranceForDistance midTol)
�_���? |
|
| Methods inherited from class org.jscience.mathematics.geometry.FreeformCurveWithControlPoints3D |
|---|
allocateDoubleArray, controlPoints, convRational0Deriv, convRational1Deriv, convRational2Deriv, convRational3Deriv, isFreeform, isPolynomial, isRational, makeUniformWeights, nControlPoints, setCoordinatesToDoubleArray, toDoubleArray, weightAt, weights |
| Methods inherited from class org.jscience.mathematics.geometry.BoundedCurve3D |
|---|
endPoint, length, startPoint, 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, isValid, parameterDomain |
| Methods inherited from class org.jscience.mathematics.geometry.GeometryElement |
|---|
getClassName, getToleranceForAngle, getToleranceForAngleAsObject, getToleranceForDistance, getToleranceForDistance2, getToleranceForDistanceAsObject, getToleranceForParameter, getToleranceForParameterAsObject, getToleranceForRealNumber, getToleranceForRealNumberAsObject, is1D, is2D, 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 BsplineCurve3D(int degree,
boolean periodic,
int[] knotMultiplicities,
double[] knots,
Point3D[] 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 BsplineCurve3D(int degree,
int[] knotMultiplicities,
double[] knots,
Point3D[] 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 BsplineCurve3D(int degree,
boolean periodic,
int[] knotMultiplicities,
double[] knots,
Point3D[] 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 BsplineCurve3D(int degree,
int[] knotMultiplicities,
double[] knots,
Point3D[] 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 BsplineCurve3D(int degree,
boolean periodic,
int knotSpec,
Point3D[] 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 BsplineCurve3D(int degree,
int knotSpec,
Point3D[] 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 BsplineCurve3D(int degree,
boolean periodic,
int knotSpec,
Point3D[] 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 BsplineCurve3D(int degree,
int knotSpec,
Point3D[] 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 BsplineCurve3D(Point3D[] points,
double[] params)
points - ��Ԃ���_��params - �_���̊e�_�ɂ�����p���??[�^�l�̗�
public BsplineCurve3D(Point3D[] points,
double[] params,
Vector3D[] endvecs)
points - ��Ԃ���_��params - �_���̊e�_�ɂ�����p���??[�^�l�̗�endvecs - ���[�_�ł�?ڃx�N�g��
public BsplineCurve3D(Point3D[] points,
double[] params,
Vector3D[] endvecs,
boolean isClosed)
points - ��Ԃ���_��params - �_���̊e�_�ɂ�����p���??[�^�l�̗�endvecs - ���[�_�ł�?ڃx�N�g��isClosed - �����`���̋�?��?�?����邩�ۂ��̃t���O
public BsplineCurve3D(Point3D[] points,
double[] params,
Vector3D[] 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 Point3D controlPointAt(int n)
controlPointAt in class FreeformCurveWithControlPoints3Dn - �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 Point3D coordinates(double param)
coordinates in class ParametricCurve3Dparam - �p���??[�^�l
ParameterOutOfRangepublic Vector3D tangentVector(double param)
tangentVector in class ParametricCurve3Dparam - �p���??[�^�l
ParameterOutOfRangepublic CurveCurvature3D curvature(double param)
curvature in class ParametricCurve3Dparam - �p���??[�^�l
ParameterOutOfRangepublic double torsion(double param)
torsion in class ParametricCurve3Dparam - �p���??[�^�l
ParameterOutOfRangepublic CurveDerivative3D evaluation(double param)
evaluation in class ParametricCurve3Dparam - �p���??[�^�l
ParameterOutOfRange
public Point3D blossoming(int segNumber,
double[] parameters)
segNumber - ���Z��?ۂƂȂ�Z�O�?���g�̔�?� (?擪�� 0)parameters - �p���??[�^�l�̔z��
ParameterOutOfRangepublic PointOnCurve3D[] singular()
singular in class ParametricCurve3Dpublic PointOnCurve3D[] inflexion()
inflexion in class ParametricCurve3Dpublic BsplineCurve3D toBsplineCurve()
toBsplineCurve in class BoundedCurve3Dpublic BsplineCurve3D toBsplineCurve(ParameterSection pint)
toBsplineCurve in class ParametricCurve3Dpint - �L�? Bspline ��?��?�����p���??[�^���
ParameterOutOfRange
public IntersectionPoint3D[] intersect(ParametricCurve3D mate)
throws IndefiniteSolutionException
intersect in class ParametricCurve3Dmate - ���̋�?�
IndefiniteSolutionException - �⪕s��ł���
public IntersectionPoint3D[] intersect(ParametricSurface3D mate)
throws IndefiniteSolutionException
intersect in class ParametricCurve3Dmate - ���̋Ȗ�
IndefiniteSolutionException - �⪕s��ł���public IntersectionPoint3D[] intersect(ElementarySurface3D mate)
mate - ���̋Ȗ� (��?͋Ȗ�)
public CurveCurveInterference3D[] interfere(BoundedCurve3D mate)
interfere in class BoundedCurve3Dmate - ���̋�?�
public BsplineCurve3D insertKnot(double param)
param - �m�b�g��}���p���??[�^�l
public BsplineCurve3D[] divide(double param)
param - �p���??[�^�l
ParameterOutOfRangepublic BsplineCurve3D truncate(ParameterSection section)
section - ?ؒf���Ďc��������\���p���??[�^���
ParameterOutOfRangepublic PointOnCurve3D[] projectFrom(Point3D mate)
projectFrom in class ParametricCurve3Dpoint - ���e���̓_
public BsplineCurve3D shiftIfPeriodic(double newStartParam)
throws OpenCurveException
newStartParam - �J�n�_�ƂȂ�p���??[�^�l
OpenCurveException - ���̋�?�͊J�����`���ł���
public Polyline3D toPolyline(ParameterSection section,
ToleranceForDistance tolerance)
toPolyline in class ParametricCurve3Dsection - ��?�ߎ�����p���??[�^���tolerance - �����̋��e��?�
ParameterOutOfRangepublic PureBezierCurve3D[] toPureBezierCurveArray()
public ParametricCurve3D parallelTranslate(Vector3D moveVec)
parallelTranslate in class ParametricCurve3DmoveVec - ��?s�ړ��̕��Ɨʂ�\���x�N�g��
public BsplineCurve3D elevateOneDegree()
public BsplineCurve3D mergeIfContinuous(BsplineCurve3D mate)
throws TwoGeomertiesAreNotContinuousException
mate - ���̋�?��?I���_�Ɍq�����?�
TwoGeomertiesAreNotContinuousException - this ��?I���_�� mate �̊J�n�_����v���Ȃ�
public static BsplineCurve3D[] identicalKnotSequences(BsplineCurve3D[] crvs,
ParameterSection pint)
crvs - �a�X�v���C����?�̔z��pint - ?o�͂����?�ɗ^����p���??[�^��`��
protected ParametricCurve3D doTransformBy(boolean reverseTransform,
CartesianTransformationOperator3D transformationOperator,
java.util.Hashtable transformedGeometries)
doTransformBy in class ParametricCurve3DreverseTransform - �t�ϊ�����̂ł���� true?A�����łȂ���� falsetransformationOperator - �I�ϊ����Z�qtransformedGeometries - ��ɓ��l�̕ϊ���{�����v�f��܂ރn�b�V���e?[�u��
public BsplineSurface3D tabcylSurface(BsplineCurve3D mate)
mate - ����̃K�C�h��?�
public BsplineSurface3D loftSurface(Vector3D vector,
double length)
vector - �|�����\���x�N�g��length - �|��钷��
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 | ||||||||