Forgot to check in how to use macros...
							parent
							
								
									949a6b7f4c
								
							
						
					
					
						commit
						fd59783fae
					
				|  | @ -62,7 +62,9 @@ public: | |||
| 
 | ||||
| }; | ||||
| 
 | ||||
| GTSAM_ADDITIVE_GROUP1(size_t, N, Cyclic) | ||||
| #define CYCLIC_TEMPLATE size_t N | ||||
| #define CYCLIC_TYPE Cyclic<N> | ||||
| GTSAM_ADDITIVE_GROUP(CYCLIC_TEMPLATE, CYCLIC_TYPE) | ||||
| 
 | ||||
| /// Define cyclic group to be a model of the Group concept
 | ||||
| namespace traits { | ||||
|  |  | |||
|  | @ -76,17 +76,13 @@ struct QuaternionChart { | |||
|   } | ||||
| }; | ||||
| 
 | ||||
| #define GTSAM_MANIFOLD2(T1,A1,T2,A2,MANIFOLD,DIM,SCALAR,OPTIONS,CHART) \ | ||||
| namespace manifold { \ | ||||
| namespace traits { \ | ||||
| template<T1 A1, T2 A2> struct dimension<MANIFOLD<A1,A2> > : public boost::integral_constant<int, DIM> {};\ | ||||
| template<T1 A1, T2 A2> struct TangentVector<MANIFOLD<A1,A2> > { typedef Eigen::Matrix<SCALAR, DIM, 1, OPTIONS, DIM, 1> type;};\ | ||||
| template<T1 A1, T2 A2> struct DefaultChart<MANIFOLD<A1,A2> > { typedef CHART<A1,A2> type;};\ | ||||
| }} | ||||
| #define QUATERNION_TEMPLATE typename _Scalar, int _Options | ||||
| #define QUATERNION_TYPE Eigen::Quaternion<_Scalar,_Options> | ||||
| GTSAM_MULTIPLICATIVE_GROUP(QUATERNION_TEMPLATE, QUATERNION_TYPE) | ||||
| 
 | ||||
| 
 | ||||
| GTSAM_MANIFOLD2(typename, _Scalar, int, _Options, Eigen::Quaternion, 3, _Scalar, _Options, QuaternionChart) | ||||
| GTSAM_MULTIPLICATIVE_GROUP2(typename, _Scalar, int, _Options, Eigen::Quaternion) | ||||
| #define QUATERNION_TANGENT Eigen::Matrix<_Scalar, 3, 1, _Options, 3, 1> | ||||
| #define QUATERNION_CHART QuaternionChart<_Scalar,_Options> | ||||
| GTSAM_MANIFOLD(QUATERNION_TEMPLATE,QUATERNION_TYPE,3,QUATERNION_TANGENT,QUATERNION_CHART) | ||||
| 
 | ||||
| /// Define Eigen::Quaternion to be a model of the Lie Group concept
 | ||||
| namespace traits { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue