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

Update to Tesseract 0.21.4 and build for Python 3.12 #62

Merged
merged 10 commits into from
Dec 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
28 changes: 27 additions & 1 deletion .github/workflows/wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,26 +35,43 @@ jobs:
container: ubuntu:20.04
py_platform: manylinux_2_31_x86_64
python_version: "3.7"
docs: false
docs_cmake: OFF
- os: ubuntu-20.04
runs_on: ubuntu-20.04
container: ubuntu:20.04
py_platform: manylinux_2_31_x86_64
python_version: "3.8"
docs: true
docs_cmake: ON
- os: ubuntu-20.04
runs_on: ubuntu-20.04
container: ubuntu:20.04
py_platform: manylinux_2_31_x86_64
python_version: "3.9"
docs: true
docs_cmake: ON
- os: ubuntu-20.04
runs_on: ubuntu-20.04
container: ubuntu:20.04
py_platform: manylinux_2_31_x86_64
python_version: "3.10"
docs: true
docs_cmake: ON
- os: ubuntu-20.04
runs_on: ubuntu-20.04
container: ubuntu:20.04
py_platform: manylinux_2_31_x86_64
python_version: "3.11.0"
docs: true
docs_cmake: ON
- os: ubuntu-20.04
runs_on: ubuntu-20.04
container: ubuntu:20.04
py_platform: manylinux_2_31_x86_64
python_version: "3.12.0"
docs: true
docs_cmake: ON
env:
DEBIAN_FRONTEND: noninteractive
steps:
Expand Down Expand Up @@ -91,6 +108,9 @@ jobs:
run: |
python -m pip install --upgrade pip
python -m pip install auditwheel wheel numpy setuptools colcon-common-extensions vcstool patchelf
- name: pip
if: matrix.config.docs == true
run: |
python -m pip install -r ws/src/tesseract_python/docs/requirements.txt
- name: vcs import
working-directory: ws/src
Expand All @@ -108,7 +128,7 @@ jobs:
-DTESSERACT_PYTHON_BUILD_WHEEL=ON
-DTESSERACT_PYTHON_WHEEL_PLATFORM=${{ matrix.config.py_platform }}
-DTESSERACT_ENABLE_EXAMPLES=OFF -DTESSERACT_PLUGIN_FACTORY_CALLBACKS=ON
-DTESSERACT_PYTHON_BUILD_DOCUMENTATION=ON
-DTESSERACT_PYTHON_BUILD_DOCUMENTATION=${{ matrix.config.docs_cmake }}
- name: test
shell: bash
run: |
Expand All @@ -122,9 +142,11 @@ jobs:
cd ws/src/tesseract_python/tesseract_python
pytest -s
- name: build docs
if: matrix.config.docs == true
shell: bash
working-directory: ws/build/tesseract_python
run: |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$GITHUB_WORKSPACE/ws/install/lib
cmake --build . --config Release --target tesseract_python_doc
- name: archive wheels
uses: actions/upload-artifact@v2
Expand Down Expand Up @@ -162,6 +184,10 @@ jobs:
vcpkg_triplet: x64-windows-release
cmake_arch: x64
python_version: "3.11.0"
- arch: x64
vcpkg_triplet: x64-windows-release
cmake_arch: x64
python_version: "3.12.0"
steps:
- uses: actions/checkout@v2
with:
Expand Down
20 changes: 7 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,8 @@ from tesseract_robotics.tesseract_command_language import CartesianWaypoint, Way
MoveInstructionPoly_wrap_MoveInstruction, StateWaypointPoly_wrap_StateWaypoint, \
CartesianWaypointPoly_wrap_CartesianWaypoint, JointWaypointPoly_wrap_JointWaypoint

from tesseract_robotics.tesseract_task_composer import TaskComposerPluginFactory, PlanningTaskComposerProblemUPtr, \
TaskComposerDataStorage, TaskComposerInput, TaskComposerProblemUPtr, PlanningTaskComposerProblemUPtr_as_TaskComposerProblemUPtr
from tesseract_robotics.tesseract_task_composer import TaskComposerPluginFactory, PlanningTaskComposerProblem, \
TaskComposerDataStorage, TaskComposerContext

from tesseract_robotics_viewer import TesseractViewer

Expand Down Expand Up @@ -199,8 +199,7 @@ factory = TaskComposerPluginFactory(config_path)
# Create the task composer node. In this case the FreespacePipeline is used. Many other are available.
task = factory.createTaskComposerNode("FreespacePipeline")

# Get the input and output keys for the task
input_key = task.getInputKeys()[0]
# Get the output keys for the task
output_key = task.getOutputKeys()[0]

# Create a profile dictionary. Profiles can be customized by adding to this dictionary and setting the profiles
Expand All @@ -211,24 +210,19 @@ profiles = ProfileDictionary()
# support implicit conversion from the CompositeInstruction to the AnyPoly.
program_anypoly = AnyPoly_wrap_CompositeInstruction(program)

# Create the task data storage and set the data
task_data = TaskComposerDataStorage()
task_data.setData(input_key, program_anypoly)

# Create the task problem and input
task_planning_problem = PlanningTaskComposerProblemUPtr.make_unique(t_env, task_data, profiles)
task_problem = PlanningTaskComposerProblemUPtr_as_TaskComposerProblemUPtr(task_planning_problem)
task_input = TaskComposerInput(task_problem)
task_planning_problem = PlanningTaskComposerProblem(t_env, profiles)
task_planning_problem.input = program_anypoly

# Create an executor to run the task
task_executor = factory.createTaskComposerExecutor("TaskflowExecutor")

# Run the task and wait for completion
future = task_executor.run(task.get(), task_input)
future = task_executor.run(task.get(), task_planning_problem)
future.wait()

# Retrieve the output, converting the AnyPoly back to a CompositeInstruction
results = AnyPoly_as_CompositeInstruction(task_input.data_storage.getData(output_key))
results = AnyPoly_as_CompositeInstruction(future.context.data_storage.getData(output_key))

# Display the output
# Print out the resulting waypoints
Expand Down
10 changes: 5 additions & 5 deletions dependencies.rosinstall
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
- git:
local-name: ros_industrial_cmake_boilerplate
uri: https://github.com/ros-industrial/ros_industrial_cmake_boilerplate.git
version: 0.4.5
version: 0.5.4
- git:
local-name: tesseract
uri: https://github.com/tesseract-robotics/tesseract.git
version: 0.18.1
version: 0.21.4
- git:
local-name: tesseract_planning
uri: https://github.com/tesseract-robotics/tesseract_planning.git
version: 0.18.2
version: 0.21.4
- git:
local-name: trajopt
uri: https://github.com/tesseract-robotics/trajopt.git
version: 0.6.0
version: 0.7.0
- git:
local-name: descartes_light
uri: https://github.com/swri-robotics/descartes_light.git
version: 0.3.1
version: 0.4.2
- git:
local-name: opw_kinematics
uri: https://github.com/Jmeyer1292/opw_kinematics.git
Expand Down
10 changes: 5 additions & 5 deletions dependencies_with_ext.rosinstall
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
- git:
local-name: ros_industrial_cmake_boilerplate
uri: https://github.com/ros-industrial/ros_industrial_cmake_boilerplate.git
version: 0.4.5
version: 0.5.4
- git:
local-name: tesseract
uri: https://github.com/tesseract-robotics/tesseract.git
version: 0.18.1
version: 0.21.4
- git:
local-name: tesseract_planning
uri: https://github.com/tesseract-robotics/tesseract_planning.git
version: 0.18.2
version: 0.21.4
- git:
local-name: trajopt
uri: https://github.com/tesseract-robotics/trajopt.git
version: 0.6.0
version: 0.7.0
- git:
local-name: descartes_light
uri: https://github.com/swri-robotics/descartes_light.git
version: 0.3.1
version: 0.4.2
- git:
local-name: opw_kinematics
uri: https://github.com/Jmeyer1292/opw_kinematics.git
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,6 @@ Classes
*******


JointGroupInstructionInfo Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_motion_planners.JointGroupInstructionInfo
:noindex:
:exclude-members: thisown
:members:

KinematicGroupInstructionInfo Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_motion_planners.KinematicGroupInstructionInfo
:noindex:
:exclude-members: thisown
:members:

MotionPlanner Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_motion_planners.MotionPlanner
Expand Down Expand Up @@ -64,21 +50,6 @@ formatProgram Function
.. autofunction:: tesseract_robotics.tesseract_motion_planners.formatProgram
:noindex:

generateInterpolatedProgram Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.generateInterpolatedProgram
:noindex:

getClosestJointSolution Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.getClosestJointSolution
:noindex:

getInterpolatedInstructions Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.getInterpolatedInstructions
:noindex:

getJointTurns Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.getJointTurns
Expand All @@ -89,36 +60,6 @@ getRobotConfig Function
.. autofunction:: tesseract_robotics.tesseract_motion_planners.getRobotConfig
:noindex:

interpolate Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.interpolate
:noindex:

interpolateCartCartWaypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.interpolateCartCartWaypoint
:noindex:

interpolateCartJointWaypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.interpolateCartJointWaypoint
:noindex:

interpolateJointCartWaypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.interpolateJointCartWaypoint
:noindex:

interpolateJointJointWaypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.interpolateJointJointWaypoint
:noindex:

interpolate_waypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.interpolate_waypoint
:noindex:

toToolpath Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners.toToolpath
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,20 @@ Classes
*******


JointGroupInstructionInfo Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_motion_planners_simple.JointGroupInstructionInfo
:noindex:
:exclude-members: thisown
:members:

KinematicGroupInstructionInfo Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_motion_planners_simple.KinematicGroupInstructionInfo
:noindex:
:exclude-members: thisown
:members:

SimpleMotionPlanner Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_motion_planners_simple.SimpleMotionPlanner
Expand Down Expand Up @@ -126,6 +140,51 @@ ProfileDictionary_removeProfile_SimplePlannerPlanProfile Function
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.ProfileDictionary_removeProfile_SimplePlannerPlanProfile
:noindex:

generateInterpolatedProgram Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.generateInterpolatedProgram
:noindex:

getClosestJointSolution Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.getClosestJointSolution
:noindex:

getInterpolatedInstructions Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.getInterpolatedInstructions
:noindex:

interpolate Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.interpolate
:noindex:

interpolateCartCartWaypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.interpolateCartCartWaypoint
:noindex:

interpolateCartJointWaypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.interpolateCartJointWaypoint
:noindex:

interpolateJointCartWaypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.interpolateJointCartWaypoint
:noindex:

interpolateJointJointWaypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.interpolateJointJointWaypoint
:noindex:

interpolate_waypoint Function
===================================================================================================
.. autofunction:: tesseract_robotics.tesseract_motion_planners_simple.interpolate_waypoint
:noindex:

Container Templates
*******************

Expand Down
28 changes: 14 additions & 14 deletions docs/_source/modules/tesseract_task_composer/api_docs_generated.rst
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,20 @@ RuckigTrajectorySmoothingMoveProfile Class
:exclude-members: thisown
:members:

TaskComposerContext Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_task_composer.TaskComposerContext
:noindex:
:exclude-members: thisown
:members:

TaskComposerContextUPtr Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_task_composer.TaskComposerContextUPtr
:noindex:
:exclude-members: thisown
:members:

TaskComposerDataStorage Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_task_composer.TaskComposerDataStorage
Expand Down Expand Up @@ -143,20 +157,6 @@ TaskComposerGraphUPtr Class
:exclude-members: thisown
:members:

TaskComposerInput Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_task_composer.TaskComposerInput
:noindex:
:exclude-members: thisown
:members:

TaskComposerInputUPtr Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_task_composer.TaskComposerInputUPtr
:noindex:
:exclude-members: thisown
:members:

TaskComposerNode Class
===================================================================================================
.. autoclass:: tesseract_robotics.tesseract_task_composer.TaskComposerNode
Expand Down
3 changes: 2 additions & 1 deletion docs/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
sphinx
sphinx==6.2.1
sphinx_rtd_theme
gitpython
recommonmark
opencv-python
Loading
Loading