[TD]CL removal
This commit is contained in:
@@ -1020,24 +1020,20 @@ void CmdTechDrawCosmeticEraser::activated(int iMsg)
|
||||
}
|
||||
std::vector<std::string> cv2Delete;
|
||||
std::vector<std::string> ce2Delete;
|
||||
std::vector<int> cl2Delete;
|
||||
std::vector<std::string> cl2Delete;
|
||||
for (auto& s: subNames) {
|
||||
int idx = TechDraw::DrawUtil::getIndexFromName(s);
|
||||
std::string geomType = TechDraw::DrawUtil::getGeomTypeFromName(s);
|
||||
if (geomType == "Edge") {
|
||||
TechDraw::BaseGeom* bg = objFeat->getGeomByIndex(idx);
|
||||
Base::Console().Message("CMD::Eraser - have an edge: %s - bg: %X\n", s.c_str(), bg);
|
||||
if ((bg != nullptr) &&
|
||||
(bg->cosmetic) ) {
|
||||
Base::Console().Message("CMD::Eraser - cos: %d source: %d tag: %s\n",
|
||||
bg->cosmetic, bg->sourceIndex(), bg->getCosmeticTag().c_str());
|
||||
int source = bg->source();
|
||||
int sourceIndex = bg->sourceIndex();
|
||||
std::string tag = bg->getCosmeticTag();
|
||||
if (source == 1) { //this is a "CosmeticEdge"
|
||||
ce2Delete.push_back(tag);
|
||||
} else if (source == 2) { //this is a "CenterLine"
|
||||
cl2Delete.push_back(sourceIndex);
|
||||
cl2Delete.push_back(tag);
|
||||
} else {
|
||||
Base::Console().Message(
|
||||
"CMD::CosmeticEraserP - edge: %d is confused - source: %d\n",idx,source);
|
||||
@@ -1070,11 +1066,7 @@ void CmdTechDrawCosmeticEraser::activated(int iMsg)
|
||||
objFeat->removeCosmeticEdge(ce2Delete);
|
||||
}
|
||||
if (!cl2Delete.empty()) {
|
||||
std::sort(cl2Delete.begin(), cl2Delete.end());
|
||||
auto itcl = cl2Delete.rbegin();
|
||||
for ( ; itcl != cl2Delete.rend(); itcl++) {
|
||||
objFeat->removeCenterLine((*itcl));
|
||||
}
|
||||
objFeat->removeCenterLine(cl2Delete);
|
||||
}
|
||||
objFeat->recomputeFeature();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user