public interface ICurveI extends ICurveOp, ITransformable
Modifier and Type | Method and Description |
---|---|
ICurveI |
add(double x,
double y,
double z)
transformation: API of ITransformable inteface
|
ICurveI |
add(IDoubleI x,
IDoubleI y,
IDoubleI z) |
ICurveI |
add(IVecI v) |
ICurveI |
add(IVecI v,
double f)
scale add
|
ICurveI |
add(IVecI v,
IDoubleI f)
scale add
|
IVecI |
center()
returns center of geometry object
|
IVecI |
closePt(IVec2I pt)
find approximately closest point on a curve on 2D
|
IVecI |
closePt(IVecI pt)
find approximately closest point on a curve
|
ICurveI |
cp()
cp() is alias of dup()
|
ICurveI |
cp(double x,
double y,
double z)
cp() is alias of dup().add()
|
ICurveI |
cp(IDoubleI x,
IDoubleI y,
IDoubleI z) |
IVecI |
cp(IIntegerI i) |
IVecI |
cp(int i) |
ICurveI |
cp(IVecI v) |
int |
cpNum() |
int |
cpNum(ISwitchE e) |
IIntegerI |
cpNum(ISwitchR r) |
IVecI[] |
cps()
all control points
|
int |
deg() |
int |
deg(ISwitchE e) |
IIntegerI |
deg(ISwitchR r) |
double |
dist(IVec2I pt)
distance to the closest point on a curve on 2D
|
double |
dist(IVecI pt)
distance to the closest point on a curve
|
ICurveI |
div(double v) |
ICurveI |
div(IDoubleI v) |
ICurveI |
dup()
duplicate the instance
|
IVecI |
end() |
IVecI |
endCP() |
IVecI |
ep(IIntegerI i) |
IVecI |
ep(int i) |
int |
epNum() |
int |
epNum(ISwitchE e) |
IIntegerI |
epNum(ISwitchR r) |
ICurveI |
flip()
same with neg
|
ICurveI |
flipU()
alias of rev()
|
ICurveGeo |
get() |
boolean |
isClosed() |
boolean |
isClosed(ISwitchE e) |
IBoolI |
isClosed(ISwitchR r) |
boolean |
isRational() |
boolean |
isRational(ISwitchE e) |
IBoolI |
isRational(ISwitchR r) |
boolean |
isValid() |
IDoubleI |
knot(IIntegerI i) |
double |
knot(int i)
close curve with the current control points.
|
int |
knotNum() |
int |
knotNum(ISwitchE e) |
IIntegerI |
knotNum(ISwitchR r) |
double[] |
knots()
all knot values
|
double[] |
knots(ISwitchE e) |
IDoubleI[] |
knots(ISwitchR r) |
double |
len() |
double |
len(ISwitchE e) |
IDouble |
len(ISwitchR r) |
IVecI |
mid()
parametrically mid point of a curve
|
ICurveI |
mirror(IVecI planeDir)
mirror is alias of ref
|
ICurveI |
mirror(IVecI center,
IVecI planeDir) |
ICurveI |
mul(double v) |
ICurveI |
mul(IDoubleI v) |
ICurveI |
mv(double x,
double y,
double z)
mv() is alias of add()
|
ICurveI |
mv(IDoubleI x,
IDoubleI y,
IDoubleI z) |
ICurveI |
mv(IVecI v) |
ICurveI |
neg() |
int |
num()
change degree.
|
int |
num(ISwitchE e) |
IIntegerI |
num(ISwitchR r) |
IVecI |
pt(double u) |
IVecI |
pt(IDoubleI u) |
ICurveI |
ref(IVecI planeDir)
reflect(mirror) 3 dimensionally to the other side of the plane
|
ICurveI |
ref(IVecI center,
IVecI planeDir) |
ICurveI |
rev()
reverse U coordintates direction of curve, without creating a new object
|
ICurveI |
revU()
alias of rev()
|
ICurveI |
rot(IVecI axis,
double angle) |
ICurveI |
rot(IVecI axis,
IDoubleI angle)
rotation around axis vector
|
ICurveI |
rot(IVecI axis,
IVecI destDir)
rotate to destination direction vector
|
ICurveI |
rot(IVecI center,
IVecI axis,
double angle) |
ICurveI |
rot(IVecI center,
IVecI axis,
IDoubleI angle)
rotation around axis vector and center
|
ICurveI |
rot(IVecI center,
IVecI axis,
IVecI destPt)
rotate to destination point location
|
ICurveI |
scale(double f) |
ICurveI |
scale(IDoubleI f)
alias of mul
|
ICurveI |
scale(IVecI center,
double f) |
ICurveI |
scale(IVecI center,
IDoubleI f) |
ICurveI |
scale1d(IVecI axis,
double f)
scale only in 1 direction
|
ICurveI |
scale1d(IVecI axis,
IDoubleI f) |
ICurveI |
scale1d(IVecI center,
IVecI axis,
double f) |
ICurveI |
scale1d(IVecI center,
IVecI axis,
IDoubleI f) |
ICurveI |
shear(double sxy,
double syx,
double syz,
double szy,
double szx,
double sxz)
shear operation
|
ICurveI |
shear(IDoubleI sxy,
IDoubleI syx,
IDoubleI syz,
IDoubleI szy,
IDoubleI szx,
IDoubleI sxz) |
ICurveI |
shear(IVecI center,
double sxy,
double syx,
double syz,
double szy,
double szx,
double sxz) |
ICurveI |
shear(IVecI center,
IDoubleI sxy,
IDoubleI syx,
IDoubleI syz,
IDoubleI szy,
IDoubleI szx,
IDoubleI sxz) |
ICurveI |
shearXY(double sxy,
double syx) |
ICurveI |
shearXY(IDoubleI sxy,
IDoubleI syx) |
ICurveI |
shearXY(IVecI center,
double sxy,
double syx) |
ICurveI |
shearXY(IVecI center,
IDoubleI sxy,
IDoubleI syx) |
ICurveI |
shearYZ(double syz,
double szy) |
ICurveI |
shearYZ(IDoubleI syz,
IDoubleI szy) |
ICurveI |
shearYZ(IVecI center,
double syz,
double szy) |
ICurveI |
shearYZ(IVecI center,
IDoubleI syz,
IDoubleI szy) |
ICurveI |
shearZX(double szx,
double sxz) |
ICurveI |
shearZX(IDoubleI szx,
IDoubleI sxz) |
ICurveI |
shearZX(IVecI center,
double szx,
double sxz) |
ICurveI |
shearZX(IVecI center,
IDoubleI szx,
IDoubleI sxz) |
IVecI |
start() |
IVecI |
startCP() |
ICurveI |
sub(double x,
double y,
double z) |
ICurveI |
sub(IDoubleI x,
IDoubleI y,
IDoubleI z) |
ICurveI |
sub(IVecI v) |
IVecI |
tan(double u) |
IVecI |
tan(IDoubleI u) |
ICurveI |
transform(IMatrix3I mat) |
ICurveI |
transform(IMatrix4I mat) |
ICurveI |
transform(IVecI xvec,
IVecI yvec,
IVecI zvec) |
ICurveI |
transform(IVecI xvec,
IVecI yvec,
IVecI zvec,
IVecI translate) |
ICurveI |
translate(double x,
double y,
double z)
translate is alias of add()
|
ICurveI |
translate(IDoubleI x,
IDoubleI y,
IDoubleI z) |
ICurveI |
translate(IVecI v) |
IDoubleI |
u(IInteger epIdx,
IDouble epFraction) |
double |
u(int epIdx,
double epFraction) |
double |
u(ISwitchE r,
IVec2I pt) |
double |
u(ISwitchE r,
IVecI pt) |
IDoubleI |
u(ISwitchR r,
IVec2I pt) |
IDoubleI |
u(ISwitchR r,
IVecI pt) |
double |
u(IVec2I pt)
approximate invert projection from 2D location to interanl parameter U
|
double |
u(IVecI pt)
approximate invert projection from 3D location to interanl parameter U (closest point on curve)
|
double |
uend() |
double |
uend(ISwitchE e) |
IDoubleI |
uend(ISwitchR r) |
double |
ustart() |
double |
ustart(ISwitchE e) |
IDoubleI |
ustart(ISwitchR r) |
ICurveGeo get()
get
in interface ICurveOp
get
in interface IParameter
ICurveI dup()
ITransformable
dup
in interface ITransformable
boolean isValid()
IVecI pt(double u)
IVecI tan(double u)
IVecI cp(int i)
IVecI ep(int i)
IVecI[] cps()
double u(IVecI pt)
double u(IVec2I pt)
double dist(IVecI pt)
double dist(IVec2I pt)
double knot(int i)
double[] knots()
double[] knots(ISwitchE e)
int knotNum()
int knotNum(ISwitchE e)
boolean isRational()
boolean isRational(ISwitchE e)
int deg()
int deg(ISwitchE e)
int num()
int num(ISwitchE e)
int cpNum()
int cpNum(ISwitchE e)
IVecI start()
IVecI end()
IVecI startCP()
IVecI endCP()
IVecI mid()
IVecI center()
int epNum()
int epNum(ISwitchE e)
double len()
double len(ISwitchE e)
double u(int epIdx, double epFraction)
double ustart()
double uend()
double ustart(ISwitchE e)
double uend(ISwitchE e)
boolean isClosed()
boolean isClosed(ISwitchE e)
ICurveI rev()
ICurveI revU()
ICurveI flipU()
ICurveI add(double x, double y, double z)
add
in interface ITransformable
ICurveI add(IVecI v)
add
in interface ITransformable
ICurveI sub(double x, double y, double z)
sub
in interface ITransformable
ICurveI sub(IVecI v)
sub
in interface ITransformable
ICurveI mul(IDoubleI v)
mul
in interface ITransformable
ICurveI mul(double v)
mul
in interface ITransformable
ICurveI div(IDoubleI v)
div
in interface ITransformable
ICurveI div(double v)
div
in interface ITransformable
ICurveI neg()
neg
in interface ITransformable
ICurveI flip()
flip
in interface ITransformable
ICurveI add(IVecI v, double f)
add
in interface ITransformable
ICurveI add(IVecI v, IDoubleI f)
ITransformable
add
in interface ITransformable
ICurveI rot(IVecI axis, IDoubleI angle)
ITransformable
rot
in interface ITransformable
ICurveI rot(IVecI axis, double angle)
rot
in interface ITransformable
ICurveI rot(IVecI center, IVecI axis, IDoubleI angle)
ITransformable
rot
in interface ITransformable
ICurveI rot(IVecI center, IVecI axis, double angle)
rot
in interface ITransformable
ICurveI rot(IVecI axis, IVecI destDir)
rot
in interface ITransformable
ICurveI rot(IVecI center, IVecI axis, IVecI destPt)
rot
in interface ITransformable
ICurveI scale(IDoubleI f)
scale
in interface ITransformable
ICurveI scale(double f)
scale
in interface ITransformable
ICurveI scale(IVecI center, IDoubleI f)
scale
in interface ITransformable
ICurveI scale(IVecI center, double f)
scale
in interface ITransformable
ICurveI scale1d(IVecI axis, double f)
scale1d
in interface ITransformable
ICurveI scale1d(IVecI axis, IDoubleI f)
scale1d
in interface ITransformable
ICurveI scale1d(IVecI center, IVecI axis, double f)
scale1d
in interface ITransformable
ICurveI scale1d(IVecI center, IVecI axis, IDoubleI f)
scale1d
in interface ITransformable
ICurveI ref(IVecI planeDir)
ref
in interface ITransformable
ICurveI ref(IVecI center, IVecI planeDir)
ref
in interface ITransformable
ICurveI mirror(IVecI planeDir)
mirror
in interface ITransformable
ICurveI mirror(IVecI center, IVecI planeDir)
mirror
in interface ITransformable
ICurveI shear(double sxy, double syx, double syz, double szy, double szx, double sxz)
shear
in interface ITransformable
ICurveI shear(IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
shear
in interface ITransformable
ICurveI shear(IVecI center, double sxy, double syx, double syz, double szy, double szx, double sxz)
shear
in interface ITransformable
ICurveI shear(IVecI center, IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
shear
in interface ITransformable
ICurveI shearXY(double sxy, double syx)
shearXY
in interface ITransformable
ICurveI shearXY(IDoubleI sxy, IDoubleI syx)
shearXY
in interface ITransformable
ICurveI shearXY(IVecI center, double sxy, double syx)
shearXY
in interface ITransformable
ICurveI shearXY(IVecI center, IDoubleI sxy, IDoubleI syx)
shearXY
in interface ITransformable
ICurveI shearYZ(double syz, double szy)
shearYZ
in interface ITransformable
ICurveI shearYZ(IDoubleI syz, IDoubleI szy)
shearYZ
in interface ITransformable
ICurveI shearYZ(IVecI center, double syz, double szy)
shearYZ
in interface ITransformable
ICurveI shearYZ(IVecI center, IDoubleI syz, IDoubleI szy)
shearYZ
in interface ITransformable
ICurveI shearZX(double szx, double sxz)
shearZX
in interface ITransformable
ICurveI shearZX(IDoubleI szx, IDoubleI sxz)
shearZX
in interface ITransformable
ICurveI shearZX(IVecI center, double szx, double sxz)
shearZX
in interface ITransformable
ICurveI shearZX(IVecI center, IDoubleI szx, IDoubleI sxz)
shearZX
in interface ITransformable
ICurveI translate(double x, double y, double z)
translate
in interface ITransformable
ICurveI translate(IDoubleI x, IDoubleI y, IDoubleI z)
translate
in interface ITransformable
ICurveI translate(IVecI v)
translate
in interface ITransformable
ICurveI transform(IMatrix3I mat)
transform
in interface ITransformable
ICurveI transform(IMatrix4I mat)
transform
in interface ITransformable
ICurveI transform(IVecI xvec, IVecI yvec, IVecI zvec)
transform
in interface ITransformable
ICurveI transform(IVecI xvec, IVecI yvec, IVecI zvec, IVecI translate)
transform
in interface ITransformable
ICurveI mv(double x, double y, double z)
mv
in interface ITransformable
ICurveI mv(IVecI v)
mv
in interface ITransformable
ICurveI cp()
cp
in interface ITransformable
ICurveI cp(double x, double y, double z)
cp
in interface ITransformable
ICurveI cp(IVecI v)
cp
in interface ITransformable