Created by
Joshua Anderson
| #include "libqhullcpp/RboxPoints.h"
#include "libqhullcpp/QhullError.h"
#include "libqhullcpp/QhullQh.h"
#include "libqhullcpp/QhullFacet.h"
#include "libqhullcpp/QhullFacetList.h"
#include "libqhullcpp/QhullVertexSet.h"
#include "libqhullcpp/QhullLinkedList.h"
#include "libqhullcpp/QhullVertex.h"
#include "libqhullcpp/Qhull.h"
#include <iostream>
int main(int arc, char **argv)
{
double coords[] = {-1.0, -1.0, -1.0,
-1.0, -1.0, 1.0,
-1.0, 1.0, -1.0,
-1.0, 1.0, 1.0,
1.0, -1.0, -1.0,
1.0, -1.0, 1.0,
1.0, 1.0, -1.0,
1.0, 1.0, 1.0};
orgQhull::Qhull q;
q.runQhull("", 3, 8, coords, "");
orgQhull::QhullFacetList facets=q.facetList();
std::cout << "vertices:" << std::endl;
orgQhull::QhullVertexList verts = q.vertexList();
for (orgQhull::QhullVertex& v : verts)
{
std::cout << "id: " << v.id() << std::endl;
orgQhull::QhullPoint o = v.point();
std::cout << "point: " << o[0] << " " << o[1] << " " << o[2] << std::endl;
}
std::cout << std::endl;
std::cout << "faces:" << std::endl;
for (orgQhull::QhullFacet& f : facets)
{
orgQhull::QhullPoint o = f.getCenter();
orgQhull::QhullHyperplane n = f.hyperplane();
orgQhull::QhullVertexSet f_verts = f.vertices();
std::cout << "Center: " << o[0] << " " << o[1] << " " << o[2] << std::endl;
std::cout << "normal: " << n[0] << " " << n[1] << " " << n[2] << std::endl;
std::cout << "vertices: ";
for (orgQhull::QhullVertex v : f_verts)
{
std::cout << v.id() << " ";
}
std::cout << std::endl;
std::cout << std::endl;
}
}
|