index 9317ed0826dd6e036b33df726f12cfc10d84b06d..46dbfe0f50c8ee58ff11d9811269fdbe1733ba59 100644 (file)
--- a/src/filter-chemistry.cpp
+++ b/src/filter-chemistry.cpp
#include "sp-filter-reference.h"
#include "sp-gaussian-blur.h"
#include "svg/css-ostringstream.h"
+#include "libnr/nr-matrix-fns.h"
#include "xml/repr.h"
//create filter primitive node
Inkscape::XML::Node *repr;
repr = xml_doc->createElement(FPConverter.get_key(type).c_str());
- repr->setAttribute("inkscape:collect", "always");
// set default values
switch(type) {
case NR::NR_FILTER_COMPOSITE:
break;
case NR::NR_FILTER_CONVOLVEMATRIX:
+ repr->setAttribute("order", "3 3");
+ repr->setAttribute("kernelMatrix", "0 0 0 0 0 0 0 0 0");
break;
case NR::NR_FILTER_DIFFUSELIGHTING:
break;
@@ -330,7 +332,7 @@ new_filter_simple_from_item (SPDocument *document, SPItem *item, const char *mod
NR::Matrix i2d = sp_item_i2d_affine (item);
- return (new_filter_blend_gaussian_blur (document, mode, radius, i2d.expansion(), i2d.expansionX(), i2d.expansionY(), width, height));
+ return (new_filter_blend_gaussian_blur (document, mode, radius, NR::expansion(i2d), NR::expansionX(i2d), NR::expansionY(i2d), width, height));
}
/**
// Determine the required standard deviation value
NR::Matrix i2d = sp_item_i2d_affine (item);
- double expansion = i2d.expansion();
+ double expansion = NR::expansion(i2d);
double stdDeviation = radius;
if (expansion != 0)
stdDeviation /= expansion;
// Set the filter effects area
Inkscape::XML::Node *repr = SP_OBJECT_REPR(item->style->getFilter());
- set_filter_area(repr, radius, expansion, i2d.expansionX(),
- i2d.expansionY(), width, height);
+ set_filter_area(repr, radius, expansion, NR::expansionX(i2d),
+ NR::expansionY(i2d), width, height);
// Search for gaussian blur primitives. If found, set the stdDeviation
// of the first one and return.