3#ifdef TTK_ENABLE_GRAPHVIZ
19 const std::vector<size_t> &nodeIndices,
20 const std::string &dotString)
const {
21#ifdef TTK_ENABLE_GRAPHVIZ
29 Agraph_t *G = agmemread(dotString.data());
30 GVC_t *gvc = gvContext();
31 gvLayout(gvc, G,
"dot");
36 for(
auto i : nodeIndices) {
37 Agnode_t *n = agnode(G,
const_cast<char *
>(
std::to_string(i).data()), 0);
39 auto &coord = ND_coord(n);
40 size_t const offset = i * 2;
41 layout[offset] = coord.x / 72;
42 layout[offset + 1] = coord.y / 72;
61 this->printErr(
"This filter requires GraphViz to compute a layout.");
#define TTK_FORCE_USE(x)
Force the compiler to use the function/method parameter.
void setDebugMsgPrefix(const std::string &prefix)
~PlanarGraphLayout() override
int computeDotLayout(float *layout, const std::vector< size_t > &nodeIndices, const std::string &dotString) const
std::string to_string(__int128)
printMsg(debug::output::BOLD+" | | | | | . \\ | | (__| | / __/| |_| / __/|__ _|"+debug::output::ENDCOLOR, debug::Priority::PERFORMANCE, debug::LineMode::NEW, stream)