Updated all the creation filters to the new standard that requires the in-filter creation of the mesh object.

This commit is contained in:
Paolo Cignoni cignoni 2011-01-27 07:43:21 +00:00
parent 3b2cfa8cab
commit 5e89639bb4
4 changed files with 11 additions and 5 deletions

View File

@ -320,7 +320,9 @@ void FilterFunctionPlugin::initParameterSet(QAction *action,MeshModel &m, RichPa
// The Real Core Function doing the actual mesh processing.
bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichParameterSet & par, vcg::CallBackPos *cb)
{
MeshModel &m=*(md.mm());
if(this->getClass(filter) == MeshFilterInterface::MeshCreation)
md.addNewMesh("",this->filterName(ID(filter)));
MeshModel &m=*(md.mm());
Q_UNUSED(cb);
switch(ID(filter)) {
case FF_VERT_SELECTION :

View File

@ -71,6 +71,7 @@ void FilterSSynth::openX3D(const QString &fileName, MeshModel &m, int& mask, vcg
}
bool FilterSSynth::applyFilter(QAction* filter, MeshDocument &md, RichParameterSet & par, vcg::CallBackPos *cb)
{
md.addNewMesh("",this->filterName(ID(filter)));
QWidget * parent=(QWidget*)this->parent();
RichParameter* grammar=par.findParameter(QString("grammar"));
RichParameter* seed=par.findParameter(QString("seed"));
@ -139,7 +140,7 @@ int FilterSSynth::getRequirements(QAction *)
}
int FilterSSynth::postCondition(QAction* filter) const
{
return MeshModel::MM_VERTCOLOR;
return MeshModel::MM_UNKNOWN;
}
MeshFilterInterface::FilterClass FilterSSynth::getClass(QAction *filter)
{

View File

@ -180,7 +180,9 @@ void FilterFractal::initParameterSetForCratersGeneration(MeshDocument &md, RichP
bool FilterFractal::applyFilter(QAction* filter, MeshDocument &md, RichParameterSet &par, vcg::CallBackPos* cb)
{
switch(ID(filter))
if(this->getClass(filter) == MeshFilterInterface::MeshCreation)
md.addNewMesh("",this->filterName(ID(filter)));
switch(ID(filter))
{
case CR_FRACTAL_TERRAIN:
case FP_FRACTAL_MESH:

View File

@ -98,8 +98,9 @@ FilterCreateIso::~FilterCreateIso() {
bool FilterCreateIso::applyFilter(QAction *filter, MeshDocument &md, RichParameterSet & par, vcg::CallBackPos * cb)
{
MeshModel &m=*(md.mm());
CMeshO::FaceIterator fi;
md.addNewMesh("",this->filterName(ID(filter)));
MeshModel &m=*(md.mm());
CMeshO::FaceIterator fi;
CMeshO::VertexIterator vi;
if(filter->text() == filterName(FP_CREATEISO) )
{