Commit Graph

24 Commits (6abb9af0a6e9c207a23b355e1cb40a1d55b02414)

Author SHA1 Message Date
Frank Dellaert c9fcf95501 fixed some issues in SE(2) "branch" 2010-03-03 05:34:08 +00:00
Frank Dellaert 707627fb3a Rot2 "named constructors" (http://www.parashift.com/c++-faq-lite/ctors.html#faq-10.8):
/** Named constructor from angle == exponential map at identity */
  static Rot2 fromAngle(double theta) { return Rot2(cos(theta),sin(theta));}

  /** Named constructor from cos(theta),sin(theta) pair, will *not* normalize! */
  static Rot2 fromCosSin(double c, double s);

  /** Named constructor that behaves as atan2, i.e., y,x order (!) and normalizes */ 
  static Rot2 atan2(double y, double x);

which are a bit more verbose, but at least won't cause hours of bug-tracking :-(

I also made most compose, inverse, and rotate functions into methods, with the global functions mostly calling the methods. Methods have privileged access to members and hence are typically much more readable.
2010-03-03 03:31:53 +00:00
Frank Dellaert f956bae6a4 combined version only 2010-03-02 02:27:09 +00:00
Frank Dellaert b943644ddd re-factored so corresponds to math.lyx 2010-03-01 01:33:45 +00:00
Frank Dellaert 28f4493a2b Now uses Adjoint map for derivatives of inverse/compose/between, see doc/math.pdf 2010-02-28 09:10:39 +00:00
Kai Ni b58f7b8ea7 the derivative for transform_from 2010-02-28 08:51:43 +00:00
Kai Ni 87c8465315 the beautiful Jacobian of compose in pose2 2010-02-26 10:55:41 +00:00
Frank Dellaert 0a33b50554 use Matrix.resize 2010-02-26 04:03:31 +00:00
Frank Dellaert dd9446993a 5-fold performance improvement in combined between function 2010-02-24 06:14:02 +00:00
Richard Roberts c26219e3d4 Added Pose2::matrix() function. 2010-02-18 16:27:01 +00:00
Frank Dellaert 3c9c8bcfe5 Pose2Prior is now a typedef, improved some derivatives 2010-01-16 16:46:57 +00:00
Chris Beall a956c1a8be svn restored from 1733.
this commit updates gtsam to version 1774, which now appears as 1734.
2010-01-16 01:16:59 +00:00
Frank Dellaert 5c0cd093fd moved relative_bearing to Rot2, changed derivatives to new-style 2010-01-14 16:57:48 +00:00
Frank Dellaert 1aed18717b combined evaluation and derivatives 2010-01-12 02:08:41 +00:00
Richard Roberts 2b82ff65e7 Deriving Lie objects from a base class Lie<T>, which provides member functions to access global functions, for use in MATLAB. 2010-01-09 23:15:06 +00:00
Richard Roberts 19a3e228d7 Large refactoring - made several Lie group functions global, which used to be member functions, to treat Lie groups more uniformly. Also created Lie.h, and a preprocessor flag in numericalDerivative to change the coordinate frame derivatives are reported in. gtsam and easylib build and pass unit tests, but this will probably break other projects, which will require a few small changes to work again. Email coming in a few minutes to describe the changes. 2010-01-08 00:40:17 +00:00
Richard Roberts 92b60a8543 Made 'between' derivatives in the tangent space of the solution instead of tangent space of identity, this makes Pose2 an "origin-free" manifold. 2009-12-21 16:43:23 +00:00
Richard Roberts 7161878285 Small changes: standardized constructors, added log() and unit tests, removed +,- ops, angle() changed to theta(), print functions 2009-12-18 00:09:54 +00:00
Richard Roberts 94f986bbe7 Indentation 2009-12-15 00:00:02 +00:00
Richard Roberts c4b60bfd65 Closing # 118: Made Pose2 use Rot2, added 'compose' for Pose2, made slight modifications to Rot2. Also added additional unit tests. This change shouldn't break anything but let me know if it does. 2009-12-14 03:02:05 +00:00
Frank Dellaert d1ab2c7288 transform_to and between, with derivatives, unit-tested 2009-12-08 19:12:20 +00:00
Frank Dellaert 6ead19648f Modernized Pose2 constraint and added numerical derivative check 2009-12-08 14:02:56 +00:00
Brian Law 11f0d04cb6 made all classes that currently have an assert_equal "Testable"
- derive from testable as in class Point2 : Testable<Point2>
- moved print and equal declarations in .h right after the constructor
- similarly, moved implementations after constructors in .cpp file
- removed obsolete assert_equal
2009-10-26 19:26:51 +00:00
Frank Dellaert 3432b6c50f new Pose2 class 2009-08-29 01:24:26 +00:00