Как получить целевую позицию из ompl::base *goalptr?

Я использую ompl для планирования пути в 3D. Пожалуйста, укажите, как получить позицию цели (x, y, z) из указателя цели, полученного из этой строки.

const ob::Goal *Goalptr = pdef->getGoal().get();

где pdef это определение проблемы. а также ob является ompl::base Планировщик пути - это планирование пути, но я не могу добиться этой цели.

Как я должен сделать что-то вроде этого:

x= Goalptr[0];
y= Goalptr[1];
z= Goalptr[2];

Или я должен разыграть это Goalptr в какой-то другой тип, а затем сделать это. Пожалуйста, помогите.

1 ответ

Так что этот пост помог мне решить проблему. Я использовал этот код, чтобы получить позицию цели.

std::vector<double> reals;
space->copyToReals(reals, pdef->getGoal()->as<ob::GoalState>()->getState());

Затем мы получаем целевую позицию (x,y,z) в (reals [0], reals 1, reals [2]).

Спасибо Кристофер Oezbek и другие, кто пытался.

Другие вопросы по тегам