Class Profiles
-
- All Implemented Interfaces:
public final class Profiles
-
-
Method Summary
Modifier and Type Method Description final static CancelableProfile
constantProfile(Double length, Double beginEndVel, Double maxVel, Double minAccel, Double maxAccel)
Computes an exact, time-optimal profile. final static CancelableProfile
profile(Double length, Double beginEndVel, Function1<Double, Double> maxVel, Function1<Double, Double> minAccel, Function1<Double, Double> maxAccel, Double resolution)
Computes an approximately time-optimal profile by sampling the constraints according to the resolution resolution. final static CancelableProfile
profile(List<Double> disps, Double beginEndVel, List<Double> maxVels, List<Double> minAccels, List<Double> maxAccels)
Computes an approximately time-optimal profile from sampled constraints. final static CancelableProfile
profile(PosePath path, Double beginEndVel, VelConstraint velConstraint, AccelConstraint accelConstraint, Double dispResolution, Double angResolution)
final static DisplacementProfile
forwardProfile(Double length, Double beginVel, Function1<Double, Double> maxVel, Function1<Double, Double> maxAccel, Double resolution)
Computes an approximately time-optimal forward profile by sampling the constraints according to the resolution resolution. final static DisplacementProfile
forwardProfile(List<Double> disps, Double beginVel, List<Double> maxVels, List<Double> maxAccels)
Computes an approximately time-optimal forward profile from the center-sampled constraints. final static DisplacementProfile
forwardProfile(PosePath path, Double beginVel, VelConstraint velConstraint, AccelConstraint accelConstraint, Double dispResolution, Double angResolution)
final static DisplacementProfile
backwardProfile(Double length, Function1<Double, Double> maxVel, Double endVel, Function1<Double, Double> minAccel, Double resolution)
Computes an approximately time-optimal backward profile by sampling the constraints according to the resolution resolution. final static DisplacementProfile
backwardProfile(List<Double> disps, List<Double> maxVels, Double endVel, List<Double> minAccels)
Computes an approximately time-optimal backward profile from the center-sampled constraints. final static DisplacementProfile
backwardProfile(PosePath path, VelConstraint velConstraint, Double endVel, AccelConstraint accelConstraint, Double dispResolution, Double angResolution)
final static DisplacementProfile
merge(DisplacementProfile p1, DisplacementProfile p2)
Merges p1 and p2 into another profile with the minimum velocity of the two at every point. final static List<Double>
samplePathByRotation(PosePath path, Double angResolution)
-
-
Method Detail
-
constantProfile
final static CancelableProfile constantProfile(Double length, Double beginEndVel, Double maxVel, Double minAccel, Double maxAccel)
Computes an exact, time-optimal profile.
- Parameters:
beginEndVel
- beginning and ending velocity (must be the same to guarantee feasibility)maxVel
- positiveminAccel
- negativemaxAccel
- positive
-
profile
final static CancelableProfile profile(Double length, Double beginEndVel, Function1<Double, Double> maxVel, Function1<Double, Double> minAccel, Function1<Double, Double> maxAccel, Double resolution)
Computes an approximately time-optimal profile by sampling the constraints according to the resolution resolution.
- Parameters:
beginEndVel
- beginning and ending velocity, non-negative (must be the same to guarantee feasibility)maxVel
- always returns positiveminAccel
- always returns negativemaxAccel
- always returns positive
-
profile
final static CancelableProfile profile(List<Double> disps, Double beginEndVel, List<Double> maxVels, List<Double> minAccels, List<Double> maxAccels)
Computes an approximately time-optimal profile from sampled constraints.
- Parameters:
beginEndVel
- beginning and ending velocity (must be the same to guarantee feasibility)maxVels
- all positiveminAccels
- all negativemaxAccels
- all positive
-
profile
final static CancelableProfile profile(PosePath path, Double beginEndVel, VelConstraint velConstraint, AccelConstraint accelConstraint, Double dispResolution, Double angResolution)
-
forwardProfile
final static DisplacementProfile forwardProfile(Double length, Double beginVel, Function1<Double, Double> maxVel, Function1<Double, Double> maxAccel, Double resolution)
Computes an approximately time-optimal forward profile by sampling the constraints according to the resolution resolution. No restriction is imposed on the minimum acceleration.
- Parameters:
beginVel
- beginning velocity, non-negativemaxVel
- always returns positivemaxAccel
- always returns positive
-
forwardProfile
final static DisplacementProfile forwardProfile(List<Double> disps, Double beginVel, List<Double> maxVels, List<Double> maxAccels)
Computes an approximately time-optimal forward profile from the center-sampled constraints. No restriction is imposed on the minimum acceleration.
The procedure uses a variant of the approach described in section 14.6.3.5 of LaValle's excellent book on planning.
- Parameters:
disps
- displacement interval endpointsbeginVel
- beginning velocity, non-negativemaxVels
- all positivemaxAccels
- all positive
-
forwardProfile
final static DisplacementProfile forwardProfile(PosePath path, Double beginVel, VelConstraint velConstraint, AccelConstraint accelConstraint, Double dispResolution, Double angResolution)
-
backwardProfile
final static DisplacementProfile backwardProfile(Double length, Function1<Double, Double> maxVel, Double endVel, Function1<Double, Double> minAccel, Double resolution)
Computes an approximately time-optimal backward profile by sampling the constraints according to the resolution resolution. No restriction is imposed on the minimum acceleration.
- Parameters:
maxVel
- always returns positiveendVel
- ending velocity, non-negativeminAccel
- always returns negative
-
backwardProfile
final static DisplacementProfile backwardProfile(List<Double> disps, List<Double> maxVels, Double endVel, List<Double> minAccels)
Computes an approximately time-optimal backward profile from the center-sampled constraints. No restriction is imposed on the maximum acceleration.
- Parameters:
disps
- displacement interval endpointsmaxVels
- all positiveendVel
- ending velocity, non-negativeminAccels
- all negative
-
backwardProfile
final static DisplacementProfile backwardProfile(PosePath path, VelConstraint velConstraint, Double endVel, AccelConstraint accelConstraint, Double dispResolution, Double angResolution)
-
merge
final static DisplacementProfile merge(DisplacementProfile p1, DisplacementProfile p2)
Merges p1 and p2 into another profile with the minimum velocity of the two at every point.
-
samplePathByRotation
final static List<Double> samplePathByRotation(PosePath path, Double angResolution)
-
-
-
-