Moved Body::isAfterTip() to BodyBase

This commit is contained in:
jrheinlaender
2013-09-02 16:16:17 +02:00
committed by Stefan Tröger
parent ef76cf8b52
commit 58822e07fd
4 changed files with 14 additions and 15 deletions

View File

@@ -78,4 +78,15 @@ BodyBase* BodyBase::findBodyOf(const App::DocumentObject* f)
return NULL;
}
const bool BodyBase::isAfterTip(const App::DocumentObject *f) const {
App::DocumentObject* tipFeature = Tip.getValue();
if (tipFeature == NULL)
return true;
std::vector<App::DocumentObject*> features = Model.getValues();
std::vector<App::DocumentObject*>::const_iterator it = std::find(features.begin(), features.end(), f);
std::vector<App::DocumentObject*>::const_iterator tip = std::find(features.begin(), features.end(), tipFeature);
return (it > tip);
}
}

View File

@@ -72,10 +72,12 @@ public:
virtual App::DocumentObject *getPrevSolidFeature(App::DocumentObject *start = NULL, const bool inclusive = true)
{ return NULL; }
/// Return true if the feature is located after the current Tip feature
const bool isAfterTip(const App::DocumentObject *f) const;
/// Return the body which this feature belongs too, or NULL
static BodyBase* findBodyOf(const App::DocumentObject* f);
};
} //namespace Part

View File

@@ -191,17 +191,6 @@ App::DocumentObject* Body::getNextSolidFeature(App::DocumentObject *start, const
return *it;
}
const bool Body::isAfterTip(const App::DocumentObject *f) {
App::DocumentObject* tipFeature = Tip.getValue();
if (tipFeature == NULL)
return true;
std::vector<App::DocumentObject*> features = Model.getValues();
std::vector<App::DocumentObject*>::const_iterator it = std::find(features.begin(), features.end(), f);
std::vector<App::DocumentObject*>::const_iterator tip = std::find(features.begin(), features.end(), tipFeature);
return (it > tip);
}
const bool Body::isMemberOfMultiTransform(const App::DocumentObject* f)
{
if (f == NULL)

View File

@@ -78,9 +78,6 @@ public:
// Return the shape of the feature preceding this feature
//const Part::TopoShape getPreviousSolid(const PartDesign::Feature* f);
/// Return true if the feature is located after the current Tip feature
const bool isAfterTip(const App::DocumentObject *f);
/// Add the feature into the body at the current insert point (Tip feature)
void addFeature(App::DocumentObject* feature);