hpp-core
9.0.2
Implement basic classes for canonical path planning for kinematic chains.
Toggle main menu visibility
Loading...
Searching...
No Matches
trapezoidal-time-parameterization.hh
Go to the documentation of this file.
1
// Copyright (c) 2026 CNRS
2
// Author: Paul Sardin
3
//
4
5
// Redistribution and use in source and binary forms, with or without
6
// modification, are permitted provided that the following conditions are
7
// met:
8
//
9
// 1. Redistributions of source code must retain the above copyright
10
// notice, this list of conditions and the following disclaimer.
11
//
12
// 2. Redistributions in binary form must reproduce the above copyright
13
// notice, this list of conditions and the following disclaimer in the
14
// documentation and/or other materials provided with the distribution.
15
//
16
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
19
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20
// HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
27
// DAMAGE.
28
29
#ifndef HPP_CORE_PATH_OPTIMIZATION_TRAPEZOIDAL_TIME_PARAMETERIZATION_HH
30
#define HPP_CORE_PATH_OPTIMIZATION_TRAPEZOIDAL_TIME_PARAMETERIZATION_HH
31
32
#include <
hpp/core/path-optimizer.hh
>
33
34
namespace
hpp
{
35
namespace
core
{
36
namespace
pathOptimization
{
39
51
class
HPP_CORE_DLLAPI
TrapezoidalTimeParameterization
:
public
PathOptimizer
{
52
public
:
54
static
TrapezoidalTimeParameterizationPtr_t
create
(
55
const
ProblemConstPtr_t
&
problem
);
56
58
virtual
PathVectorPtr_t
optimize
(
const
PathVectorPtr_t
&
path
);
59
61
value_type
maxVelocity
()
const
{
return
maxVelocity_; }
63
void
maxVelocity
(
const
value_type
&
maxVelocity
) {
64
maxVelocity_ =
maxVelocity
;
65
}
66
68
value_type
maxAcceleration
()
const
{
return
maxAcceleration_; }
70
void
maxAcceleration
(
const
value_type
&
maxAcceleration
) {
71
maxAcceleration_ =
maxAcceleration
;
72
}
73
75
value_type
minimumDuration
()
const
{
return
minimumDuration_; }
77
void
minimumDuration
(
const
value_type
&
minimumDuration
) {
78
minimumDuration_ =
minimumDuration
;
79
}
80
81
protected
:
82
TrapezoidalTimeParameterization
(
const
ProblemConstPtr_t
&
problem
);
83
84
private
:
85
value_type
maxVelocity_;
86
value_type
maxAcceleration_;
87
value_type
minimumDuration_;
88
};
// class TrapezoidalTimeParameterization
89
90
}
// namespace pathOptimization
91
}
// namespace core
92
}
// namespace hpp
93
#endif
// HPP_CORE_PATH_OPTIMIZATION_TRAPEZOIDAL_TIME_PARAMETERIZATION_HH
hpp::core::pathOptimization::TrapezoidalTimeParameterization::optimize
virtual PathVectorPtr_t optimize(const PathVectorPtr_t &path)
Optimize path.
hpp::core::pathOptimization::TrapezoidalTimeParameterization::maxVelocity
void maxVelocity(const value_type &maxVelocity)
Set maximum velocity for each output degree of freedom.
Definition
trapezoidal-time-parameterization.hh:63
hpp::core::pathOptimization::TrapezoidalTimeParameterization::maxVelocity
value_type maxVelocity() const
Maximum velocity for each output degree of freedom.
Definition
trapezoidal-time-parameterization.hh:61
hpp::core::pathOptimization::TrapezoidalTimeParameterization::minimumDuration
value_type minimumDuration() const
Minimum duration assigned to each non-empty subpath.
Definition
trapezoidal-time-parameterization.hh:75
hpp::core::pathOptimization::TrapezoidalTimeParameterization::TrapezoidalTimeParameterization
TrapezoidalTimeParameterization(const ProblemConstPtr_t &problem)
hpp::core::pathOptimization::TrapezoidalTimeParameterization::maxAcceleration
void maxAcceleration(const value_type &maxAcceleration)
Set maximum acceleration for each output degree of freedom.
Definition
trapezoidal-time-parameterization.hh:70
hpp::core::pathOptimization::TrapezoidalTimeParameterization::minimumDuration
void minimumDuration(const value_type &minimumDuration)
Set minimum duration assigned to each non-empty subpath.
Definition
trapezoidal-time-parameterization.hh:77
hpp::core::pathOptimization::TrapezoidalTimeParameterization::maxAcceleration
value_type maxAcceleration() const
Maximum acceleration for each output degree of freedom.
Definition
trapezoidal-time-parameterization.hh:68
hpp::core::pathOptimization::TrapezoidalTimeParameterization::create
static TrapezoidalTimeParameterizationPtr_t create(const ProblemConstPtr_t &problem)
Return shared pointer to new object.
HPP_CORE_DLLAPI
#define HPP_CORE_DLLAPI
Definition
config.hh:88
hpp::core::PathOptimizer::problem
ProblemConstPtr_t problem() const
Get problem.
Definition
path-optimizer.hh:49
hpp::core::PathOptimizer::PathOptimizer
PathOptimizer(const ProblemConstPtr_t &problem)
hpp
hpp::core::pathOptimization
Definition
fwd.hh:289
hpp::core::pathOptimization::TrapezoidalTimeParameterizationPtr_t
shared_ptr< TrapezoidalTimeParameterization > TrapezoidalTimeParameterizationPtr_t
Definition
fwd.hh:308
hpp::core::path
Definition
fwd.hh:242
hpp::core
Definition
bi-rrt-planner.hh:36
hpp::core::value_type
pinocchio::value_type value_type
Definition
fwd.hh:174
hpp::core::PathVectorPtr_t
shared_ptr< PathVector > PathVectorPtr_t
Definition
fwd.hh:193
hpp::core::ProblemConstPtr_t
shared_ptr< const Problem > ProblemConstPtr_t
Definition
fwd.hh:197
path-optimizer.hh
include
hpp
core
path-optimization
trapezoidal-time-parameterization.hh
Generated by
1.17.0