Commit Graph

1061 Commits

Author SHA1 Message Date
Abishalini
e09fecd71f Propagate errors from planners to solution comment (#525) 2024-03-08 11:13:10 +01:00
Abishalini Sivaraman
5dd170b849 Add planner info to comments (#523) 2024-03-07 21:19:27 +01:00
Sebastian Jahr
f661c18e69 Fix MTC unittests for new pipeline refactoring (#515) 2024-03-07 20:53:45 +01:00
Mario Prats
11c3126052 Update to the more recent JumpThreshold API (#506) 2024-03-07 20:35:03 +01:00
Michael Wiznitzer
0827a0d260 JointInterpolationPlanner: Check joint bounds (#505) 2024-03-07 20:33:43 +01:00
Robert Haschke
d0a904c313 Add property trajectory_execution_info (#355, #502)
... to pass a list of controller names to PlanExecution

---------

Co-authored-by: Luca Lach <llach@techfak.uni-bielefeld.de>
2024-03-07 20:01:03 +01:00
Robert Haschke
a75d50e0ed Clear JointStates in scene diff (#504)
Joints are handled in trajectories.
Scene diffs should not modify joints during execution.
Fixes #353.
2024-03-07 12:23:07 +01:00
Sebastian Jahr
b0f388a88f Set a non-infinite default timeout in CurrentState stage (#491)
Co-authored-by: Mario Prats <mario.prats@picknik.ai>
2024-03-07 12:23:07 +01:00
Henning Kayser
111d9ba207
Add GenerateRandomPose stage (#166)
Implements a generic pose randomizer

Co-authored-by: JafarAbdi <cafer.abdi@gmail.com>
Co-authored-by: Sebastian Jahr <sebastian.jahr@picknik.ai>
Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
2024-03-06 22:32:13 +01:00
Sebastian Jahr
1e058598c7 Add planner_id to SubTrajectory info (#490) 2024-03-06 18:11:57 +01:00
Sebastian Jahr
ed70497d33 Remove display_motion_plans and publish_planning_requests properties (#489) 2024-03-06 15:59:39 +01:00
Sebastian Jahr
0e02fcae77 Enable parallel planning with PipelinePlanner (#450)
* Refactor pipeline planner

Make code readable

Re-order plan functions

Make usable with parallel planning

Enable configuring multiple pipelines

Add callbacks

Cleanup and documentation

Add API to set parallel planning callbacks and deprecate functions

Pass pipeline map by reference

Small clang-tidy fix

Update core/src/solvers/pipeline_planner.cpp

Co-authored-by: Sebastian Castro <4603398+sea-bass@users.noreply.github.com>

Update core/src/solvers/pipeline_planner.cpp

Format

Refactor to avoid calling .at(0) twice

Use no default stopping criteria

Update fallbacks_move demo

* Cleanup + address deprecation warnings

* Enabling optionally using a property defined pipeline planner map

* Address review

* Disable humble CI for ros2 branch

* Add pipeline planner unittests + some checks

* Add short comment
2024-03-06 15:59:09 +01:00
Captain Yoshi
911bc67c4d
GenerateGraspPose: Expose rotation_axis as property (#535) 2024-03-06 11:02:44 +01:00
Captain Yoshi
5720b83dce
Connect: ensure end-state matches goal state (#532) 2024-02-25 16:58:56 +01:00
Michael Görner
7638e5ff8b
Merge pull request #495 from ubi-agni/debug-#485
[WIP] Debug/Fix #485
2024-02-16 12:27:36 +01:00
Robert Haschke
275c15422d Adaptions for https://github.com/ros-planning/moveit/pull/3534
make_box() is a public method now
2024-02-15 22:20:34 +01:00
Robert Haschke
e163f57f9c Cleanup debug output 2024-02-15 21:42:18 +01:00
Robert Haschke
9dfd6bd2eb Fix duplicate solutions
When adding pending state pairs for a new incoming state to Connect,
we have to re-enable opposite states from ARMED state.
This changes the order of states in the interface.
If we do this while iterating over the states, we might add pairs multiple times,
because iteration continues with same state at an earlier position.
2024-02-15 21:42:18 +01:00
Robert Haschke
bf2714b42d printPendingPairs(os) -> os<<pendingPairsPrinter() 2023-10-25 22:21:36 +02:00
Robert Haschke
13264ba21d Fix leaking of failures into enumerated solutions 2023-10-25 22:21:36 +02:00
Robert Haschke
7b965863e3 Add more debugging output
- Add Stage::introspection() accessor
- Introspection: debug-log solution registration
- RemoteSolutionModel: show internal solution id as tooltip in 1st column
2023-10-25 22:19:49 +02:00
Robert Haschke
08b102d5b0 Unit tests for #485 2023-10-20 09:23:32 +02:00
Robert Haschke
605a1e5419 DelayingWrapper stage to delay solution shipping in unit tests 2023-10-20 09:23:32 +02:00
Robert Haschke
0fd989cb27 Simplify tests 2023-10-13 00:25:39 +02:00
Michael Görner
dcde89d4d5
Skip Fallbacks::replaceImpl() when already correctly initialized (#494)
Do not reinitialize a Fallbacks' pimpl if it already serves the desired interface.
2023-10-11 14:45:24 +02:00
Michael Görner
ab4bb40dfd
Fix demos (#493)
* improve demo rviz config
  - orbit view centered at workspace instead of 2d orbit
  - REALTIME trajectory display
* FixedState: setter for ignore_collisions property
* Fix clearance_cost demo
  - verify default state
  - use model frame over virtual "world" which is not known in fresh PlanningScene
  - ignore initial collisions with the IK seed
* improve documentation in Fallbacks demo
2023-10-11 14:30:54 +02:00
Robert Haschke
647f3ec413 Limit time to wait for execute_task_solution action server 2023-09-18 10:35:23 +02:00
Robert Haschke
349e3c6c6c Merge branch master into ros2 2023-05-26 16:38:15 +02:00
Robert Haschke
c605a0059a Replace namespace robot_[model|state] with moveit::core 2023-05-26 01:18:17 +02:00
Robert Haschke
6f7282423d MPS: fixup processCollisionObject
- Declare CollisionObject argument as constant:
  Internally the argument is temporarily modified, but for a caller it is effectively const.
- Correctly restore the old operation mode
- Fixup check in unit test
2023-05-26 01:15:50 +02:00
Robert Haschke
3ec69fb59d
Merge PR #460: improvements to ModifyPlanningScene stage 2023-05-25 22:29:31 +02:00
Robert Haschke
5382338933 Disable MPS tests, failing due to #432 2023-05-25 21:52:07 +02:00
Robert Haschke
78da3e46e6
Gracefully handle NULL robot_trajectory (#469) 2023-05-25 17:49:23 +02:00
JafarAbdi
45ff3ea437 Improve cmake
- Modernize
- Add include folder for INSTALL_INTERFACE
2023-05-25 17:05:45 +02:00
Robert Haschke
76d293863b
introspection: remove any invalid ROS-name chars from hostname (#465) 2023-05-19 08:48:28 +02:00
Robert Haschke
397fc070ea Fix SolutionBase::fillMessage(): also write start_scene
This method was only doing half of the job, namely adding subsolutions
to the message fields. However, the start_scene was not yet written.
This was handled manually in some but not all callers.
To avoid this inconsistency, the new method toMsg() takes care of both
actions now, while the old fillMessage() method was renamed to appendTo().
2023-05-19 08:43:14 +02:00
Robert Haschke
bd400de184 Fix add/remove object in backward operation
- addObject() will actually remove the object from scene
- removeObject() is not supported (we would need to know which object to add)
2023-05-19 08:43:12 +02:00
Robert Haschke
1daef934ee Add python binding for ModifyPlanningScene::removeObject 2023-05-19 08:43:12 +02:00
Robert Haschke
6a01550e8d ComputeIK: update RobotState before calling setFromIK()
This became necessary due to https://github.com/ros-planning/moveit/issues/3388.
2023-05-17 21:01:57 +02:00
Michael Görner
4d2a5714fa
Use pluginlib consistently (#463) 2023-05-17 19:55:18 +02:00
VideoSystemsTech
dee73b2dde
Expose argument of PipelinePlanner's constructor to Python (#462) 2023-05-16 14:32:17 +02:00
Robert Haschke
d59acdb969 Fix allowCollisions(object, enable_collision)
Call ACM::setDefaultEntry to also cover objects that are not yet known to the ACM.
2023-05-16 09:43:00 +02:00
Robert Haschke
45ca1a67a9 TestModifyPlanningScene 2023-05-16 09:42:25 +02:00
Robert Haschke
b318c3cae9 Basic Move test: MoveRelative + MoveTo 2023-05-05 00:21:11 +02:00
Robert Haschke
84cb880a9d Add python binding for ModifyPlanningScene::allowCollisions(std::string, bool) 2023-05-05 00:21:11 +02:00
Robert Haschke
1002d84946 Add python binding for Task::insert 2023-05-04 23:22:49 +02:00
Robert Haschke
d1a6916206
Stage::explainFailure() (#445)
... to facilitate spotting the stage causing a task to fail
2023-05-04 17:07:11 +02:00
Robert Haschke
ede7cb71cc
Improve documentation (#431)
* Improve general description of stage and container types
* Clarify purpose of `CurrentState` stage
* Add troubleshooting section
2023-05-04 17:02:00 +02:00
Robert Haschke
7f10292ab3
JointInterpolationPlanner: pass optional max_effort property along to GripperCommand (#458)
MoveIt passes the effort field of the last trajectory point as the max_effort for a GripperCommand.
Thus we pass the max_effort property to the effort field of the trajectory's last waypoint.
2023-05-04 15:29:53 +02:00
Robert Haschke
b346e7eb78
Task: findChild() and operator[] should directly operate on stages() (#435)
Considering the (fixed) name of the top-level container is meaningless.
2023-05-04 15:23:23 +02:00
Robert Haschke
f07b81fcd0 cleanup 2023-05-04 14:26:34 +02:00
Mario Prats
a0befc5b75
Remove redundant semicolon to silent compiler warning (#448) 2023-03-22 15:15:13 +01:00
Robert Haschke
4781ed5636 ros1-0.1.3 2023-03-06 16:37:54 +01:00
Robert Haschke
c57a0bcc12 Fixup: Remove moveit/__init__.py during .deb build
Fix install path recognition (6671aedeb7). Debian install process targets:
/tmp/binarydeb/ros-noetic-moveit-task-constructor-core-<version>/debian/ros-noetic-moveit-task-constructor-core/opt/ros/noetic/lib/python3/dist-packages/moveit
2023-03-06 16:31:59 +01:00
Robert Haschke
75e4260e2a
MoveRelative: Allow backwards operation for joint-space delta (#436) 2023-03-06 16:27:09 +01:00
Robert Haschke
61bb2fdc58
ComputeIK: Limit collision checking to JMG (#428)
That's what MoveIt is doing as well.
2023-02-28 13:18:53 +01:00
Robert Haschke
a3cb8c6584 Fix: Fetch pybind11 submodule if not yet present
cmake's execute_process pipes COMMANDs together.
Thus, `git submodule update` received the output of `git submodule init` as input
and didn't do anything.
2023-02-28 11:15:05 +01:00
Robert Haschke
ca1c7c7e24 Fix typo 2023-02-28 11:13:24 +01:00
Robert Haschke
d07aece163 ros1-0.1.2 2023-02-24 00:02:47 +01:00
Robert Haschke
6671aedeb7 Remove moveit/__init__.py during .deb builds 2023-02-23 23:55:38 +01:00
Robert Haschke
4a320f309c
Merge PR #429: MultiPlanner
MultiPlanner
2023-02-23 20:44:28 +01:00
Robert Haschke
ea776e35f6
Fix marker creation: allow zero scale for geometric shapes (#430)
Boxes, spheres, and cylinders might explicitly have a zero size. Don't reset their scaling to (1,1,1)
2023-02-23 20:42:23 +01:00
Robert Haschke
db6d90ab69 CartesianPath: Deprecate redundant property setters 2023-02-17 22:37:49 +01:00
Peter David Fagan
5c308d1f28
remove underscore from public members in MotionPlanResponse (#426)
Required to align with changes introduced by https://github.com/ros-planning/moveit2/pull/1939

Co-authored-by: JafarAbdi <cafer.abdi@gmail.com>
2023-02-17 21:11:02 +01:00
Robert Haschke
6dc70b1d49 PlannerInterface: provide "timeout" property
The MultiPlanner requires to set individual timeouts for its planners.
2023-02-17 18:28:02 +01:00
Robert Haschke
573858e51a PlannerInterface: provide setters for properties 2023-02-17 17:33:06 +01:00
Robert Haschke
052a56a333 Add MultiPlanner solvers
a planner that tries multiple planners in sequence
2023-02-17 17:33:06 +01:00
Robert Haschke
3d3236575d JointInterpolation: fix timeout handling
The timeout parameter was essentially ignored and the check was always true.
2023-02-17 11:41:32 +01:00
Robert Haschke
eae0bdc27f ros1-0.1.1 2023-02-15 23:20:32 +01:00
Robert Haschke
7926f69e97 Provide ComputeIK.ik_frame as full PoseStamped
Released MoveIt doesn't (yet) provide a conversion from string to PoseStamped.
2023-02-15 17:05:25 +01:00
Robert Haschke
885ac49ffb Use MoveIt's roscpp_initialize 2023-02-15 17:05:25 +01:00
Robert Haschke
d95a2fc787 Use MoveIt's libmoveit_python_tools.so
Drop our own version of that lib and thus resolve a deploy conflict.
2023-02-15 14:30:14 +01:00
Robert Haschke
4b5de15e1b Remove unused eigen_conversions includes 2023-02-11 13:47:35 +01:00
Robert Haschke
f2d97e524d Fix odr compiler warning on build farm
https://build.ros.org/job/Ndev_db__moveit_task_constructor__debian_buster_amd64/3
2023-02-11 13:31:50 +01:00
Robert Haschke
2843459b34 Fix buildfarm errors
- Add missing package dependencies
- Add author tags to package.xml
2023-02-03 12:24:48 +01:00
Robert Haschke
293898690e Merge branch 'master' into ros2 2023-02-02 10:32:21 +01:00
Robert Haschke
49b3bd0d56 ros1-0.1.0 2023-02-02 10:02:45 +01:00
Robert Haschke
93b46ef214 GeneratePose: forward registered properties from received solution 2023-01-28 12:01:45 +01:00
Robert Haschke
9c13a9cd1e Silent external clang-tidy warning 2023-01-05 16:54:46 +01:00
Robert Haschke
031da95894 Disable python wrapper for now
The ROS1 wrapper relied on python <-> c++ type casting via message serialization.
A corresponding mechanism doesn't yet exist in ROS2:
- https://answers.ros.org/question/356542/ros2-message-serialization-adapting-types/
- https://github.com/ros2/rclpy/issues/291#issuecomment-476314923
2023-01-05 16:54:46 +01:00
Robert Haschke
b54f53eb98 Rely on CXXFLAGS definition from moveit_common package 2023-01-05 16:54:46 +01:00
Robert Haschke
b3d20cdcec Merge branch 'master' into ros2 2023-01-05 16:54:41 +01:00
Robert Haschke
d9cff5510f Fix more -Wold-style-cast warnings 2023-01-05 16:24:02 +01:00
Robert Haschke
91d9518d3c Replace namespace robot_model -> moveit::core 2023-01-05 03:14:11 +01:00
JafarAbdi
f055fabbd1 Fix clang-tidy warnings
- Replace old-style casts
- Fix missing initialization
2023-01-04 23:52:38 +01:00
Jochen Sprickerhof
770a8a0b17 Fix call of PropagatingEitherWay::computeGeneric()
computeGeneric is templated and private so it will be undefined in the
shared object and when using the computeForward/Backward functions.
2023-01-04 21:39:33 +01:00
Robert Haschke
f872d58520
Expose ContainerBase::childByIndex via operator[](int) (#413) 2022-12-12 20:44:37 +01:00
Robert Haschke
26c690c3b6 Merge PRs #412 (fix-ci) and #409 (more cost-terms) 2022-12-11 22:38:32 +01:00
Robert Haschke
33e9c5d212 Fix clang-tidy issues 2022-12-11 22:37:10 +01:00
Robert Haschke
ced37a029c Update/Stick pybind11 to version 2.9.1-smart_holder
... to maintain compatibility with Python 3.6 and 2.7
2022-12-11 21:34:53 +01:00
Robert Haschke
7c35f6c580 Update/Stick pybind11 to version 2.9.1-smart_holder
... to maintain compatibility with Python 3.6 and 2.7
2022-12-11 17:42:07 +01:00
Robert Haschke
341f1838b5 Build python bindings with size optimization 2022-12-11 17:39:55 +01:00
Robert Haschke
4886fc3f7b Expose CostTerms to python 2022-12-11 17:39:55 +01:00
Robert Haschke
6de570c7a6 new TrajectoryCostTerm: DistanceToReference 2022-12-09 11:19:41 +01:00
Robert Haschke
a9b4947845 PathLength: allow weighting of different joints 2022-12-09 10:16:19 +01:00
Robert Haschke
de22cba99a Fetch pybind11 submodule if not yet present 2022-12-09 09:05:17 +01:00
Robert Haschke
274c75f68f Fix SimpleGrasp/SimpleUnGrasp wrapper
- Wrap common base class SimpleGraspBase to reduce redundancy
- Use correct defaults for stage name
2022-12-08 09:37:33 +01:00
Robert Haschke
7200bbbfb1 Fix base class for container stages Pick, Place, SimpleGrasp, SimpleUnGrasp 2022-12-08 08:59:41 +01:00
Robert Haschke
2cf4f8f046 Drop breathe (not working) and directly link doxygen docs 2022-11-27 01:19:56 +01:00
Robert Haschke
c9ba6918c8 GHA: Build and deploy documentation 2022-11-27 01:19:56 +01:00
Robert Haschke
954089eae4 Merge PR #99: Python API
... based on pybind11
2022-11-22 21:24:17 +01:00
Robert Haschke
c1df1fbee8 [Container|Task]::add(...) for sequence (python) 2022-11-22 21:22:29 +01:00
Robert Haschke
164ce4eab8 clang-tidy: fix variable/method naming 2022-11-03 18:30:21 +01:00
Robert Haschke
9924dfe25f Merge branch master into ros2 2022-11-02 19:16:38 +01:00
Robert Haschke
7d5f9fe6e3 Fix clang-tidy warnings 2022-11-02 18:44:38 +01:00
Robert Haschke
f28b6c4ea0 Fix cmake indentation 2022-11-02 00:07:57 +01:00
Robert Haschke
7c66b85aa7 CI: stricter warnings 2022-11-02 00:07:57 +01:00
Robert Haschke
f88e25fe74 Merge PR #380: Fix Cartesian interpolation
Correctly consider an offset transform from link to reference frame,
such that rotations w.r.t. the reference frame don't move its origin.
2022-11-01 23:51:53 +01:00
Robert Haschke
0c9524930a CI: stricter warnings 2022-11-01 23:41:17 +01:00
Robert Haschke
d66b2262ed Rename variables in visualizePlan()
- link_pose -> start_pose
- pos_link -> pos_start
2022-10-31 19:53:07 +01:00
Robert Haschke
32d3454c1f Fix getRobotTipForFrame()
When passing the root frame, getRigidlyConnectedParentLinkModel() returns
a nullptr for robot_link, causing a segfault.
Actually, we don't need to use that method at all. We just need to find
the robot_link of an associated body.
2022-10-31 19:53:07 +01:00
Robert Haschke
fd123cc4a7 Fix handling of ik_frame in Cartesian path planning
The ik_frame should move in a straight-line Cartesian path.
However, so far the link frame was following a Cartesian path.
2022-10-31 19:53:07 +01:00
Robert Haschke
ec366b26ee MoveRelative: Correctly compute motion transform
The twist motion performs an angular rotation about the given axis _and_
the origin of ik_frame as well as a linear translation.
Both transforms are expressed w.r.t. the model frame and thus require
left-multiplication to ik_frame's current pose.
2022-10-31 19:53:07 +01:00
Robert Haschke
076957d4dc Simplify MoveRelative 2022-10-31 19:53:07 +01:00
Robert Haschke
402d6a4bfe Improve unittest for move_relative 2022-10-31 19:53:07 +01:00
Robert Haschke
64a8df1fde Merge CI fixes/improvements 2022-10-24 10:21:34 +02:00
Robert Haschke
4c9b16511b Hopefully fix spurious test failure 2022-10-24 10:21:28 +02:00
v4hn
c60cd6c86f Avoid unused-parameter warnings 2022-10-24 10:21:28 +02:00
Robert Haschke
5a30f8a8a7 Suppress unused-function warning 2022-10-24 10:08:26 +02:00
v4hn
2b2689e8d7 Use catkin_INCLUDE_DIRS as system includes
... to suppress warnings outside the code base
2022-10-24 10:07:38 +02:00
Robert Haschke
28fb974adb Remove MoveIt compatibility code 2022-10-23 22:16:58 +02:00
v4hn
6df359ed3b Do not dictate C++ standard
C++14 is default in clang/gcc anyway and latest log4cxx requires C++17.
Qt on Ubuntu 18.04 sets C++11. Hence we use MoveIt's cmake macro to ensure C++14 at least.
2022-10-23 22:15:23 +02:00
Niklas Fiedler
30512bcbb4
Report 1st collision pair for invalid IK solutions (#376) 2022-07-22 13:38:05 +02:00
Wyatt Rees
1e65027b26
Add MoveIt IK cost function to Cartesian path solver (#375) 2022-07-21 20:00:30 +02:00
Robert Haschke
3b438f9b1c Merge ROS1 fixes 2022-06-15 16:44:38 +02:00
Jafar
e923fbc0c6
Fix Task's move constructor (#371)
* Add unit test
* Fix TaskPrivate's move assignment operator
* Slightly simplify code

Co-authored-by: Robert Haschke <rhaschke@techfak.uni-bielefeld.de>
2022-06-14 22:13:19 +02:00
Wyatt Rees
60229db010
Add KinematicsQueryOptions property in CartesianPath solver (#370) 2022-06-03 19:39:51 +03:00
JafarAbdi
d6284ea63c Remove macros to check supported features 2022-05-26 21:58:48 +00:00
JafarAbdi
11b81856d5 Merge d2918f130d 2022-05-26 21:58:24 +00:00
Jafar
0128cd9250
Use moveit_configs_utils for launch files (#365) 2022-05-26 19:29:08 +03:00
Tyler Weaver
a89d9928d4
Add launch_testing_ament_cmake as a test depend (#364)
Signed-off-by: Tyler Weaver <tyler@picknik.ai>
2022-05-24 16:23:14 +03:00
AndyZe
36459e3869 Alphabetize package.xml's and CMakeLists 2022-05-09 08:06:15 -05:00
Robert Haschke
d2918f130d
Pruning: Relax too strong assertion: PRUNED => !ARMED (#340) 2022-05-08 11:56:17 +02:00
Robert Haschke
9026ac8746
Make TimeParamerization configurable (#339) 2022-05-08 11:54:05 +02:00
JafarAbdi
dfb5769b0d Fix rolling compatibility with jammy
Fix compile warning
Update clang-format version to 12
2022-05-04 12:40:07 -05:00
Christian Petersmeier
e57d198dd7 Use verbose delimiters for source code instead of line numbers 2022-03-10 13:46:01 +01:00
Robert Haschke
813d9a7de7 Simplify file names, move tutorials into subfolder 2022-03-10 13:33:10 +01:00
Christian Petersmeier
60bc5262f5 PickPlace tutorial, stage extension howto guide 2022-03-10 13:33:10 +01:00
Christian Petersmeier
13128390b6 add cartesian and first steps tutorials 2022-03-10 13:33:10 +01:00
Christian Petersmeier
f082fb772b Add property tutorial, restructure tutorial files 2022-03-10 13:33:10 +01:00
Christian Petersmeier
1f330bed89 Reformat Documentation
- create tutorial, how-to-guide, topic and reference chapters
  - move implementation examples from api documentation into
    how-to-guides
  - create a documentation overview on the first page
2022-03-10 13:33:10 +01:00
Robert Haschke
940a843f05 Rework stages doc 2022-03-10 13:33:06 +01:00
Robert Haschke
096c671887 Pruning: Relax too strong assertion: PRUNED => !ARMED
If two Connect stages are sequenced, both sides can become ARMED.
However, that means that the wave of PRUNED status updates, shouldn't
overwrite a present ARMED state.
Added unit test.
2022-03-04 15:01:19 +01:00
Robert Haschke
8d7225d3b6 Connect: better document suppressing recursive loop 2022-03-04 15:01:19 +01:00
v4hn
6d104e837e polish: FixedState supports collision checking 2022-03-04 14:41:00 +01:00
v4hn
0a3dd3a314 properly set comment markAsFailure without prior comment 2022-03-04 14:39:53 +01:00
Robert Haschke
5310f9063a operator<< for Interface::Direction 2022-03-04 13:13:01 +01:00
Robert Haschke
ee7cec2aab FixedState: ignore_collisions=false
Check collisions for FixedState's scene and report failure if needed.
Optionally, disable the check via the property ignore_collisions=true.
2022-03-03 17:01:34 +01:00
Robert Haschke
6ffc508225 Finetune solvers documentation 2022-03-03 10:50:30 +01:00
Robert Haschke
e77fa83a42 Rework core documentation 2022-03-03 10:50:30 +01:00