Ompl
所属分类:自动驾驶
开发工具:C#
文件大小:0KB
下载次数:2
上传日期:2023-12-14 23:15:21
上 传 者:
sh-1993
说明: Open Motion Planning Library(OMPL)到的端口。使用SWIG的NET标准
(A port of the Open Motion Planning Library (OMPL) to .NET Standard using SWIG)
文件列表:
Ompl.NetStandard.UnitTests/
Ompl.NetStandard/
ompl @ 1e2f569/
ompl_wrap/
LICENSE
Ompl.NetStandard.sln
# Ompl.NetStandard
A port of the Open Motion Planning Library (OMPL) to .NET Standard using SWIG
# Original Repo
https://github.com/ompl/ompl
Currently wrapped OMPL version is OMPL 1.6.0.
Example:
```cs
var space = new Base.RealVectorStateSpace(3);
var bounds = new Base.RealVectorBounds(3);
bounds.setLow(0, -3);
bounds.setHigh(0, 3);
bounds.setLow(1, -3);
bounds.setHigh(1, 3);
bounds.setLow(2, -3);
bounds.setHigh(2, 3);
space.setBounds(bounds);
space.sanityChecks();
var ss = new Geometric.SimpleSetup(space);
var pd = ss.getProblemDefinition();
var si = ss.getSpaceInformation();
var planner = new Geometric.KPIECE1(si);
ss.setPlanner(planner);
space.setup();
// TODO
//var start = new Base.ScopedState(space);
//var goal = new Base.ScopedState(space);
//space.copyFromReals(start, ...);
//space.copyFromReals(goal, ...);
//pd.setStartAndGoalStates(start, goal);
var objective = new Base.MultiOptimizationObjective(si);
//var clearanceObjective = new Base.OptimizationObjective(new ClearanceObjective(si));
//objective.addObjective(clearanceObjective);
pd.setOptimizationObjective(objective);
//si.setValidStateSamplerAllocator();
si.allocValidStateSampler();
si.setStateValidityCheckingResolution(0.01);
ss.solve(1);
var solution = ss.getSolutionPath();
var simplifier = ss.getPathSimplifier();
simplifier.reduceVertices(solution);
simplifier.smoothBSpline(solution, 3);
```
近期下载者:
相关文件:
收藏者: