使用四元素绘制一个圆
简介
使用旋转的方式来绘制
code
void Tests::test02() {
qglviewer::Quaternion q;
q.setAxisAngle(qglviewer::Vec(0, 0, 1), M_PI / 180.0);
qglviewer::Vec r(1, 0, 0);
s.push_back({ r[0], r[1], r[2] });
for (int i = 0; i < 360; i++) {
r = q * r;
s.push_back({ r[0], r[1], r[2] });
}
getResult();
}
void Tests::getResult() {
//if (getData()->edges.size() == 0) {
// getData()->edges.push_back(std::vector());
//}
getData()->edges.push_back(std::vector());
for (int i = 0; i < s.size()-1; i++) {
getData()->edges[0].push_back(s[i]);
getData()->edges[0].push_back(s[i+1]);
}
}