summaryrefslogtreecommitdiffstats
path: root/src/sp-mesh-array.h
diff options
context:
space:
mode:
authorTavmjong Bah <tavmjong@free.fr>2015-02-02 10:49:18 +0000
committertavmjong-free <tavmjong@free.fr>2015-02-02 10:49:18 +0000
commit9a037bc21c8b98650bf5be4c4e8feaac0a067e2d (patch)
tree1a223ebdfedd2ee5ff950decc451d9e52ba1ef71 /src/sp-mesh-array.h
parentEnable experimental features for wider testing: meshes, LPE tool, additional ... (diff)
downloadinkscape-9a037bc21c8b98650bf5be4c4e8feaac0a067e2d.tar.gz
inkscape-9a037bc21c8b98650bf5be4c4e8feaac0a067e2d.zip
Experimental mesh smoothing code.
(bzr r13890)
Diffstat (limited to 'src/sp-mesh-array.h')
-rw-r--r--src/sp-mesh-array.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/sp-mesh-array.h b/src/sp-mesh-array.h
index 330f6d87b..19f8634f8 100644
--- a/src/sp-mesh-array.h
+++ b/src/sp-mesh-array.h
@@ -45,6 +45,18 @@
// For color picking
#include "sp-item.h"
+enum SPMeshSmooth {
+ SP_MESH_SMOOTH_NONE,
+ SP_MESH_SMOOTH_SMOOTH,
+ SP_MESH_SMOOTH_SMOOTH1,
+ SP_MESH_SMOOTH_SMOOTH2,
+ SP_MESH_SMOOTH_SMOOTH3,
+ SP_MESH_SMOOTH_SMOOTH4,
+ SP_MESH_SMOOTH_SMOOTH5,
+ SP_MESH_SMOOTH_SMOOTH6,
+ SP_MESH_SMOOTH_SMOOTH7
+};
+
enum NodeType {
MG_NODE_TYPE_UNKNOWN,
MG_NODE_TYPE_CORNER,
@@ -148,6 +160,9 @@ public:
SPMeshNodeArray() { built = false; mg = NULL; drag_valid = false; };
SPMeshNodeArray( SPMeshGradient *mg );
+ SPMeshNodeArray( const SPMeshNodeArray& rhs );
+ SPMeshNodeArray& operator=(const SPMeshNodeArray& rhs);
+
~SPMeshNodeArray() { clear(); };
bool built;
@@ -157,6 +172,10 @@ public:
void clear();
void print();
+ // Fill 'smooth' with a smoothed version by subdividing each patch.
+ void smooth( SPMeshNodeArray* smooth, SPMeshSmooth type);
+ void smooth2( SPMeshNodeArray* smooth, SPMeshSmooth type);
+
// Get size of patch
unsigned int patch_rows();
unsigned int patch_columns();