diff options
author | Norbert Preining <norbert@preining.info> | 2020-07-08 03:01:45 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2020-07-08 03:01:45 +0000 |
commit | 8c3fedd243b69349b426144e5e2b94ef4aea6a4c (patch) | |
tree | f5842753f11a90141f3cc2e356c3a04766e8d81e /graphics/asymptote/drawsurface.h | |
parent | ef87f13c4503a2aa4a9098cbf33e0bfcad19008e (diff) |
CTAN sync 202007080301
Diffstat (limited to 'graphics/asymptote/drawsurface.h')
-rw-r--r-- | graphics/asymptote/drawsurface.h | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/graphics/asymptote/drawsurface.h b/graphics/asymptote/drawsurface.h index 607c9f0701..3b0ba2de83 100644 --- a/graphics/asymptote/drawsurface.h +++ b/graphics/asymptote/drawsurface.h @@ -45,6 +45,7 @@ protected: size_t centerIndex; triple Min,Max; + int digits; bool primitive; public: @@ -59,19 +60,23 @@ public: } void init() { - billboard=interaction == BILLBOARD && - !settings::getSetting<bool>("offscreen"); +#ifdef HAVE_LIBOSMESA + billboard=false; +#else + billboard=interaction == BILLBOARD; +#endif centerIndex=0; } drawSurface(const vm::array& g, size_t ncontrols, triple center, bool straight, const vm::array&p, double opacity, double shininess, double metallic, double fresnel0, - const vm::array &pens, Interaction interaction, + const vm::array &pens, Interaction interaction, int digits, bool primitive=true, const string& key="") : drawElement(key), ncontrols(ncontrols), center(center), straight(straight), opacity(opacity), shininess(shininess), metallic(metallic), - fresnel0(fresnel0), interaction(interaction), primitive(primitive) { + fresnel0(fresnel0), interaction(interaction), digits(digits), + primitive(primitive) { init(); if(checkArray(&g) != 4 || checkArray(&p) != 3) reportError(wrongsize()); @@ -109,7 +114,7 @@ public: diffuse(s->diffuse), emissive(s->emissive), specular(s->specular), colors(s->colors), opacity(s->opacity), shininess(s->shininess), metallic(s->metallic), fresnel0(s->fresnel0), invisible(s->invisible), - interaction(s->interaction), primitive(s->primitive) { + interaction(s->interaction), digits(s->digits), primitive(s->primitive) { init(); if(s->controls) { controls=new(UseGC) triple[ncontrols]; @@ -134,9 +139,9 @@ public: drawBezierPatch(const vm::array& g, triple center, bool straight, const vm::array&p, double opacity, double shininess, double metallic, double fresnel0, const vm::array &pens, - Interaction interaction, bool primitive) : + Interaction interaction, int digits, bool primitive) : drawSurface(g,16,center,straight,p,opacity,shininess,metallic,fresnel0, - pens,interaction,primitive) {} + pens,interaction,digits,primitive) {} drawBezierPatch(const double* t, const drawBezierPatch *s) : drawSurface(t,s) {} @@ -168,9 +173,9 @@ public: drawBezierTriangle(const vm::array& g, triple center, bool straight, const vm::array&p, double opacity, double shininess, double metallic, double fresnel0, const vm::array &pens, - Interaction interaction, bool primitive) : + Interaction interaction, int digits, bool primitive) : drawSurface(g,10,center,straight,p,opacity,shininess,metallic,fresnel0, - pens,interaction,primitive) {} + pens,interaction,digits,primitive) {} drawBezierTriangle(const double* t, const drawBezierTriangle *s) : drawSurface(t,s) {} |