diff options
author | Karl Berry <karl@freefriends.org> | 2009-05-16 00:19:13 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-05-16 00:19:13 +0000 |
commit | bab45528d65eaafe68a705dbb2a57075c7b7cbd8 (patch) | |
tree | 10b4ae2b5195c8dede153ab89359ec00f55f325f /Build/source/utils/asymptote/guide.cc | |
parent | 8643d90372e9c31e0f461c15c596b60a545bd7d3 (diff) |
asymptote 1.72 sources (not integrated into build yet)
git-svn-id: svn://tug.org/texlive/trunk@13110 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/asymptote/guide.cc')
-rw-r--r-- | Build/source/utils/asymptote/guide.cc | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/guide.cc b/Build/source/utils/asymptote/guide.cc new file mode 100644 index 00000000000..b46c269290d --- /dev/null +++ b/Build/source/utils/asymptote/guide.cc @@ -0,0 +1,37 @@ +/***** + * guide.cc + * Andy Hammerlindl 2005/02/23 + * + *****/ + +#include "guide.h" + +namespace camp { + +void multiguide::flatten(flatguide& g, bool allowsolve) +{ + size_t n=v.size(); + if(n > 0) { + for(size_t i=0; i+1 < n; ++i) { + v[i]->flatten(g,allowsolve); + if(!allowsolve && v[i]->cyclic()) { + g.precyclic(true); + g.resolvecycle(); + } + } + v[n-1]->flatten(g,allowsolve); + } +} + +void multiguide::print(ostream& out) const +{ + side lastLoc=JOIN; + for(size_t i=0; i < v.size(); ++i) { + side loc=v[i]->printLocation(); + adjustLocation(out,lastLoc,loc); + v[i]->print(out); + lastLoc=loc; + } +} + +} // namespace camp |