Commit Graph

970 Commits (release/4.3a0)

Author SHA1 Message Date
John Lambert 0d19859f82 add python equivalent of c++ sfm data calls 2020-09-21 12:28:46 -04:00
John Lambert 2af56303fc add p 2020-09-21 12:28:16 -04:00
John Lambert 0e7719ae98
update python examples list 2020-09-21 12:19:33 -04:00
John Lambert 7478c19aad
update example list 2020-09-21 12:16:20 -04:00
John Lambert 169d42f313
use cleaner checkmark symbol in readme 2020-09-21 12:08:18 -04:00
John Lambert fe0312fd63
Update README.md 2020-09-21 09:58:03 -04:00
John Lambert 133b81867c
Update README.md 2020-09-21 09:40:42 -04:00
John Lambert bb22773a81
Update README.md 2020-09-21 09:39:46 -04:00
John Lambert bcaed27c54
improve python wrapper cmake flag instructions 2020-09-21 09:38:35 -04:00
Akshay Krishnan 565467f2ff translation averaging example 2020-09-20 20:34:10 +00:00
akrishnan86 1ed651b1a2 wrap MFAS 2020-09-18 23:14:07 -07:00
Varun Agrawal aa67e3c276 Make SharedNoiseModel as optional parameter, remove hardcoded verbosity, and silence test. 2020-09-17 21:36:34 -04:00
Akshay Krishnan 79827eb802
Merge branch 'develop' into feature/wrap_translation_averaging 2020-09-07 20:08:50 -07:00
Akshay Krishnan 556531f8b7 translation recovery unit tests pass 2020-09-06 23:54:27 +00:00
akrishnan86 0fb5c0d228 translation recovery py test 2020-09-06 11:56:13 -07:00
Fan Jiang 788a8771c4 Add the unit test for DSF in Python 2020-09-06 14:34:30 -04:00
Fan Jiang e43f78bfe8 Wrap DSFMap so SFM can use them 2020-09-06 14:31:48 -04:00
Varun Agrawal 43dfe0f47d Add python version of findExampleDataFile 2020-08-31 13:56:56 -04:00
Varun Agrawal ac3e564293 Better location for setting Python dataset directory in CMake 2020-08-31 10:10:54 -04:00
Varun Agrawal 3674b9c65f Add data files to python package 2020-08-31 09:51:14 -04:00
akrishnan86 7ffa54f896 TAvg wrapper builds 2020-08-30 21:53:12 -07:00
akrishnan86 9b481cb790 wrapping translation recovery doesnt build 2020-08-27 22:18:53 -07:00
Varun Agrawal 32943df612
Merge pull request #365 from borglab/imu-examples
Reworked IMU examples
2020-08-24 13:54:39 -04:00
Fan Jiang b74c053c65 Proper method to deal with markdown in setup.py 2020-08-23 22:01:49 -04:00
Fan Jiang 8e5dbeba57 Fix preamble.h 2020-08-21 11:57:01 -04:00
Fan Jiang 7f32553440 Merge remote-tracking branch 'origin/develop' into feature/tbb_fixes 2020-08-21 11:56:51 -04:00
Varun Agrawal 9e1c4fc2fb Merge branch 'develop' into imu-examples 2020-08-21 11:25:39 -04:00
Frank dellaert 12d8ae2f5f Address review comments 2020-08-21 11:01:08 -04:00
Fan Jiang 4ba494aa3f Cleanup preamble and specialization 2020-08-21 10:43:19 -04:00
Frank Dellaert 30ee2b9409
Merge branch 'develop' into feature/ShonanCLI 2020-08-21 09:46:04 -04:00
Frank dellaert 9f660f9b98 Made 2D and 3D translation recovery work, and added plot 2020-08-20 23:26:29 -04:00
Frank dellaert af7ced4112 Now plots 2D or 3D trajectories (on a 3D plot) 2020-08-20 23:25:51 -04:00
Frank dellaert 84e0bc5351 Added more support for Pose2 data 2020-08-20 23:25:28 -04:00
Frank dellaert 3d477f3a38 Fixed Point2 and Point3 to have similar behavior as in C++
- to also take vectors
- to be initialized to Nan
2020-08-20 18:50:47 -04:00
Fan Jiang 67ddcaf22d Add missing newline 2020-08-20 18:17:44 -04:00
Fan Jiang fb96e049c4 Fix Python wrapper with TBB on 2020-08-20 16:58:21 -04:00
Frank dellaert 96a59e6a14 Python CLI 2020-08-19 23:43:24 -04:00
Frank Dellaert cb2a8cd950 Added Shonan Averaging unit tests 2020-08-18 23:19:56 -04:00
Fan Jiang 8154dfd10b Add dependency for python-install 2020-08-18 22:39:13 -04:00
Fan Jiang 3d846ef7a8 Reformat CMake files 2020-08-18 11:47:38 -04:00
Fan Jiang cbddcd0f51 Add docs for preamble and specialization.h 2020-08-18 11:32:05 -04:00
Fan Jiang 0c3b08ef4c Document tricks to allow direct import from xxx 2020-08-18 11:29:13 -04:00
Fan Jiang 09c1e3b3f4 Add documentation to the templates 2020-08-18 11:26:34 -04:00
Fan Jiang 60e0293511 update readme 2020-08-18 11:13:55 -04:00
Fan Jiang d790f235a7 Add supplimentary files used by the new pybind11 wrapper 2020-08-18 11:03:51 -04:00
Fan Jiang 03306cba9c Migrated all examples and tests 2020-08-18 11:02:35 -04:00
Fan Jiang 8a130c1a54 Remove eigency 2020-08-18 11:00:11 -04:00
Fan Jiang 6604b4f45b Renamed cython to python 2020-08-18 10:56:08 -04:00
Fan Jiang bb6aea3b8f Remove python folder temporarily 2020-08-18 10:55:45 -04:00
Fan Jiang 723d00a40a Small fixes 2020-08-17 19:21:06 -04:00
Fan Jiang b0d100b8fb Python supplementary files 2020-08-17 14:38:00 -04:00
Fan Jiang fa97bc2372 Newline 2020-07-31 12:48:50 -04:00
Fan Jiang c0486d39a0 Import classes used more than once 2020-07-31 12:47:08 -04:00
Fan Jiang b02cc3f7e3 remove function import 2020-07-31 12:42:09 -04:00
Fan Jiang 1cabd2000f Sync with new_wrapper develop branch 2020-07-31 12:39:04 -04:00
Fan Jiang fda79057e4 import from is working 2020-07-31 12:16:25 -04:00
Fan Jiang 3d4a8e16a2 Moved python files 2020-07-31 11:49:31 -04:00
Fan Jiang e9deca590a Sync with varun's pr 2020-07-29 13:54:49 -04:00
Fan Jiang 08da0ab5a6 Change to new KeyVector accessor 2020-07-28 11:16:58 -04:00
Fan Jiang b6ab778e96 Fix import typo 2020-07-28 11:05:24 -04:00
Varun Agrawal 95b77f7634 sort imports in python examples 2020-07-27 21:25:44 -05:00
Varun Agrawal 95d3582c2e replaced SimpleCamera with PinholeCamera and updated tests 2020-07-27 21:25:27 -05:00
Varun Agrawal c8806dcb24 rename ImuFactorExample2 to more descriptive name 2020-07-27 21:01:47 -05:00
Varun Agrawal 0b550b355f update ImuFactorExample2.py 2020-07-27 21:01:47 -05:00
Varun Agrawal 858f5d42d3 add incremental plotting function 2020-07-27 21:01:47 -05:00
Varun Agrawal e92c5e2ed4 fix warnings from subplots and improve code 2020-07-27 21:01:47 -05:00
Varun Agrawal 7114cf93d3 update ImuFactorExample.py 2020-07-27 21:01:47 -05:00
Fan Jiang bc95b41efc Update more to match cython 2020-07-27 15:16:26 -04:00
Fan Jiang 7b4266ed6b Update to match cython 2020-07-27 14:35:28 -04:00
Fan Jiang 128db80fec Fix Pose2 plot 2020-07-27 11:17:06 -04:00
Fan Jiang 48b0c845dc Sync ImuFactorExample2 2020-07-27 11:01:59 -04:00
Fan Jiang 2bda74950a Sync ImuFactorExample 2020-07-27 10:56:09 -04:00
Fan Jiang 9216934ca8 Replace with new python tests 2020-07-27 09:32:31 -04:00
Fan Jiang 7873c36088 Add unstable files 2020-07-27 09:30:24 -04:00
Fan Jiang c0c2564ac6 Copy cython files 2020-07-27 09:29:28 -04:00
dellaert e88282c31a removed python 2019-05-19 11:30:32 -04:00
Frank Dellaert 8801de4d63 Pose3 naming convention 2019-05-16 15:06:15 -04:00
Duy-Nguyen Ta b2e5dadcdb Merge branch 'develop' of https://bitbucket.org/gtborg/gtsam into fix/trailing_whitespaces
# Conflicts:
#	gtsam/symbolic/tests/testVariableIndex.cpp
#	gtsam_unstable/gtsam_unstable.h
#	gtsam_unstable/linear/RawQP.cpp
#	gtsam_unstable/linear/RawQP.h
2019-05-12 09:26:28 -04:00
Varun Agrawal 9a322db815 Added deprecation notice for python folder 2019-04-15 12:50:53 -04:00
Duy-Nguyen Ta 1cdc228d6a remove trailing spaces 2019-02-11 10:58:34 -05:00
Frank Dellaert ae86bf0271 BackprojectFromCamera and some small fixes from Skydio 2018-05-11 15:13:14 -07:00
Haldean Brown 42e7e31340 Add new Pose3::bearing overload to Python wrapper 2017-03-13 10:31:37 -07:00
Ellon Mendes 5482f1f5eb [python] Make python library hidden by renaming gtsampy.so to _gtsampy.so
This commit also fixes a naming problem of the python .so module
(_libgtsam_python.so -> _gtsampy.so)
2017-03-07 15:24:36 -08:00
Abe fbe9aac41c squash local changes on top of gtsam upstream pull from 6/14/2016 2016-06-18 23:13:59 -07:00
Frank Dellaert 8c931f2839 Merged in EllonPaiva/gtsam/fix/python_warnings (pull request #261)
[python] Use macro to avoid shared_ptr registration warnings in boost python
2016-06-13 16:29:19 -07:00
Ellon Mendes 62e0cb6613 [python] Put the macro into a separated file (python/handwritten/common.h) 2016-06-13 15:18:24 +02:00
Ellon Mendes 9de6d200b2 [python] Use macro to avoid shared_ptr registration warnings in boost python
Warning message was:
../lib/python2.7/site-packages/gtsam/__init__.py:1: RuntimeWarning: to-Python converter for boost::shared_ptr<CLASS_NAME> already registered; second conversion method ignored.
2016-06-10 10:15:29 +02:00
Frank Dellaert b30a7685db Fix IMU example 2016-06-09 00:19:54 -07:00
Frank Dellaert a79be00dd6 no wrapping if typedef 2016-06-08 18:34:24 -07:00
Frank be21889e9d One flag to rule them all: GTSAM_TYPEDEF_POINTS_TO_VECTORS 2016-06-06 18:31:10 -07:00
dellaert bdbbe0203d Derive Point2 from Vector2 and deprecate a number of methods 2016-06-05 23:52:04 -07:00
dellaert 9f84b46e3f TRying to get past compile issue on Jenkins 2016-06-05 01:16:35 -07:00
dellaert 8aecbfd951 Trying different fix for Python wrapper 2016-06-05 01:04:18 -07:00
dellaert cdf9c53b96 Removed base class so python wrapper compiles 2016-06-04 17:52:10 -07:00
dellaert ad54d7805c Return value, not const reference 2016-04-10 18:30:41 -07:00
dellaert 1233a9c9b7 Merge remote-tracking branch 'origin/develop' into feature/Feature/FixedValues
Conflicts:
	gtsam.h
	python/handwritten/nonlinear/Values.cpp
2016-04-10 17:40:26 -07:00
dellaert 6ccc2a84b3 Deal with changes in Values 2016-04-10 17:26:29 -07:00
Ellon Mendes 5c16caf38b Wrap NonlinearFactorGraph's clone method to python 2016-02-26 14:47:05 +01:00
Frank 0372a959ee Many small improvements, bug-fixes, and tests 2016-02-24 11:01:19 -08:00
dellaert 6d4cf0c115 Fix compile issue 2016-02-18 09:55:59 -08:00
dellaert a9b0d81be4 Yet another overload fix in python wrapper 2016-02-17 18:56:44 -08:00
dellaert df4efbf2d7 Fixed python wrapper issue 2016-02-17 17:42:20 -08:00
Frank fefb74350a Merge branch 'feature/lightweightPoint3' into feature/Vector3
Conflicts:
	gtsam/geometry/Point3.cpp
2016-02-09 18:03:17 -08:00
Frank 90e7a9a194 Made all methods with derivatives available as free functions 2016-02-09 18:01:47 -08:00
Frank 3394e85ef7 Now allows for a flag to compile Point3 as derived from Vector3 2016-02-08 17:34:42 -08:00
Frank 4319bece1e Deprecated some more methods 2016-02-08 15:16:11 -08:00
Frank 0560467bfc Merge remote-tracking branch 'origin/fix/move_numpy_eigen' into feature/ImuFactorPush2 2016-01-28 16:57:12 -08:00
Frank 52f3432988 Moved numpy_eigen headers to a more logical place 2016-01-28 16:47:12 -08:00
dellaert 1d62faa5a5 Refactored plot without underscores 2016-01-28 01:32:36 -08:00
dellaert c4494ba969 Small changes 2016-01-28 01:32:20 -08:00
dellaert 659caa58c1 getNonlinearFactor 2016-01-28 01:32:02 -08:00
dellaert 1b9b90803a Committed to MATLAB atT methods 2016-01-28 01:31:44 -08:00
dellaert 361101fdd9 Improved/refactored example 2016-01-28 01:31:05 -08:00
dellaert 558dfa458a Merge remote-tracking branch 'origin/develop' into feature/ImuFactorPush2
Conflicts:
	gtsam/navigation/tests/testCombinedImuFactor.cpp
	gtsam/navigation/tests/testImuFactor.cpp
2016-01-28 01:13:08 -08:00
dellaert 1e1c0dbff1 Works with bias on all 6 axes ! 2016-01-28 00:58:31 -08:00
dellaert dbe2fe59a3 Cleaned up, committed to atT 2016-01-28 00:58:07 -08:00
dellaert 9dbe61a05e Cleaned up plot 2016-01-28 00:57:24 -08:00
dellaert 85e231bea5 Fully working ! 2016-01-28 00:29:18 -08:00
Frank c49a97a9c6 Fix initial values guess 2016-01-27 21:23:57 -08:00
Frank 1c19b4e803 More wrapping 2016-01-27 21:23:45 -08:00
Frank 7b60c50297 New method computeError, and more derivative checking (though, expression factors already checked out) 2016-01-27 16:51:09 -08:00
Frank 653a41bc5a Compare prediction with actual navState in two scenarios 2016-01-27 15:15:55 -08:00
Frank 8126e6b51d add navState method 2016-01-27 15:15:33 -08:00
Frank ac6fb495a6 Full optimization 2016-01-27 14:16:18 -08:00
Frank 69a53f8e00 simplify keys 2016-01-27 14:16:09 -08:00
Frank 02e2b37b08 Add a few more template arguments 2016-01-27 14:15:50 -08:00
Frank fa97e5d220 Better printing 2016-01-27 14:15:16 -08:00
Frank 3bb34679be Split into two units 2016-01-27 13:17:03 -08:00
Frank 1ba304a2e3 Moved preintegration into separate example, inherit from it 2016-01-27 12:18:37 -08:00
Frank b6ead53c25 Validate bias correction 2016-01-27 11:50:36 -08:00
Frank Dellaert 6eece9cc60 Quaternion now also uppercase 2016-01-26 23:57:34 -08:00
Frank Dellaert d39759d8c8 Appropriate dt for integration 2016-01-26 21:37:22 -08:00
Frank Dellaert 15dfd932f1 Tying up loose ends, ostream, get rid of cov_ 2016-01-26 21:35:32 -08:00
Frank ae867e8d6e Integrate the IMU, plot the prediction 2016-01-26 18:13:28 -08:00
Frank 5f491ac52f ScenarioRunner used to sumulate noise 2016-01-26 17:37:38 -08:00
Frank 8e54e00348 ScenarioRunner wrapped and tested 2016-01-26 17:37:23 -08:00
Frank cf07c22c2c Showing trajectory and ground truth quantities 2016-01-26 15:46:36 -08:00
Frank ac57680dee Interactive and shorthand symbols 2016-01-26 14:55:33 -08:00
Frank ea3d72c66f Show a loop Scenario 2016-01-26 14:41:55 -08:00
Frank c25e1e6b73 Wrapped ConstantTwistScenario 2016-01-26 14:16:24 -08:00
Frank a126c91d6f Skeleton with interactive plotting 2016-01-26 13:19:25 -08:00
Frank Dellaert a6c265fda0 OdometryExample and necessary wrapping 2016-01-25 00:58:08 -08:00
Frank Dellaert 312b8f5da0 Cleaned up example 2016-01-25 00:57:35 -08:00
Frank Dellaert 6ee3e42d27 Update README 2016-01-25 00:09:51 -08:00
Chris Beall cd0215d9a8 Add back empty __init__.py file for gtsam_tests. Seems required to be able to do "import gtsam_tests", but it can be empty. 2016-01-24 23:47:36 -05:00
Chris Beall 00da6d3f81 string concat the CMake 2.8-friendly way 2016-01-24 23:29:06 -05:00
Chris Beall 8c0f928f11 Another attempt at fixing installation of _libgtsam_python.so. package_data is relative to package_dir, so the previous approach doesn't work when package_dir is in the source tree (and we don't want to copy the lib to source, or all of the source into lib). Using data_files method instead. 2016-01-24 23:22:40 -05:00
Chris Beall 6b85a8db14 typo 2016-01-24 20:54:16 -05:00
dellaert 7b493812e8 Adapt to new dir structure 2016-01-24 15:51:04 -08:00
dellaert 0605abfea5 Chaned dir structure a bit 2016-01-24 15:50:31 -08:00
dellaert fb8a62dd1d Used python.in to generate setup.py
Also fixed cmake stuff to copy library to correct location
Minor improvements of cmake
Automatic install of python package
2016-01-24 15:28:16 -08:00
Chris Beall 4c44ddc4e6 Print all python-related dependency warnings at the end of cmake output with all the other warnings. Don't automatically toggle GTSAM_BUILD_PYTHON option to OFF - this is more consistent with how other options are handled. 2016-01-21 01:13:22 -05:00
dellaert c77997fbb1 Fixed typo 2016-01-19 23:18:39 -08:00
cbeall3 31888d653c Remove CMake option to use 3rdparty numpy C-API 2016-01-19 14:45:34 -05:00
Ellon Mendes 4f4d7c2af5 Add value_exists() and calculate_pose3_estimate to ISAM2 in python 2015-12-11 18:20:33 +01:00
Ellon Mendes 383986902a Add quaternion() method, use properly quaternion named constructor, and add some comments on RzRyRx 2015-12-11 18:19:05 +01:00
Ellon Mendes 868f1511fc Add Quaternion named constructor to Rot3 in the python module 2015-12-08 14:31:24 +01:00
Ellon Mendes 46178731c6 "cmake -E copy_if_different" -> "cmake -E copy" for .py files
"cmake -E copy" is enough because it checks the timestamp to decide if it the
copy should be made or not.
2015-12-03 13:01:19 +01:00
Ellon Mendes 31a88ba910 Remove some variables to improve readbility 2015-12-02 15:29:07 +01:00
Ellon Mendes 87211319fb Update python/README.md 2015-12-02 14:35:51 +01:00
Ellon Mendes 4f509c2dff Improve printing when copying .py files 2015-12-02 14:15:10 +01:00
Ellon Mendes 81a1fe1c3a Create a proper target to generate python/gtsam/_libgtsam_python.so in the build directory 2015-12-02 13:35:17 +01:00
Ellon Mendes 4671b03e74 Only copy .py files if they've changed 2015-12-02 13:35:17 +01:00
Ellon Mendes 768c594299 Copy python/gtsam to build/python directory
Not the best way since the gtsam module into build/python won't be updated if
.py files change in the python module.
2015-12-02 13:35:17 +01:00
Ellon Mendes 888af6b948 Remove unused lines that generate warnings on CMake 3.4 2015-12-02 13:35:17 +01:00
Ellon Mendes 2e4a96dc18 Do not store RPATH into _libgtsam_python.so
Since we're copying the .so from the build dir to python/gtsam _outside_ the
build dir, we should remove the rpath from the .so, so it will search the
library in the system, and not in the build directory, after installed using
setup.py
2015-12-02 13:35:17 +01:00
Ellon Mendes 57373c8c47 Wrap Cayley methods to python only if not using Quaternions 2015-12-02 13:35:17 +01:00
Ellon Mendes dfc15a2f17 Rename python module related cmake variables to improve readability 2015-12-02 13:35:17 +01:00
Ellon Mendes eb798f88fe Add NumPy C-API 1.8.2 to gtsam/3rdparty; Add option o use system or bundled one 2015-12-02 13:35:17 +01:00
Ellon Mendes 40a567c1ed Look for NumPy C-API if building the python module 2015-12-02 13:35:17 +01:00
Ellon Mendes d51c6f3313 Fix cmake to use default python and boost python versions 2015-12-02 13:35:17 +01:00
Ellon Mendes 09ec306013 Update __ini__.py to be supported in python 2 and 3 2015-12-02 13:35:17 +01:00
Ellon Mendes 72bcc4f08e Change VisualISAM2Example to work with python 2 and python 3 2015-12-02 13:35:17 +01:00
Ellon Mendes dfa2b53eeb import_array() --> import_array1() 2015-12-02 13:35:16 +01:00
Ellon Mendes 5b116a4a67 Add option to chose target python version to create module 2015-12-02 13:35:16 +01:00
Ellon Mendes ea6ecdd9d5 Move subdirlist macro to cmake/GtsamPythonWrap.cmake
Conflicts:
	cmake/GtsamPythonWrap.cmake
2015-12-02 13:35:16 +01:00
Ellon Mendes 4f98ec889c Fix python instalation using distutils
Conflicts:
	python/README.md
2015-12-02 13:35:16 +01:00
Ellon Mendes d3db7309bc Make libgtsam_python a hidden module by adding '_' before lib name 2015-12-02 13:35:16 +01:00
Ellon Mendes 8fa1acc553 Move plot functions to a submodule utils 2015-12-02 13:35:16 +01:00
Ellon Mendes 4f37929d80 Add ploting to VisualISAM2Example.py 2015-12-02 13:35:16 +01:00
Ellon Mendes 46a1970731 Wrap KeyVector to python
While here, do small cleanup on exportgtsam.cpp
2015-12-02 13:35:16 +01:00
Ellon Mendes a6b48194fd Print result of example to console 2015-12-02 13:35:16 +01:00
Ellon Mendes 92bfcaa004 Wrap some properties of ISAM2Params to python 2015-12-02 13:35:16 +01:00
Ellon Mendes cba6085557 Add VisualISAM2Example. Still need to finish some details of the example 2015-12-02 13:35:16 +01:00
Ellon Mendes bc73a5132a Wrap few more missing methods on ISAM2 and NonlinearFactorGraph 2015-12-02 13:35:16 +01:00
Ellon Mendes 7576dc359d Wrap more methods of Pose3 to python 2015-12-02 13:35:16 +01:00
Ellon Mendes 8ae3dda6a6 Add helper functions to better handle gtsam.Symbol on python 2015-12-02 13:35:16 +01:00
Ellon Mendes 49d02c798f Wrap PinholeBaseK to python and declare it as parent of PinholeCamera 2015-12-02 13:35:16 +01:00
Ellon Mendes c878278687 Wrap GenericProjectionFactor to python 2015-12-02 13:35:16 +01:00
Ellon Mendes 6196f95301 Wrap Cal3_S2 to python 2015-12-02 13:35:16 +01:00
Ellon Mendes 818db17392 Wrap symbol to python 2015-12-02 13:35:16 +01:00
Ellon Mendes 982d81e1c9 Add python version of SFMdata as gtsam.examples submodule
The gtsam.examples submodule should be loaded explicitely:
>>> import gtsam.examples
2015-12-02 13:35:16 +01:00
Ellon Mendes 0e134c09db Wrap PinholeCameraCal3_S2 to python 2015-12-02 13:35:16 +01:00
Ellon Mendes ade8ab4053 Remove old files which content was was already moved to other src files 2015-12-02 13:35:16 +01:00
Ellon Mendes 05f6237f71 Define NO_IMPORT_ARRAY in all cpp files before including NumpyEigenConverter.hpp
This fixes the segmentation fault when converting numpy and Eigen.

The reason is that NumpyEigenConverter.hpp includes numpy/arrayobject.h, and for
the numpy's C-API to work in multiple files we need to define NO_IMPORT_ARRAY
before including numpy/arrayobject.h in all the source files but the one that
defines the module initialization (exportgtsam.cpp in out case), as explained
here:
http://docs.scipy.org/doc/numpy/reference/c-api.array.html#importing-the-api

Note that PY_ARRAY_UNIQUE_SYMBOL, also needed to work multifile, is already
defined on NumpyEigenConverter.hpp.
2015-12-02 13:35:15 +01:00
Ellon Mendes c140a784fe Add constness to matrices and vectors 2015-12-02 13:35:15 +01:00
Ellon Mendes d76ed71c99 Move my developments to the handwritten structure of files that existed before
There's a problem with numpy_eigen causing a segmentation fault.
2015-12-02 13:35:15 +01:00
Ellon Mendes ffae37a675 Revert python module to use old handwritten files
Just noticed several handwritten files here. I'm reverting the python module to
use these handwritten files to later add the files I was wrapping to the same
framework.

Classes from geometry were wrapped for an old C++ interface, so several
boost python's .def(...) were commented out.

Conflicts:
	python/gtsam/.gitignore
2015-12-02 13:35:15 +01:00
Ellon Mendes 7680b533ac Wrap basic functions of NonlinearFactorGraph and ISAM2
While here, change method names for python convention on PEP0008
2015-12-02 13:35:15 +01:00
Ellon Mendes b10f7386c5 Wrap prior factors 2015-12-02 13:35:15 +01:00
Ellon Mendes 72a800f70f Add inheritance to from NonlinearFactor to BetweenFactor.
Nonlinear factor is pure virtual, so we need to declare a wrapper, even
if we don't export anything from it.

Also, we don't make explicit all the chain of inheritance from BetweenFactor,
since it looks like exporting inheritance directly from NonlinearFactor allows
adding it to NonlinearFactorGraph.
2015-12-02 13:35:15 +01:00
Ellon Mendes 828b230e17 Add overloads for named constructors on noiseModel module 2015-12-02 13:35:15 +01:00
Ellon Mendes 9a97248ee4 Put classes in namespaces close to gtsam's C++ interface 2015-12-02 13:35:15 +01:00
Ellon Mendes 6684f69d0a Fix inheritance problem on python wrapping of noise models 2015-12-02 13:35:15 +01:00
Ellon Mendes 72d73c6721 Add slam as submodule of gtsam python module 2015-12-02 13:35:15 +01:00
Ellon Mendes e0b8d87695 Wrap Values::insert and Values::at for Point3, Rot3, and Pose3 2015-12-02 13:35:15 +01:00
Ellon Mendes 7cfd57339a Add nonlinear submodule of gtsam python module 2015-12-02 13:35:15 +01:00
Ellon Mendes ff1cd140bb Register convertion between numpy and eigen in a separated submodule 2015-12-02 13:35:14 +01:00
Ellon Mendes a0064f3aab Add geometry submodule of python module 2015-12-02 13:35:14 +01:00
Ellon Mendes 977d4aa54f Add 'bases' for noiseModel classes
While here, add comments and TODOs
2015-12-02 13:35:14 +01:00
Ellon Mendes 96d6b79f5e Start organizing python module
Organize gtsam modules into submodules. Start with a handwritten noiseModel
module.

Conflicts:
	CMakeLists.txt
2015-12-02 13:35:14 +01:00
Andrew Melim 6a34fa0a22 Markdown readme 2015-12-02 13:35:14 +01:00
Andrew Melim dca285a9d8 Remove library 2015-12-02 13:35:14 +01:00
Andrew Melim 20f5c46507 Reworked python directory structure. Added readme on constructing python module. Added first unit test for point2. Everything needed to get it passing is also here, including some renaming of variables and emitted library names
Conflicts:
	cmake/GtsamPythonWrap.cmake
	python/handwritten/examples/OdometeryExample.py
	wrap/Module.cpp
2015-12-02 13:35:14 +01:00
Andrew Melim 4e00f70e82 Updating cmake build 2015-12-02 13:35:14 +01:00
Andrew Melim def2f1a91c Installation script for python Distutils for python package. Installs to default python dist-packages location call : python setup.py install 2015-12-02 13:35:14 +01:00
Andrew Melim 414e6b58f9 Finally fixed templates, moved into single library for simplicity, add noisemodels, nonlinear 2015-12-02 13:35:14 +01:00
Andrew Melim d0efbadac8 Example on how to wrap templated classes such as factors 2015-12-02 13:35:14 +01:00
Andrew Melim 2455780829 Rot2, Pose2, Point2 now all work fairly well in Python. See Pose2.cpp for examples on method overloading and auto-declarations 2015-12-02 13:35:14 +01:00
Andrew Melim ec934770f3 Initial stages of python wrapping. Issues with method overloading, boost optionals. Testing with Point2 only now 2015-12-02 13:35:13 +01:00