us.ihmc.utilities.math.geometry
Class FrameRamp3d

java.lang.Object
  extended by us.ihmc.utilities.math.geometry.FrameRamp3d
All Implemented Interfaces:
FrameShape3d, ReferenceFrameHolder

public class FrameRamp3d
extends java.lang.Object
implements FrameShape3d


Constructor Summary
FrameRamp3d(FrameRamp3d other)
           
FrameRamp3d(ReferenceFrame referenceFrame, double width, double length, double height)
           
FrameRamp3d(ReferenceFrame referenceFrame, Ramp3d ramp3d)
           
FrameRamp3d(ReferenceFrame referenceFrame, javax.media.j3d.Transform3D configuration, double width, double length, double height)
           
 
Method Summary
 void applyTransform(javax.media.j3d.Transform3D transformation)
          Apply the given transform to translate and rotate this shape.
 FrameRamp3d applyTransformCopy(javax.media.j3d.Transform3D transform3D)
          Create a copy of this shape, then apply the given transform to translate and rotate the copy.
 void changeFrame(ReferenceFrame desiredFrame)
           
 FrameRamp3d changeFrameCopy(ReferenceFrame desiredFrame)
           
 void checkReferenceFrameMatch(ReferenceFrame frame)
           
 void checkReferenceFrameMatch(ReferenceFrameHolder referenceFrameHolder)
           
 double distance(FramePoint point)
          Find the distance from the closest point on this shape to the given point.
 void getClosestPointAndNormalAt(FramePoint intersectionToPack, FrameVector normalToPack, FramePoint pointToCheck)
          Find the closest point on the surface of this shape to the given point as well as the surface normal at that point.
 Ramp3d getRamp3d()
           
 ReferenceFrame getReferenceFrame()
           
 javax.media.j3d.Transform3D getTransform()
           
 void getTransformCopy(javax.media.j3d.Transform3D transformToPack)
           
 boolean isInsideOrOnSurface(FramePoint pointToTest)
          Determine whether the given point is on or inside the surface of this shape.
 boolean isInsideOrOnSurface(FramePoint pointToTest, double epsilon)
          Determine whether the given point is on or inside the surface of this shape, within a given tolerance or error level.
 void orthogonalProjection(FramePoint point)
          Find the closest point on the surface of this shape to the given point.
 FramePoint orthogonalProjectionCopy(FramePoint point)
          Find the closest point on the surface of this shape to the given point.
 void packFramePose(FramePose framePoseToPack)
           
 void setAndChangeFrame(FrameRamp3d other)
           
 void setTransform(javax.media.j3d.Transform3D transform3D)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FrameRamp3d

public FrameRamp3d(FrameRamp3d other)

FrameRamp3d

public FrameRamp3d(ReferenceFrame referenceFrame,
                   Ramp3d ramp3d)

FrameRamp3d

public FrameRamp3d(ReferenceFrame referenceFrame,
                   double width,
                   double length,
                   double height)

FrameRamp3d

public FrameRamp3d(ReferenceFrame referenceFrame,
                   javax.media.j3d.Transform3D configuration,
                   double width,
                   double length,
                   double height)
Method Detail

getRamp3d

public Ramp3d getRamp3d()

getTransformCopy

public void getTransformCopy(javax.media.j3d.Transform3D transformToPack)

getTransform

public javax.media.j3d.Transform3D getTransform()

setTransform

public void setTransform(javax.media.j3d.Transform3D transform3D)

checkReferenceFrameMatch

public void checkReferenceFrameMatch(ReferenceFrameHolder referenceFrameHolder)
                              throws ReferenceFrameMismatchException
Specified by:
checkReferenceFrameMatch in interface ReferenceFrameHolder
Throws:
ReferenceFrameMismatchException

checkReferenceFrameMatch

public void checkReferenceFrameMatch(ReferenceFrame frame)
                              throws ReferenceFrameMismatchException
Specified by:
checkReferenceFrameMatch in interface ReferenceFrameHolder
Throws:
ReferenceFrameMismatchException

getReferenceFrame

public ReferenceFrame getReferenceFrame()
Specified by:
getReferenceFrame in interface ReferenceFrameHolder

changeFrameCopy

public FrameRamp3d changeFrameCopy(ReferenceFrame desiredFrame)
Specified by:
changeFrameCopy in interface ReferenceFrameHolder

changeFrame

public void changeFrame(ReferenceFrame desiredFrame)

applyTransform

public void applyTransform(javax.media.j3d.Transform3D transformation)
Description copied from interface: FrameShape3d
Apply the given transform to translate and rotate this shape.

Specified by:
applyTransform in interface FrameShape3d

applyTransformCopy

public FrameRamp3d applyTransformCopy(javax.media.j3d.Transform3D transform3D)
Description copied from interface: FrameShape3d
Create a copy of this shape, then apply the given transform to translate and rotate the copy.

Specified by:
applyTransformCopy in interface FrameShape3d
Returns:

distance

public double distance(FramePoint point)
Description copied from interface: FrameShape3d
Find the distance from the closest point on this shape to the given point.

Specified by:
distance in interface FrameShape3d
Returns:

getClosestPointAndNormalAt

public void getClosestPointAndNormalAt(FramePoint intersectionToPack,
                                       FrameVector normalToPack,
                                       FramePoint pointToCheck)
Description copied from interface: FrameShape3d
Find the closest point on the surface of this shape to the given point as well as the surface normal at that point.

Specified by:
getClosestPointAndNormalAt in interface FrameShape3d
Parameters:
intersectionToPack - out parameter packed with the resulting closest point on the shape
normalToPack - out parameter packed with the resulting normal vector

isInsideOrOnSurface

public boolean isInsideOrOnSurface(FramePoint pointToTest,
                                   double epsilon)
Description copied from interface: FrameShape3d
Determine whether the given point is on or inside the surface of this shape, within a given tolerance or error level.

Specified by:
isInsideOrOnSurface in interface FrameShape3d
Returns:

orthogonalProjection

public void orthogonalProjection(FramePoint point)
Description copied from interface: FrameShape3d
Find the closest point on the surface of this shape to the given point. If the given point is on or inside the shape, then it is not changed.

Specified by:
orthogonalProjection in interface FrameShape3d
Parameters:
point - both an input parameter (the point to check), and an output parameter (packed with the resulting ortho point).

setAndChangeFrame

public void setAndChangeFrame(FrameRamp3d other)

orthogonalProjectionCopy

public FramePoint orthogonalProjectionCopy(FramePoint point)
Description copied from interface: FrameShape3d
Find the closest point on the surface of this shape to the given point. If the given point is on or inside the shape, then it returned unchanged.

Specified by:
orthogonalProjectionCopy in interface FrameShape3d
Returns:
a new point on surface of the shape

packFramePose

public void packFramePose(FramePose framePoseToPack)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

isInsideOrOnSurface

public boolean isInsideOrOnSurface(FramePoint pointToTest)
Description copied from interface: FrameShape3d
Determine whether the given point is on or inside the surface of this shape.

Specified by:
isInsideOrOnSurface in interface FrameShape3d
Returns: