Graphviz 13.0.0~dev.20241222.1117
|
#include <iostream>
#include <vpsc/variable.h>
#include <vpsc/constraint.h>
#include <vpsc/generate-constraints.h>
#include <vpsc/solve_VPSC.h>
#include <cstdlib>
#include <cassert>
#include <vector>
#include <vpsc/csolve_VPSC.h>
Go to the source code of this file.
Functions | |
Variable * | newVariable (int id, double desiredPos, double weight) |
Bridge for C programs to access solve_VPSC (which is in C++) | |
Constraint * | newConstraint (Variable *left, Variable *right, double gap) |
VPSC * | newIncVPSC (int n, Variable *vs[], int m, Constraint *cs[]) |
int | genXConstraints (int n, boxf *bb, Variable **vs, Constraint ***cs, bool transitiveClosure) |
int | genYConstraints (int n, boxf *bb, Variable **vs, Constraint ***cs) |
Constraint ** | newConstraints (int m) |
void | deleteConstraints (int m, Constraint **cs) |
void | deleteConstraint (Constraint *c) |
void | deleteVariable (Variable *v) |
void | satisfyVPSC (VPSC *vpsc) |
void | deleteVPSC (VPSC *vpsc) |
void | solveVPSC (VPSC *vpsc) |
void | setVariableDesiredPos (Variable *v, double desiredPos) |
double | getVariablePos (const Variable *v) |
void | remapInConstraints (Variable *u, Variable *v, double dgap) |
void | remapOutConstraints (Variable *u, Variable *v, double dgap) |
void deleteConstraint | ( | Constraint * | c | ) |
Definition at line 65 of file csolve_VPSC.cpp.
void deleteConstraints | ( | int | m, |
Constraint ** | cs | ||
) |
Definition at line 59 of file csolve_VPSC.cpp.
void deleteVariable | ( | Variable * | v | ) |
Definition at line 68 of file csolve_VPSC.cpp.
void deleteVPSC | ( | VPSC * | vpsc | ) |
Definition at line 79 of file csolve_VPSC.cpp.
int genXConstraints | ( | int | n, |
boxf * | bb, | ||
Variable ** | vs, | ||
Constraint *** | cs, | ||
bool | transitiveClosure | ||
) |
Definition at line 38 of file csolve_VPSC.cpp.
References generateXConstraints(), boxf::LL, boxf::UR, pointf_s::x, and pointf_s::y.
int genYConstraints | ( | int | n, |
boxf * | bb, | ||
Variable ** | vs, | ||
Constraint *** | cs | ||
) |
Definition at line 47 of file csolve_VPSC.cpp.
References generateYConstraints(), boxf::LL, boxf::UR, pointf_s::x, and pointf_s::y.
double getVariablePos | ( | const Variable * | v | ) |
Definition at line 89 of file csolve_VPSC.cpp.
References Variable::position().
Constraint * newConstraint | ( | Variable * | left, |
Variable * | right, | ||
double | gap | ||
) |
Definition at line 31 of file csolve_VPSC.cpp.
Constraint ** newConstraints | ( | int | m | ) |
Definition at line 56 of file csolve_VPSC.cpp.
VPSC * newIncVPSC | ( | int | n, |
Variable * | vs[], | ||
int | m, | ||
Constraint * | cs[] | ||
) |
Definition at line 34 of file csolve_VPSC.cpp.
Variable * newVariable | ( | int | id, |
double | desiredPos, | ||
double | weight | ||
) |
Authors: Tim Dwyer tgdwy.nosp@m.er@g.nosp@m.mail..nosp@m.com
Copyright (C) 2005 Authors
This version is released under the CPL (Common Public License) with the Graphviz distribution. A version is also available under the LGPL as part of the Adaptagrams project: https://github.com/mjwybrow/adaptagrams.
If you make improvements or bug fixes to this code it would be much appreciated if you could also contribute those changes back to the Adaptagrams repository.
Definition at line 28 of file csolve_VPSC.cpp.
Definition at line 92 of file csolve_VPSC.cpp.
References Variable::in.
Definition at line 100 of file csolve_VPSC.cpp.
References Variable::out.
void satisfyVPSC | ( | VPSC * | vpsc | ) |
Definition at line 71 of file csolve_VPSC.cpp.
References VPSC::satisfy().
void setVariableDesiredPos | ( | Variable * | v, |
double | desiredPos | ||
) |
Definition at line 86 of file csolve_VPSC.cpp.
References Variable::desiredPosition.
void solveVPSC | ( | VPSC * | vpsc | ) |
Definition at line 83 of file csolve_VPSC.cpp.
References VPSC::solve().