Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bullet dispatch in RBT #5

Open
wants to merge 267 commits into
base: ComputeMaximumDepthCollisionPoints2
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
267 commits
Select commit Hold shift + click to select a range
f48e0b5
Added a unit test that locks in the ability to load a URDF as the wor…
Jun 17, 2016
efa2bc9
Merge pull request #2574 from liangfok/feature/multi_prius_demo
sherm1 Jun 17, 2016
c3bbcba
Modified prius.urdf to have a world link so it can be correctly offse…
Jun 17, 2016
72c693d
Merge pull request #2543 from amcastro-tri/ComputeMaximumDepthCollisi…
sherm1 Jun 17, 2016
0dcb58a
Added unit test RigidBodyTest / TestGetJointThatIsNotSet.
Jun 17, 2016
481cd7a
Remove link to rtedrake's personal dropbox inadvertently included here
ggould-tri Jun 17, 2016
aa06d45
Fixed seg fault that occurs when URDF contains a transmission for a j…
Jun 17, 2016
d410e40
Merge pull request #2581 from ggould-tri/remove_unwanted_link
RussTedrake Jun 18, 2016
e875c60
Updated black list to include bad_transmission_no_joint.urdf.
Jun 18, 2016
1fd5fa1
Merge branch 'master' into feature/fix_2247_prius_urdf_world_link
Jun 18, 2016
102e9db
Simplified compareRigidBodySystem.cpp since world offset can now be s…
Jun 18, 2016
14118ef
Updated URDF visual element warning to include model and link name.
Jun 18, 2016
579a104
Fixes some cappunc problems.
Jun 18, 2016
6f95aa0
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 19, 2016
d293903
Fixed comment in rigid_body_system_test.cc.
Jun 19, 2016
9e850ad
Updated RigidBodyTreeURDF.cpp to add material color specifications th…
Jun 19, 2016
c50e01c
qp from a proper rebase
naveenoid Jun 19, 2016
611ba90
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 20, 2016
f540d6e
Merge branch 'feature/car_sim_urdf_world_model' of github.com:liangfo…
Jun 20, 2016
e08d04a
Added newline to end of world.urdf.
Jun 20, 2016
6241f62
rebased QP
naveenoid Jun 20, 2016
42656a9
Ran clang-format on RigidBodyTreeURDF.cpp.
Jun 20, 2016
6b3655d
Merge pull request #2579 from david-german-tri/ipopt
david-german-tri Jun 20, 2016
eadd7e4
Cleanup RBT collision test
amcastro-tri Jun 17, 2016
07d0b3c
Merge pull request #2580 from liangfok/feature/fix_2247_prius_urdf_wo…
sherm1 Jun 20, 2016
cfa9c65
Renames and moves test to rigid_body_tree folder.
amcastro-tri Jun 20, 2016
d573077
Removes PRINT_VAR's from RigidBodyTree.cpp
amcastro-tri Jun 20, 2016
bac9727
Updated documentation for RigidBodyTree::findBodyIndex(). I'm switchi…
Jun 20, 2016
b34e9e6
Merge pull request #2576 from liangfok/feature/car_sim_urdf_world_model
liangfok Jun 20, 2016
78559f7
Merge branch 'master' into feature/fix_1864_rigid_body_get_joint_no_j…
Jun 20, 2016
bdfcb2e
Adds Doxygen doc for RBT::ComputeMaximumDepthCollisionPoints
amcastro-tri Jun 20, 2016
f0038f5
Updates namespaces
amcastro-tri Jun 20, 2016
12bcd44
Removes lint
amcastro-tri Jun 20, 2016
a3be735
Merge branch 'master' into RBT_ComputeMaximumDepthCollisionPoints3
amcastro-tri Jun 20, 2016
fec6291
Addressed reviewer comments.
Jun 20, 2016
b26748e
Oops. Forgot to commit/push all of my previous changes.
Jun 20, 2016
b326558
Merge pull request #2595 from liangfok/feature/fix_comment
sherm1 Jun 20, 2016
1ac16e1
More "link" to "body" refactoring.
Jun 20, 2016
5a2a6ad
Added CHANGELOG entry.
Jun 20, 2016
7bbd717
Added missing newline to CHANGELOG.
Jun 20, 2016
55e8d99
Fixes doc
amcastro-tri Jun 20, 2016
d2e7693
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 20, 2016
4b21b58
Document how to build with Ninja.
david-german-tri Jun 13, 2016
8b1131c
Modified RigidBodyTreeURDF.cpp to throw exceptions instead print warn…
Jun 20, 2016
09887aa
Updated unit test to ensure an exception is thrown.
Jun 20, 2016
658142b
Merge pull request #2555 from david-german-tri/doc
david-german-tri Jun 20, 2016
70707cd
Implements RigidBodyCollisionPair
amcastro-tri Jun 20, 2016
fa0d778
Bugfixed and linearCost merged into QuadraticProgramCost
naveenoid Jun 20, 2016
aefecd8
Add eigen_types, and use more concise Eigen type names in RigidBodyTr…
david-german-tri Jun 20, 2016
4fe9f12
Fix clang unused-private-field warnings.
jwnimmer-tri Jun 21, 2016
c090a9f
Stop suppressing -Wunused-private-field.
jwnimmer-tri Jun 21, 2016
d837bf1
test randomizer seeding and whitespace cleanup
naveenoid Jun 21, 2016
0d14a04
Merge pull request #2584 from liangfok/feature/fix_1864_rigid_body_ge…
liangfok Jun 21, 2016
eac0c6a
Merge pull request #2601 from david-german-tri/ram
david-german-tri Jun 21, 2016
9446bbd
Add drake_assert.h.
jwnimmer-tri Jun 20, 2016
1eb6467
Add drake_assert_test.
jwnimmer-tri Jun 20, 2016
5ed3c42
Add drake_assert_test_compile.
jwnimmer-tri Jun 20, 2016
a7470a0
Replace assert() with DRAKE_ASSERT().
jwnimmer-tri Jun 20, 2016
8c3a040
Adds Element* members to PointPair
amcastro-tri Jun 21, 2016
aa6cff4
Moves RigidBody::ColisionElement::body to DrakeCollision::Element::body_
amcastro-tri Jun 21, 2016
a3b9e64
Adds element accessors to PointPair
amcastro-tri Jun 21, 2016
8151468
Removes findElement+dynamic_cast from RBT collision dispatching methods
amcastro-tri Jun 21, 2016
664d158
Fix up per code review suggestions.
jwnimmer-tri Jun 21, 2016
80e182c
Merge pull request #2602 from jwnimmer-tri/assertion-1935
jwnimmer-tri Jun 21, 2016
fe2237a
Fixes bug introduced in BulletModel::findClosestPointsBetweenElements
amcastro-tri Jun 21, 2016
ab1b521
Merge pull request #2604 from jwnimmer-tri/werror-unused-private-field
david-german-tri Jun 21, 2016
982fc9b
Changed "mpich2" to be "mpich" for Ubuntu since the "2" is vestigial.
Jun 21, 2016
9dea48d
Make BotVisualizer pass a VectorX to doKinematics, instead of a bunch…
david-german-tri Jun 21, 2016
149160c
Updated to use new FindBody() API.
Jun 21, 2016
8aacceb
Added back RigidBodyTree::findLinkID() and RigidBodyTree::finLink(). …
Jun 21, 2016
aa82143
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 21, 2016
f337c61
Removed RigidBodyTree::findLink() and RigidBodyTree::findLinkId() bec…
Jun 21, 2016
9bb1003
Changed "mpich2" to be "mpich" for Ubuntu since the "2" is vestigial.…
liangfok Jun 22, 2016
1ae1055
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 22, 2016
4ce47be
lower accuracy requirements for some of the tests
naveenoid Jun 22, 2016
ef7377e
Merge branch 'feature/issue_2585_urdf_visual_problems' of github.com:…
Jun 22, 2016
91b32c6
Addressed reviewer comments.
Jun 22, 2016
29b1a16
Fixed typo and variable name bug.
Jun 22, 2016
61443de
Modified URDF parser to consider for texture-based materials before d…
Jun 22, 2016
ca3107a
Move doKinematics out of RigidBodyTree.h using explicit instantiation…
david-german-tri Jun 21, 2016
e091088
push_back --> emplace_back
amcastro-tri Jun 22, 2016
6a1e0af
C-macho cast to reinterpret_cast
amcastro-tri Jun 22, 2016
15ba9bd
Fixes unitialized PointPair::distance_
amcastro-tri Jun 22, 2016
80e145d
Merge branch 'master' into collision_avoid_expensive_ops
amcastro-tri Jun 22, 2016
ff0a062
Fixed bug in URDF.
Jun 22, 2016
af7323f
Merge pull request #2610 from david-german-tri/do_kinematics
david-german-tri Jun 22, 2016
9fabbc1
Banish #include "DrakeJoints.h" from RigidBodyTree.h.
david-german-tri Jun 21, 2016
2c499b1
Merge branch 'feature/link_to_body_refactor' of github.com:liangfok/d…
Jun 22, 2016
0146808
Revert "Removed RigidBodyTree::findLink() and RigidBodyTree::findLink…
Jun 22, 2016
20b223b
Move RigidBody::adjacentTo into the cc file.
david-german-tri Jun 21, 2016
2150254
Correct the public/private/protected order in DrakeJoint, and remove …
david-german-tri Jun 21, 2016
cf936f3
Added info to set the F77 environment variable
Jun 22, 2016
0db15a9
Merge pull request #2614 from david-german-tri/ram2
david-german-tri Jun 22, 2016
ab8ba73
Merge pull request #2616 from david-german-tri/ram5
david-german-tri Jun 22, 2016
4be1659
Merge pull request #2615 from david-german-tri/ram4
david-german-tri Jun 22, 2016
ed495f0
Added deprecated attribute to RigidBodyTree::findLink and RigidBodyTr…
Jun 22, 2016
91413e6
Added unit test for deprecated methods RigidBodyTree::findLink and Ri…
Jun 22, 2016
aabf8d1
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 22, 2016
1bee144
Remove and prevent spurious return type qualifiers
mwoehlke-kitware Jun 22, 2016
d78d291
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 22, 2016
92429ed
Merge branch 'master' into collision_avoid_expensive_ops
amcastro-tri Jun 22, 2016
3f9331e
Merge branch 'master' of https://github.com/RobotLocomotion/drake
sherm1 Jun 22, 2016
966c880
Addressed reviewer comments.
Jun 22, 2016
5b26da5
Merge pull request #2618 from mwoehlke-kitware/ignored-qualifiers
liangfok Jun 22, 2016
4e976ff
Added deprecated attribute to RigidBodyTree::findLink and RigidBodyTr…
Jun 22, 2016
0327da3
Polished comments and exception messages.
Jun 22, 2016
392b3fe
Fixed bug in #define directives.
Jun 22, 2016
91670ef
Still debugging deprecated magic. Not working yet.
Jun 22, 2016
7033930
Removed debug statements.
Jun 22, 2016
d89a249
Found temporary workaround for SWIG w.r.t deprecation macro.
Jun 22, 2016
a93be57
Removes dead BulletResultCollector
amcastro-tri Jun 22, 2016
0c2e7c7
Adds comment on RigidBody forward declaration
amcastro-tri Jun 22, 2016
7f56173
Removes superfluous const
amcastro-tri Jun 22, 2016
f997058
Refactors Element::set_rigid_body --> Element::set_body to be consist…
amcastro-tri Jun 22, 2016
1c90fed
Fixes typo
amcastro-tri Jun 22, 2016
f554ff1
Another typo!
amcastro-tri Jun 22, 2016
b2d9547
Merge pull request #2617 from jhoare/fortran_doc_fix
jwnimmer-tri Jun 22, 2016
5f010e2
Add DRAKE_DEPRECATED macro.
sherm1 Jun 23, 2016
14e6f95
Add curly braces for aggregate initialization of std::array.
jwnimmer-tri Jun 23, 2016
838b055
Stop suppressing -Wmissing-braces.
jwnimmer-tri Jun 23, 2016
37e97a4
Renamed DEPRECATED_14 to be DRAKE_DEPRECATED. Polished the code some.
Jun 23, 2016
4997acf
Ran clang-format.
Jun 23, 2016
ac6e894
Tweaked comments and output format.
sherm1 Jun 23, 2016
1ba3014
lint fix
sherm1 Jun 23, 2016
4c2f450
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 23, 2016
92a5925
Merge branch 'feature/issue_2585_urdf_visual_problems' of github.com:…
Jun 23, 2016
0a3deb6
Fixed comment.
Jun 23, 2016
e9a60ba
Corrections for spurious code introduced by bad rebase
naveenoid Jun 23, 2016
407bf02
Polished comments some more.
Jun 23, 2016
3778ee7
todo comments updated
naveenoid Jun 23, 2016
651a511
comment shortening and minor change in test accuracy
naveenoid Jun 23, 2016
15e78a5
test accuracy modification
naveenoid Jun 23, 2016
292d4f3
comment shortening for cpplint
naveenoid Jun 23, 2016
ccce160
Merge pull request #2622 from jwnimmer-tri/werror-missing-braces
david-german-tri Jun 23, 2016
0d27af2
Merge branch 'master' into collision_avoid_expensive_ops
amcastro-tri Jun 23, 2016
cd05a97
Removes const qualifier with no effect.
amcastro-tri Jun 23, 2016
0a5353e
Removes unncesessary comment
amcastro-tri Jun 23, 2016
91c12ff
Merge branch 'master' into feature/link_to_body_refactor
Jun 23, 2016
2c6cac0
Merge branch 'feature/link_to_body_refactor' of github.com:liangfok/d…
Jun 23, 2016
a8c0429
Add VectorInterface::Clone().
david-german-tri Jun 17, 2016
fcfbe45
Remove spurious const on the return type of get_value.
david-german-tri Jun 21, 2016
e37f199
Merged in #2621.
Jun 23, 2016
1fa8b51
Refactored deprecation macro usage.
Jun 23, 2016
f57049b
Merge pull request #2593 from david-german-tri/copy_context
sherm1 Jun 23, 2016
c615866
Standardize System2 on int64_t per #2514.
david-german-tri Jun 23, 2016
0bdf619
Improve IWYU in KinematicsCache.h.
david-german-tri Jun 21, 2016
c9038c1
removed AddCost from the commented hierarchy
naveenoid Jun 23, 2016
ab34096
Address reviewers' comments.
sherm1 Jun 23, 2016
0854bc3
Fix sign-mismatch in test expects
mwoehlke-kitware Jun 23, 2016
2f6a115
Merge pull request #2630 from david-german-tri/ram2
david-german-tri Jun 23, 2016
3e159b8
Merge pull request #2621 from sherm1/add_deprecated_macro
jwnimmer-tri Jun 23, 2016
a92df32
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 23, 2016
8bc4241
Add linking depdencies on libdrakeCommon.
jwnimmer-tri Jun 23, 2016
413d093
Replace all drake assert() calls with DRAKE_ASSERT().
jwnimmer-tri Jun 21, 2016
0e6c4d7
Fix code reviewer comments.
jwnimmer-tri Jun 23, 2016
45bf9ec
Merge pull request #2632 from mwoehlke-kitware/fix-test-sign-mismatch
jwnimmer-tri Jun 23, 2016
f743474
Merge pull request #2620 from jwnimmer-tri/assertion-1935
jwnimmer-tri Jun 23, 2016
a82963b
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 23, 2016
45f43d0
Updated RigidBodyTree to use correct drake_deprecated.h.
Jun 23, 2016
3495c54
Simplified deprecation message.
Jun 23, 2016
b98735f
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 23, 2016
98af721
Polished comments.
Jun 23, 2016
638b36e
Added newline.
Jun 23, 2016
ce7f8ea
Removed dead code.
Jun 23, 2016
ee82c12
Switch systems/framework from int64_t to int, to better reflect the b…
david-german-tri Jun 23, 2016
bf86ee4
Merge branch 'master' of https://github.com/RobotLocomotion/drake int…
david-german-tri Jun 23, 2016
1e6a443
Add DRAKE_ASSERT guidance per #1935.
jwnimmer-tri Jun 23, 2016
98e0114
Merge pull request #2586 from liangfok/feature/issue_2585_urdf_visual…
jwnimmer-tri Jun 24, 2016
aab4e78
Added explicit instantiation of RigidBodyTree::doKinematics(q,v,bool)…
Jun 24, 2016
e031874
Added missing new line at end of file.
Jun 24, 2016
7f9536b
Added missing period in comment.
Jun 24, 2016
d162685
Comments added and srand call simplified
naveenoid Jun 24, 2016
a931693
cosmetic changes for cpplint
naveenoid Jun 24, 2016
30c2e52
Added design section to Drake wiki.
Jun 24, 2016
d9b7a0d
Merge branch 'feature/updated_sphinx_doc' of github.com:liangfok/drak…
Jun 24, 2016
5175463
Removed extraneous sample bullet. Added comment.
Jun 24, 2016
6d4f895
Comment text formatting
naveenoid Jun 24, 2016
473cff9
Start extracting the massive template libraries in drake/util into sm…
david-german-tri Jun 23, 2016
632345a
Merge pull request #2635 from jwnimmer-tri/assertion-1935
jwnimmer-tri Jun 24, 2016
74651c5
Run clang-format on drakeGeometryUtil.h
david-german-tri Jun 24, 2016
5d0421a
Merge pull request #2642 from liangfok/feature/updated_sphinx_doc
liangfok Jun 24, 2016
b0e3905
Remove if(GTEST_FOUND) guard.
jwnimmer-tri Jun 24, 2016
e20dbba
Add drake_deprecated_test_nocompile test coverage.
jwnimmer-tri Jun 24, 2016
13cd2dd
making cpplint happy
naveenoid Jun 24, 2016
d753712
Fix code reviewer comments.
jwnimmer-tri Jun 24, 2016
9980a96
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 24, 2016
465de8f
Polished code and comments for clarity.
Jun 24, 2016
a937f47
Merge pull request #2643 from jwnimmer-tri/deprecated-compile-test
jwnimmer-tri Jun 24, 2016
90fa237
Merge pull request #2636 from david-german-tri/ram
david-german-tri Jun 24, 2016
e25e63f
Merge pull request #2607 from amcastro-tri/collision_avoid_expensive_ops
amcastro-tri Jun 24, 2016
9dc1db0
Moved rigid_body_tree unit test into it's own directory. In the middl…
Jun 24, 2016
c08e266
Merge pull request #2592 from naveenoid/dev/qp
jwnimmer-tri Jun 24, 2016
1d1bbba
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 24, 2016
ebe63ef
Added additional debug message.
Jun 24, 2016
2531a71
Debugged memory allocation bug. Removed debug statements.
Jun 25, 2016
34f1f4b
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 25, 2016
9ea7f9c
Merge branch 'feature/issue_2634_memory_bug' into feature/issue_2634
Jun 25, 2016
9231845
Polished code some more. Addressed reviewer comment.
Jun 25, 2016
ea6366d
Removed GTEST guard since it is a required dependency.
Jun 25, 2016
1eefa84
Partial update of documentation generation.
Jun 25, 2016
f0983d0
Finished updating documentation build instructions.
Jun 25, 2016
90a8ff1
Fixed some typos.
Jun 25, 2016
16bc4fb
Refined documentation some more.
Jun 25, 2016
6375d62
Added links to generated content that's already served by public server.
Jun 25, 2016
df6143f
Merge pull request #2597 from liangfok/feature/link_to_body_refactor
liangfok Jun 25, 2016
8414195
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 25, 2016
6ca38d8
refactored Objective to cost
naveenoid Jun 26, 2016
c72965d
complete removal of objective
naveenoid Jun 26, 2016
8be949c
corrected build errors in snopt and ipopt
naveenoid Jun 27, 2016
30e5f30
unnecessary cout removed
naveenoid Jun 27, 2016
7fb0ea0
Add ros config files
Jun 27, 2016
a2504b2
fixed a spurious overwrite of a comment
naveenoid Jun 27, 2016
64979e6
Downgrade missing documentation tools from WARNING to STATUS, and ena…
david-german-tri Jun 27, 2016
b15f8ce
Merge branch 'master' of github.com:RobotLocomotion/drake into featur…
Jun 27, 2016
094a29f
Merge branch 'feature/issue_2634' of github.com:liangfok/drake into f…
Jun 27, 2016
50efbbe
Rename BUILD_DOCUMENTATION to ENABLE_DOCUMENTATION, and update the co…
david-german-tri Jun 27, 2016
a674307
Merge branch 'master' into RBT_ComputeMaximumDepthCollisionPoints3
amcastro-tri Jun 27, 2016
85c5e53
Removes dynamic_cast and readElement from RigidBodyTree::ComputeMaxim…
amcastro-tri Jun 27, 2016
20e4a4b
Simplified block type definition to use VectorX<double> for readabili…
Jun 27, 2016
1eb04ee
Merge pull request #2637 from liangfok/feature/issue_2634
amcastro-tri Jun 27, 2016
5c181ba
Merge pull request #2655 from david-german-tri/doc
david-german-tri Jun 27, 2016
9740060
Merge branch 'master' into RBT_ComputeMaximumDepthCollisionPoints3
amcastro-tri Jun 27, 2016
3689df5
findLink --> FindBody
amcastro-tri Jun 27, 2016
6cbb785
Switches from box-to-box test to sphere-to-box test.
amcastro-tri Jun 27, 2016
525ef7c
Remove GTEST_FOUND guard
Jun 27, 2016
0d8911e
Replaces RigidBodyCollisionPair by PointPair.
amcastro-tri Jun 27, 2016
eff66ff
Merge branch 'master' into feature/updated_sphinx_doc
Jun 27, 2016
2abc4b3
Removes ElementId's from test
amcastro-tri Jun 27, 2016
75af958
Merge pull request #2629 from david-german-tri/copy_context
david-german-tri Jun 27, 2016
33841e1
Updated documentation instructions given the fact that the documentat…
Jun 27, 2016
bf707a5
Merge pull request #2653 from jamiesnape/ros-test
jamiesnape Jun 27, 2016
bbfc11d
Updates doc for RBT::ComputeMaximumDepthCollisionPoints
amcastro-tri Jun 27, 2016
8e6d246
Removes PointPair::getResults
amcastro-tri Jun 27, 2016
784035f
Removes PointPair::getIdA/getIdB
amcastro-tri Jun 27, 2016
3d6b719
Removes getNormal/get_element methods
amcastro-tri Jun 27, 2016
6abd49d
Removes PointPair::getPtA/B
amcastro-tri Jun 27, 2016
a44781e
Removes point_pair.cc
amcastro-tri Jun 27, 2016
d63ab5b
Removes ResultCollector
amcastro-tri Jun 27, 2016
d37ef07
Removes from PointPair unused operators
amcastro-tri Jun 27, 2016
4d07c44
Refactors members of PointPoir to remove trailing underscores
amcastro-tri Jun 27, 2016
7e206b0
Merge branch 'master' into feature/updated_sphinx_doc
Jun 27, 2016
59a7684
Misc. fixes to address reviews
amcastro-tri Jun 27, 2016
b35dab6
Updated documentation instructions.
Jun 28, 2016
4bd677d
Added a newline at the end of the file.
Jun 28, 2016
7e4dd10
Merge pull request #2648 from liangfok/feature/updated_sphinx_doc
sherm1 Jun 28, 2016
5b054d5
Merge pull request #2649 from naveenoid/dev/rebaseCost
sherm1 Jun 28, 2016
437085d
Removes tabs from small_sphere_on_large_box.sdf
amcastro-tri Jun 28, 2016
44b7725
DRAKE_ASSERT-->DRAKE_ABORT_UNLESS
amcastro-tri Jun 28, 2016
8050bea
Adds drakeCommon when linking with drakeCollision
amcastro-tri Jun 28, 2016
c8c2011
Merge branch 'master' into RBT_ComputeMaximumDepthCollisionPoints3
amcastro-tri Jun 28, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -88,3 +88,4 @@
[submodule "externals/ipopt"]
path = externals/ipopt
url = https://github.com/RobotLocomotion/ipopt-mirror.git
ignore = untracked
9 changes: 8 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,14 @@ Unreleased: changes on master, not yet released
[//]: # "New functionality or APIs."
### Added

- None
- [#2602][] Added `DRAKE_ASSERT` and `DRAKE_ABORT_UNLESS` macros to replace
built-in `assert()` macro.
- [#2621][] Added `DRAKE_DEPRECATED` macro for portable deprecation.

[//]: # "Altered functionality or APIs."
### Changed

- [#2597][] Changed `RigidBodyTree::findLink()` to be `RigidBodyTree::FindBody()`.
- [#2426][] Changed `RigidBodyTree::findLinkId()` to be `RigidBodyTree::FindBodyIndex()`. Updated APIs of `RigidBodyTree`, `RigidBody`, `RigidBodyTree`, and `RigidBodyFrame` to support notion of a "model ID" that uniquely identifies a model within a `RigidBodySystem`. This enables the same SDF file to be loaded multiple times into the same `RigidBodySystem`.
- [#2303][] The following member variables should now be accessed via accessor methods: `RigidBody::linkname`, `RigidBody::model_name`, `RigidBodyTree::num_positions`, and `RigidBodyTree::num_velocities`.
- [#2325][] The following member variable should now be accessed via an accessor method: `RigidBodyConstraint::robot`.
Expand All @@ -33,6 +36,7 @@ Unreleased: changes on master, not yet released
[//]: # "Lost functionality or APIs."
### Removed / Deprecated

- [#2610][] RigidBodyTree::getContactPositions and ::getContactPositionsJac are removed.
- [#2102][] Macports and Cygwin are no longer supported.
- [#2067][] `core/Core.h` is removed.
- [#2039][] Ubuntu 12.04 Trusty is no longer supported.
Expand Down Expand Up @@ -70,3 +74,6 @@ Changes in version v0.9.11 and before are not provided.
[#2303]: https://github.com/RobotLocomotion/drake/issues/2303
[#2325]: https://github.com/RobotLocomotion/drake/issues/2325
[#2426]: https://github.com/RobotLocomotion/drake/issues/2426
[#2597]: https://github.com/RobotLocomotion/drake/issues/2597
[#2602]: https://github.com/RobotLocomotion/drake/issues/2602
[#2621]: https://github.com/RobotLocomotion/drake/issues/2621
6 changes: 5 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,11 @@ else()
option(WITH_DIRECTOR "vtk-based visualization tool and robot user interface" ON) # not win32 yet. it builds on windows, but requires manually installation of vtk, etc. perhaps make a precompiled director pod (a bit like snopt)
option(WITH_LIBBOT "simple open-gl visualizer + lcmgl for director" ON) # there is hope, but i spent a long time cleaning up c/c++ language errors trying to make msvc happy.. and still had a long way to go.
option(WITH_NLOPT "nonlinear optimization solver" ON)
option(WITH_IPOPT "nonlinear optimization solver" ON)
# IPOPT is currently disabled on Mac due to MATLAB compatibility
# issues: https://github.com/RobotLocomotion/drake/issues/2578
if (NOT APPLE)
option(WITH_IPOPT "nonlinear optimization solver" ON)
endif()
option(WITH_SWIG_MATLAB "A version of SWIG with MATLAB support" ON)
endif()

Expand Down
17 changes: 7 additions & 10 deletions drake/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -89,13 +89,7 @@ include_directories(BEFORE ${PROJECT_BINARY_DIR}/exports/)
include_directories(BEFORE ${PROJECT_SOURCE_DIR}/..)

if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=all")

# TODO(#2372) These are warnings that we can't handle yet.
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-missing-braces")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unused-private-field")
endif()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=all -Werror=ignored-qualifiers")
elseif(MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4251")
# disable warning C4251: e.g.'RigidBody::linkname' : class 'std::basic_string<_Elem,_Traits,_Ax>' needs to have dll-interface to be used by clients of class 'RigidBody'
Expand Down Expand Up @@ -299,6 +293,7 @@ endif()
# Setup ROS if it is available on the local system
find_package(roscpp QUIET)
if(roscpp_FOUND)
set(ROS_FOUND ON)
message(STATUS "Found roscpp installed at ${roscpp_DIR}, so building ROS-specific functionality.")
include_directories(${roscpp_INCLUDE_DIRS})

Expand All @@ -317,13 +312,15 @@ if(roscpp_FOUND)
find_package(tf REQUIRED)
include_directories(${tf_INCLUDE_DIRS})
else()
set(ROS_FOUND OFF)
message(STATUS "Couldn't find roscpp so not building ROS-specific functionality. If you want ROS support, be sure to source the ROS setup.sh prior to building Drake.")
endif()

include_directories(thirdParty/spruce/include)
include_directories(thirdParty/cimg)

add_subdirectory(common)
add_subdirectory(math)
add_subdirectory(core)
add_subdirectory(util)
add_subdirectory(solvers)
Expand All @@ -334,7 +331,7 @@ add_subdirectory(thirdParty/tinyxml2)
add_subdirectory(examples)
add_subdirectory(bindings)

if(roscpp_FOUND AND catkin_FOUND AND genmsg_FOUND AND std_msgs_FOUND AND sensor_msgs_FOUND AND ackermann_msgs_FOUND AND tf_FOUND)
if(ROS_FOUND)
add_subdirectory(ros)
endif()

Expand Down Expand Up @@ -385,9 +382,9 @@ if(MATLAB_FOUND)
PROPERTIES TIMEOUT 300)
endif()

option(BUILD_DOCUMENTATION "Build Doxygen and Sphinx documentation." OFF)
option(ENABLE_DOCUMENTATION "Enable build target for Doxygen and Sphinx documentation." ON)

if(BUILD_DOCUMENTATION)
if(ENABLE_DOCUMENTATION)
add_subdirectory(doc)
endif()

Expand Down
4 changes: 2 additions & 2 deletions drake/bindings/python/pydrake/test/testPR2IK.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@
# along that link's x axis
robot.addFrame(
pydrake.rbtree.RigidBodyFrame("r_hand_frame",
robot.findLink("r_gripper_palm_link"),
robot.FindBody("r_gripper_palm_link"),
np.array([0.1, 0, 0]),
np.array([0., 0, 0])))

# Make sure attribute access works on bodies
assert robot.world().name() == "world"

hand_frame_id = robot.findFrame("r_hand_frame").frame_index
base_body_id = robot.findLink('base_footprint').body_index
base_body_id = robot.FindBody('base_footprint').body_index

constraints = [
# These three constraints ensure that the base of the robot is
Expand Down
14 changes: 11 additions & 3 deletions drake/common/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,23 @@
#

# List all source files used to build libdrakeCommon.
set(sources nice_type_name.cc)
set(sources
drake_assert.cc
nice_type_name.cc
)

# List headers that should be installed with Drake so that they
# are available elsewhere via #include "drake/common/xxx.h".
set(installed_headers nice_type_name.h)
set(installed_headers
drake_assert.h
drake_deprecated.h
nice_type_name.h
)

# List headers that are needed by code here but should not
# be exposed anywhere else.
set(private_headers)
set(private_headers
)

# Create the library target and note its dependencies. Also generates
# a header defining DRAKECOMMON_EXPORT for dealing with .dlls on Windows.
Expand Down
24 changes: 24 additions & 0 deletions drake/common/drake_assert.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#include "drake/common/drake_assert.h"

#include <cstdlib>
#include <iostream>

namespace drake {
namespace detail {

void Abort(const char* condition, const char* func, const char* file,
int line) {
std::cerr << "abort: failure at " << file << ":" << line
<< " in " << func << "()";
if (condition) {
std::cerr << ": assertion '" << condition << "' failed.";
} else {
std::cerr << ".";
}
std::cerr << std::endl;

std::abort();
}

} // namespace detail
} // namespace drake
92 changes: 92 additions & 0 deletions drake/common/drake_assert.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
#pragma once

#include <type_traits>

#include "drake/drakeCommon_export.h"

/// @file
/// Provides Drake's assertion implementation. This is intended to be used
/// both within Drake and by other software. Drake's asserts can be armed
/// and disarmed independently from the system-wide asserts.

#ifdef DRAKE_DOXYGEN_CXX
/// @p DRAKE_ASSERT(condition) is similar to the built-in @p assert(condition)
/// from the C++ system header @p <cassert>. Unless Drake's assertions are
/// disarmed by the pre-processor definitions listed below, @p DRAKE_ASSERT
/// will evaluate @p condition and iff the value is false will ::abort() the
/// program with a message showing at least the condition text, function name,
/// file, and line.
///
/// Assertions are enabled or disabled using the following pre-processor macros:
/// - If @p DRAKE_ENABLE_ASSERTS is defined, then @p DRAKE_ASSERT is armed.
/// - If @p DRAKE_DISABLE_ASSERTS is defined, then @p DRAKE_ASSERT is disarmed.
/// - If both macros are defined, then it is a compile-time error.
/// - If neither are defined, then NDEBUG governs assertions as usual.
///
/// This header will define exactly one of either @p DRAKE_ASSERT_IS_ARMED or
/// @p DRAKE_ASSERT_IS_DISARMED to indicate whether @p DRAKE_ASSERT is armed.
///
/// One difference versus the standard @p assert(condition) is that the
/// @p condition within @p DRAKE_ASSERT is always syntax-checked, even if
/// Drake's assertions are disarmed.
///
/// Treat @p DRAKE_ASSERT like a statement -- it must always be used
/// in block scope, and must always be followed by a semicolon.
#define DRAKE_ASSERT(condition)
/// Evaluates @p condition and iff the value is false will ::abort() the
/// program with a message showing at least the condition text, function name,
/// file, and line.
#define DRAKE_ABORT_UNLESS(condition)
/// Like @p DRAKE_ABORT_UNLESS(false), except that the meaningless "false"
/// condition test is not included in the message.
#define DRAKE_ABORT()
#else // DRAKE_DOXYGEN_CXX

// Users should NOT set these; only this header should set them.
#ifdef DRAKE_ASSERT_IS_ARMED
# error Unexpected DRAKE_ASSERT_IS_ARMED defined.
#endif
#ifdef DRAKE_ASSERT_IS_DISARMED
# error Unexpected DRAKE_ASSERT_IS_DISARMED defined.
#endif

// Decide whether Drake assertions are enabled.
#if defined(DRAKE_ENABLE_ASSERTS) && defined(DRAKE_DISABLE_ASSERTS)
# error Conflicting assertion toggles.
#elif defined(DRAKE_ENABLE_ASSERTS)
# define DRAKE_ASSERT_IS_ARMED
#elif defined(DRAKE_DISABLE_ASSERTS) || defined(NDEBUG)
# define DRAKE_ASSERT_IS_DISARMED
#else
# define DRAKE_ASSERT_IS_ARMED
#endif

namespace drake {
namespace detail {
// Abort the program with an error message.
DRAKECOMMON_EXPORT
void Abort(const char* condition, const char* func, const char* file, int line);
}
}

#define DRAKE_ABORT() \
::drake::detail::Abort(nullptr, __func__, __FILE__, __LINE__)

#define DRAKE_ABORT_UNLESS(condition) \
do { \
if (!(condition)) { \
::drake::detail::Abort(#condition, __func__, __FILE__, __LINE__); \
} \
} while (0)

#ifdef DRAKE_ASSERT_IS_ARMED
// Assertions are enabled.
# define DRAKE_ASSERT(condition) DRAKE_ABORT_UNLESS(condition)
#else
// Assertions are disabled, so just typecheck the expression.
# define DRAKE_ASSERT(condition) static_assert( \
std::is_convertible<decltype(condition), bool>::value, \
"Assertion condition should be bool-convertible.")
#endif

#endif // DRAKE_DOXYGEN_CXX
61 changes: 61 additions & 0 deletions drake/common/drake_deprecated.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
#pragma once

/** @file
Provides a portable macro for use in generating compile-time warnings for
use of code that is permitted but discouraged. **/

#ifdef DRAKE_DOXYGEN_CXX
/** Use `DRAKE_DEPRECATED("message")` to discourage use of particular
classes, typedefs, variables, non-static data members, functions, arguments,
enumerations, and template specializations. A compile time warning will be
issued displaying the given message, preceded by "DRAKE DEPRECATED: ".

This is typically used for constructs that have been replaced by something
better and it is good practice to suggest the appropriate replacement in the
deprecation message. Deprecation warnings are conventionally used to convey to
users that a feature they are depending on will be removed in a future release.

Usage: @code
// Attribute comes *before* declaration of a deprecated function or variable;
// no semicolon is allowed.
DRAKE_DEPRECATED("f() is slow; use g() instead.")
int f(int arg);

// Attribute comes *after* struct, class, enum keyword.
class DRAKE_DEPRECATED("Use MyNewClass instead.")
MyClass {
};
@endcode

This feature is standard in C++14 compilers via the `[[deprecated]]` attribute,
and this macro will generate the standard attribute when compiled with a
C++14-compliant compiler. **/
#define DRAKE_DEPRECATED(message)

#else // DRAKE_DOXYGEN_CXX

/* C++14 introduces a standard way to mark deprecated declarations. Before
that we can use non-standard compiler hacks. */
#ifndef SWIG
/* Make sure warnings are enabled in VC++; it is a common Windows hack for
programmers to turn them off due to much inconvenient deprecation of useful
things by Microsoft. */
#if _MSC_VER
#pragma warning(default:4996)
#endif
/* Figure out the best form of deprecation for this compiler. */
#if __cplusplus >= 201402L
/* C++14 */
#define DRAKE_DEPRECATED(MSG) [[deprecated("\nDRAKE DEPRECATED: " MSG)]]
#elif _MSC_VER
#define DRAKE_DEPRECATED(MSG) \
__declspec(deprecated("\nDRAKE DEPRECATED: " MSG))
#else /* gcc or clang */
#define DRAKE_DEPRECATED(MSG) \
__attribute__((deprecated("\nDRAKE DEPRECATED: " MSG)))
#endif
#else /* Swigging */
#define DRAKE_DEPRECATED(MSG)
#endif

#endif // DRAKE_DOXYGEN_CXX
41 changes: 41 additions & 0 deletions drake/common/eigen_types.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/// @file
/// This file contains abbreviated definitions for certain specializations of
/// Eigen::Matrix that are commonly used in Drake.

#pragma once

#include <Eigen/Dense>
#include <unsupported/Eigen/AutoDiff>

namespace drake {

/// A column vector of size 3, templated on scalar type.
template <typename Scalar>
using Vector3 = Eigen::Matrix<Scalar, 3, 1>;

/// A column vector of any size, templated on scalar type.
template <typename Scalar>
using VectorX = Eigen::Matrix<Scalar, Eigen::Dynamic, 1>;

/// A matrix of 3 rows, dynamic columns, templated on scalar type.
template <typename Scalar>
using Matrix3X = Eigen::Matrix<Scalar, 3, Eigen::Dynamic>;

/// A matrix of 4 rows, dynamic columns, templated on scalar type.
template <typename Scalar>
using Matrix4X = Eigen::Matrix<Scalar, 4, Eigen::Dynamic>;

/// A matrix of dynamic size, templated on scalar type.
template <typename Scalar>
using MatrixX = Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>;

/// A column vector of dynamic size, up to a maximum of 73 elements.
using VectorUpTo73d = Eigen::Matrix<double, Eigen::Dynamic, 1, 0, 73, 1>;

/// An autodiff variable with a dynamic number of partials, up to 73 maximum.
using AutoDiffUpTo73d = Eigen::AutoDiffScalar<VectorUpTo73d>;

/// An autodiff variable with a dynamic number of partials.
using AutoDiffXd = Eigen::AutoDiffScalar<Eigen::VectorXd>;

} // namespace drake
4 changes: 2 additions & 2 deletions drake/common/nice_type_name.cc
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ string drake::NiceTypeName::Demangle(const char* typeid_name) {
string drake::NiceTypeName::Canonicalize(const string& demangled) {
using SPair = std::pair<std::regex, string>;
// These are applied in this order.
const std::array<SPair, 8> subs{
const std::array<SPair, 8> subs{{
// Remove unwanted keywords and following space. (\b is word boundary.)
SPair(std::regex("\\b(class|struct|enum|union) "), ""),
// Tidy up anonymous namespace.
Expand All @@ -65,7 +65,7 @@ string drake::NiceTypeName::Canonicalize(const string& demangled) {
SPair(std::regex("\\bstd::basic_string<char,std::char_traits<char>,"
"std::allocator<char>>"),
"std::string")
};
}};

string canonical(demangled);
for (const auto& sp : subs) {
Expand Down
Loading