diff options
author | clifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c> | 2009-07-28 18:17:29 (GMT) |
---|---|---|
committer | clifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c> | 2009-07-28 18:17:29 (GMT) |
commit | cc803576dcc4810d1ba415895b83ac9a3079de2f (patch) | |
tree | e5dcee5127de5f867a694e6831b4e0de38b612fd /openscad.h | |
parent | 8e9b8512367f83e766b1a3676fb326ef216b7e6d (diff) |
Clifford Wolf:
Improved animation and polycaching
git-svn-id: http://svn.clifford.at/openscad/trunk@85 b57f626f-c46c-0410-a088-ec61d464b74c
Diffstat (limited to 'openscad.h')
-rw-r--r-- | openscad.h | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -64,6 +64,7 @@ class Module; class Context; class PolySet; +class PolySetPtr; class CSGTerm; class CSGChain; class AbstractNode; @@ -506,6 +507,8 @@ public: COLOR_BACKGROUND }; + static QCache<QString,PolySetPtr> ps_cache; + void render_surface(colormode_e colormode, GLint *shaderinfo = NULL) const; void render_edges(colormode_e colormode) const; @@ -612,6 +615,7 @@ public: virtual CGAL_Nef_polyhedron render_cgal_nef_polyhedron() const; #endif virtual CSGTerm *render_csg_term(double m[16], QVector<CSGTerm*> *highlights, QVector<CSGTerm*> *background) const; + static CSGTerm *render_csg_term_from_ps(double m[16], QVector<CSGTerm*> *highlights, QVector<CSGTerm*> *background, PolySet *ps, const ModuleInstanciation *modinst, int idx); }; extern int progress_report_count; @@ -676,8 +680,8 @@ public: QWidget *animate_panel; QTimer *animate_timer; - double tval, fps, fstep; - QLineEdit *e_tval, *e_fps, *e_fstep; + double tval, fps, fsteps; + QLineEdit *e_tval, *e_fps, *e_fsteps; Context root_ctx; AbstractModule *root_module; @@ -707,7 +711,7 @@ private: void load(); void maybe_change_dir(); void find_root_tag(AbstractNode *n); - void compile(); + void compile(bool procevents); private slots: void actionNew(); |