diff --git a/src/Registration/RegistrationContactForceField.inl b/src/Registration/RegistrationContactForceField.inl index ea1ee58..177597a 100644 --- a/src/Registration/RegistrationContactForceField.inl +++ b/src/Registration/RegistrationContactForceField.inl @@ -236,8 +236,9 @@ template { if (contacts.getValue()[i].m1 == (int)index[j]) { + const auto& p2 = this->mstate2->read(core::vec_id::read_access::position)->getValue()[contacts.getValue()[i].m2]; result.push_back(std::make_pair(static_cast< core::objectmodel::BaseObject *>(this), - this->mstate2->read(core::vec_id::read_access::position)->getValue()[contacts.getValue()[i].m2]) + type::Vec3f(p2[0], p2[1], p2[2])) ); triangle.push_back(contacts.getValue()[i].index2); index_point.push_back(index[j]); @@ -254,8 +255,9 @@ template { if (contacts.getValue()[i].m2 == (int)index[j]) { + const auto& p1 = this->mstate1->read(core::vec_id::read_access::position)->getValue()[contacts.getValue()[i].m1]; result.push_back(std::make_pair(static_cast< core::objectmodel::BaseObject *>(this), - this->mstate1->read(core::vec_id::read_access::position)->getValue()[contacts.getValue()[i].m1]) + type::Vec3f(p1[0], p1[1], p1[2])) ); triangle.push_back(contacts.getValue()[i].index1);