createUnknowns
parent
00d0a7b045
commit
79ff0c54f9
|
@ -181,5 +181,15 @@ Expression<T> operator*(const Expression<T>& expression1,
|
|||
expression1, expression2);
|
||||
}
|
||||
|
||||
/// Construct an array of leaves
|
||||
template<typename T>
|
||||
std::vector<Expression<T> > createUnknowns(size_t n, char c, size_t start = 0) {
|
||||
std::vector<Expression<T> > unknowns;
|
||||
unknowns.reserve(n);
|
||||
for (size_t i = start; i < start + n; i++)
|
||||
unknowns.push_back(Expression<T>(c, i));
|
||||
return unknowns;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -34,7 +34,6 @@ using namespace std;
|
|||
using namespace gtsam;
|
||||
|
||||
/* ************************************************************************* */
|
||||
|
||||
template<class CAL>
|
||||
Point2 uncalibrate(const CAL& K, const Point2& p,
|
||||
boost::optional<Matrix25&> Dcal, boost::optional<Matrix2&> Dp) {
|
||||
|
@ -57,7 +56,7 @@ TEST(Expression, constant) {
|
|||
|
||||
/* ************************************************************************* */
|
||||
// Leaf
|
||||
TEST(Expression, leaf) {
|
||||
TEST(Expression, Leaf) {
|
||||
Expression<Rot3> R(100);
|
||||
Values values;
|
||||
values.insert(100, someR);
|
||||
|
@ -74,8 +73,18 @@ TEST(Expression, leaf) {
|
|||
}
|
||||
|
||||
/* ************************************************************************* */
|
||||
// Many Leaves
|
||||
TEST(Expression, Leaves) {
|
||||
Values values;
|
||||
Point3 somePoint(1, 2, 3);
|
||||
values.insert(Symbol('p', 10), somePoint);
|
||||
std::vector<Expression<Point3> > points = createUnknowns<Point3>(10, 'p', 1);
|
||||
EXPECT(assert_equal(somePoint,points.back().value(values)));
|
||||
}
|
||||
|
||||
//TEST(Expression, nullaryMethod) {
|
||||
/* ************************************************************************* */
|
||||
|
||||
//TEST(Expression, NullaryMethod) {
|
||||
// Expression<Point3> p(67);
|
||||
// Expression<LieScalar> norm(p, &Point3::norm);
|
||||
// Values values;
|
||||
|
|
Loading…
Reference in New Issue