maspack.spatialmotion.projections
Class EllipticBoundary
java.lang.Object
maspack.spatialmotion.projections.EllipticBoundary
- All Implemented Interfaces:
- BoundaryCurve2D
public class EllipticBoundary
- extends java.lang.Object
- implements BoundaryCurve2D
Method Summary |
double |
getLength()
|
int |
getNumParams()
|
VectorNd |
getParameters()
|
Point2d |
getPoint(double t)
|
void |
getPoint(double t,
double[] out)
|
static void |
getPoint(double t,
double a,
double b,
double[] out)
|
void |
getTangent(double t,
double[] out)
|
double |
getTVar(double X,
double Y)
|
BoundaryCurve2D.CurveType |
getType()
|
boolean |
isWithin(double X,
double Y)
|
static boolean |
isWithin(double X,
double Y,
double a,
double b)
|
static int |
projectPerp(double[] in,
double a,
double b,
int quadrant,
double[] out)
|
void |
projectToBoundary(double[] in,
double[] out)
|
boolean |
projectWithin(double[] in,
double[] out)
If in[] is outside curve, projects to boundary |
void |
setParameters(VectorNd params)
|
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
EllipticBoundary
public EllipticBoundary(VectorNd params)
EllipticBoundary
public EllipticBoundary()
isWithin
public static boolean isWithin(double X,
double Y,
double a,
double b)
isWithin
public boolean isWithin(double X,
double Y)
- Specified by:
isWithin
in interface BoundaryCurve2D
getLength
public double getLength()
- Specified by:
getLength
in interface BoundaryCurve2D
getPoint
public Point2d getPoint(double t)
- Specified by:
getPoint
in interface BoundaryCurve2D
getTVar
public double getTVar(double X,
double Y)
- Specified by:
getTVar
in interface BoundaryCurve2D
getPoint
public static void getPoint(double t,
double a,
double b,
double[] out)
getPoint
public void getPoint(double t,
double[] out)
- Specified by:
getPoint
in interface BoundaryCurve2D
getTangent
public void getTangent(double t,
double[] out)
- Specified by:
getTangent
in interface BoundaryCurve2D
setParameters
public void setParameters(VectorNd params)
- Specified by:
setParameters
in interface BoundaryCurve2D
getParameters
public VectorNd getParameters()
- Specified by:
getParameters
in interface BoundaryCurve2D
getNumParams
public int getNumParams()
- Specified by:
getNumParams
in interface BoundaryCurve2D
getType
public BoundaryCurve2D.CurveType getType()
- Specified by:
getType
in interface BoundaryCurve2D
projectWithin
public boolean projectWithin(double[] in,
double[] out)
- If in[] is outside curve, projects to boundary
- Specified by:
projectWithin
in interface BoundaryCurve2D
projectPerp
public static int projectPerp(double[] in,
double a,
double b,
int quadrant,
double[] out)
projectToBoundary
public void projectToBoundary(double[] in,
double[] out)
- Specified by:
projectToBoundary
in interface BoundaryCurve2D