|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--jp.go.ipa.jgcl.JgclGeometry | +--jp.go.ipa.jgcl.JgclParametricCurve | +--jp.go.ipa.jgcl.JgclParametricCurve2D | +--jp.go.ipa.jgcl.JgclConic2D
2次元 : 円錐曲線のクラス階層のルートとなる抽象クラス。
このクラスのインスタンスは、
円錐曲線の位置と傾きを決定する局所座標系
(配置情報、JgclAxis2Placement2D
)
position を保持する。
position は null であってはならない。
コンストラクタの概要 | |
protected |
JgclConic2D(JgclAxis2Placement2D position)
局所座標系を指定してオブジェクトを構築する。 |
メソッドの概要 | |
protected static JgclBsplineCurve2D |
convertPolyBezierCurvesToOneBsplineCurve(JgclPureBezierCurve2D[] bezierCurves,
boolean closed)
ある円錐曲線の一部を再現する有理ベジエ曲線列を一本の有理Bスプライン曲線に変換する。 |
protected JgclPoint2D[] |
getControlPointsOfBezierCurve(JgclParameterSection pint)
この曲線の指定の区間を再現する (有理) ベジエ曲線の制御点列を返す。 |
JgclPointOnCurve2D[] |
inflexion()
この曲線の変曲点を返す。 |
JgclAxis2Placement2D |
position()
この円錐曲線の「中心」と局所軸の方向を決定している局所座標系を返す。 |
JgclPointOnCurve2D[] |
singular()
この曲線の特異点を返す。 |
JgclPolyline2D |
toPolyline(JgclParameterSection pint,
JgclToleranceForDistance tol)
この曲線の指定の区間を、与えられた誤差で直線近似するポリラインを返す。 |
クラス jp.go.ipa.jgcl.JgclParametricCurve から継承したメソッド |
checkValidity, checkValidity, isClosed, isCurve, isFinite, isInfinite, isNonPeriodic, isOpen, isParametric, isPeriodic, isValid, length, parameterDomain |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
protected JgclConic2D(JgclAxis2Placement2D position)
position が null の場合には、 JgclInvalidArgumentValue の例外を発生する。
position
- 中心と局所軸の方向を定める局所座標系JgclInvalidArgumentValue
メソッドの詳細 |
public JgclPolyline2D toPolyline(JgclParameterSection pint, JgclToleranceForDistance tol)
結果として返されるポリラインを構成する点は JgclPointOnCurve2D で あることを期待できる。
なお、結果として得られるポリラインが点に縮退するような場合には JgclZeroLength の例外を発生する。
JgclParametricCurve2D
内の toPolyline
pint
- 直線近似するパラメータ区間tol
- 距離の許容誤差JgclPointOnCurve2D
,
JgclZeroLength
public JgclAxis2Placement2D position()
public JgclPointOnCurve2D[] singular()
円錐曲線には特異点は存在しないので、常に長さ 0 の配列を返す。
JgclParametricCurve2D
内の singular
public JgclPointOnCurve2D[] inflexion()
円錐曲線には変曲点は存在しないので、常に長さ 0 の配列を返す。
JgclParametricCurve2D
内の inflexion
protected JgclPoint2D[] getControlPointsOfBezierCurve(JgclParameterSection pint)
重みについては、このメソッドでは関知しない。
得られる制御点列の要素数は常に 3 である。
pint の増分値は負でも構わない。 pint の増分値が負の場合には、 得られる制御点列が表すベジエ曲線の進行方向は、この曲線の進行方向の逆になる。
なお、与えられた区間を一本のベジエ曲線で再現できない場合、 得られる結果は正しくないことに注意。
pint
- ベジエ曲線で再現するパラメータ区間protected static JgclBsplineCurve2D convertPolyBezierCurvesToOneBsplineCurve(JgclPureBezierCurve2D[] bezierCurves, boolean closed)
与えられる有理ベジエ曲線列は、ある円錐曲線の一部を再現したもので、 曲線列の要素数は 1 ないし 3 であり、 各要素はすべて2次曲線であるものと想定している。
この制限のため、このメソッドは、 ベジエ曲線あるいはBスプライン曲線等のクラスに置くべきではないと考える。
bezierCurves
- (ある円錐曲線の一部を再現する) 有理ベジエ曲線列closed
- 有理ベジエ曲線列が閉じていれば true、そうでなければ false
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |