diff options
Diffstat (limited to 'Build/source/utils/asymptote/drawsurface.h')
-rw-r--r-- | Build/source/utils/asymptote/drawsurface.h | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/Build/source/utils/asymptote/drawsurface.h b/Build/source/utils/asymptote/drawsurface.h index 16d369cb545..693488cfcf6 100644 --- a/Build/source/utils/asymptote/drawsurface.h +++ b/Build/source/utils/asymptote/drawsurface.h @@ -26,6 +26,7 @@ class drawSurface : public drawElement { protected: Triple *controls; Triple vertices[4]; + triple center; bool straight; RGBAColour diffuse; RGBAColour ambient; @@ -48,14 +49,14 @@ protected: triple dperp; #endif +public: static const triple zero; -public: - drawSurface(const vm::array& g, bool straight, const vm::array&p, - double opacity, double shininess, double PRCshininess, - double granularity, triple normal, const vm::array &pens, - bool lighton, const string& name) : - straight(straight), opacity(opacity), shininess(shininess), + drawSurface(const vm::array& g, triple center, bool straight, + const vm::array&p, double opacity, double shininess, + double PRCshininess, double granularity, triple normal, + const vm::array &pens, bool lighton, const string& name) : + center(center), straight(straight), opacity(opacity), shininess(shininess), PRCshininess(PRCshininess), granularity(granularity), normal(unit(normal)), lighton(lighton), name(name) { string wrongsize= @@ -127,6 +128,7 @@ public: } } else controls=NULL; + center=run::operator *(t,s->center); normal=run::multshiftless(t,s->normal); #ifdef HAVE_LIBGL |