Merge pull request #20142 from bofdahof/ranges

Apply C++20 std::ranges (mainly to std::find)
This commit is contained in:
Chris Hennes
2025-03-17 03:08:27 -05:00
committed by GitHub
93 changed files with 485 additions and 662 deletions
+1 -1
View File
@@ -92,7 +92,7 @@ Branding::XmlConfig Branding::getUserDefines() const
while (!child.isNull()) {
std::string name = child.localName().toLatin1().constData();
std::string value = child.text().toUtf8().constData();
if (std::find(filter.begin(), filter.end(), name) != filter.end()) {
if (std::ranges::find(filter, name) != filter.end()) {
cfg[name] = value;
}
child = child.nextSiblingElement();
+5 -5
View File
@@ -208,7 +208,7 @@ App::Point* LocalCoordinateSystem::getPoint(const char* role) const
bool LocalCoordinateSystem::hasObject(const DocumentObject* obj) const
{
const auto& features = OriginFeatures.getValues();
return std::find(features.begin(), features.end(), obj) != features.end();
return std::ranges::find(features, obj) != features.end();
}
short LocalCoordinateSystem::mustExecute() const
@@ -302,12 +302,12 @@ void LocalCoordinateSystem::unsetupObject()
{
const auto& objsLnk = OriginFeatures.getValues();
// Copy to set to assert we won't call method more then one time for each object
std::set<App::DocumentObject*> objs(objsLnk.begin(), objsLnk.end());
const std::set<App::DocumentObject*> objs(objsLnk.begin(), objsLnk.end());
// Remove all controlled objects
for (auto obj : objs) {
// Check that previous deletes didn't indirectly remove one of our objects
const auto& objsLnk = OriginFeatures.getValues();
if (std::find(objsLnk.begin(), objsLnk.end(), obj) != objsLnk.end()) {
const auto& objsLnk2 = OriginFeatures.getValues();
if (std::ranges::find(objsLnk2, obj) != objsLnk2.end()) {
if (!obj->isRemoving()) {
obj->getDocument()->removeObject(obj->getNameInDocument());
}
@@ -331,7 +331,7 @@ void LocalCoordinateSystem::migrateOriginPoint()
return obj->isDerivedFrom<App::DatumElement>() &&
strcmp(static_cast<App::DatumElement*>(obj)->Role.getValue(), PointRoles[0]) == 0;
};
if (std::none_of(features.begin(), features.end(), isOrigin)) {
if (std::ranges::none_of(features, isOrigin)) {
auto data = getData(PointRoles[0]);
auto* origin = createDatum(data);
origin->purgeTouched();
+4 -4
View File
@@ -4306,7 +4306,7 @@ void DocumentP::findAllPathsAt(const std::vector<Node>& all_nodes,
std::vector<Path>& all_paths,
Path tmp)
{
if (std::find(tmp.begin(), tmp.end(), id) != tmp.end()) {
if (std::ranges::find(tmp, id) != tmp.end()) {
Path tmp2(tmp);
tmp2.push_back(id);
all_paths.push_back(tmp2);
@@ -4354,10 +4354,10 @@ Document::getPathsByOutList(const App::DocumentObject* from, const App::Document
DocumentP::findAllPathsAt(all_nodes, index_from, all_paths, tmp);
for (const Path& it : all_paths) {
Path::const_iterator jt = std::find(it.begin(), it.end(), index_to);
auto jt = std::ranges::find(it, index_to);
if (jt != it.end()) {
std::list<App::DocumentObject*> path;
for (Path::const_iterator kt = it.begin(); kt != jt; ++kt) {
std::list<DocumentObject*> path;
for (auto kt = it.begin(); kt != jt; ++kt) {
path.push_back(d->objectArray[*kt]);
}
+2 -2
View File
@@ -590,7 +590,7 @@ bool DocumentObject::isInInListRecursive(DocumentObject* linkTo) const
bool DocumentObject::isInInList(DocumentObject* linkTo) const
{
if (std::find(_inList.begin(), _inList.end(), linkTo) != _inList.end()) {
if (std::ranges::find(_inList, linkTo) != _inList.end()) {
return true;
}
else {
@@ -1253,7 +1253,7 @@ void App::DocumentObject::_removeBackLink(DocumentObject* rmvObj)
{
// do not use erase-remove idom, as this erases ALL entries that match. we only want to remove a
// single one.
auto it = std::find(_inList.begin(), _inList.end(), rmvObj);
auto it = std::ranges::find(_inList, rmvObj);
if (it != _inList.end()) {
_inList.erase(it);
}
+2 -2
View File
@@ -338,7 +338,7 @@ void GeoFeatureGroupExtension::getCSInList(const DocumentObject* obj,
// check if the link is real Local scope one or if it is a expression one (could also be
// both, so it is not enough to check the expressions)
auto res = getScopedObjectsFromLinks(parent, LinkScope::Local);
if (std::find(res.begin(), res.end(), obj) != res.end()) {
if (std::ranges::find(res, obj) != res.end()) {
vec.push_back(parent);
}
}
@@ -382,7 +382,7 @@ void GeoFeatureGroupExtension::recursiveCSRelevantLinks(const DocumentObject* ob
// go on traversing the graph in all directions!
for (auto o : links) {
if (!o || o == obj || std::find(vec.begin(), vec.end(), o) != vec.end()) {
if (!o || o == obj || std::ranges::find(vec, o) != vec.end()) {
continue;
}
+1 -1
View File
@@ -290,7 +290,7 @@ void Document::exportGraphviz(std::ostream& out) const
{
// don't add objects twice
if (std::find(objects.begin(), objects.end(), docObj) != objects.end()) {
if (std::ranges::find(objects, docObj) != objects.end()) {
return;
}
+1 -1
View File
@@ -268,7 +268,7 @@ bool GroupExtension::recursiveHasObject(const DocumentObject* obj,
auto ext = child->getExtensionByType<GroupExtension>();
if (std::find(history.begin(), history.end(), ext) != history.end()) {
if (std::ranges::find(history, ext) != history.end()) {
throw Base::RuntimeError(
"Cyclic dependencies detected: Search cannot be performed");
}
+1 -1
View File
@@ -74,7 +74,7 @@ std::pair<std::string, std::string> customSyntax(std::string_view strIn)
"title",
"visual"};
if (std::find(knowns.begin(), knowns.end(), rest) != knowns.end()) {
if (std::ranges::find(knowns, rest) != knowns.end()) {
return {rest, "null"};
}
return {};
+8 -10
View File
@@ -1232,17 +1232,15 @@ void PropertyExpressionEngine::getLinksTo(std::vector<App::ObjectIdentifier>& id
identifiers.push_back(expressionId);
break;
}
if (std::any_of(paths.begin(),
paths.end(),
[subname, obj, sobj, &subElement](const auto& path) {
if (path.getSubObjectName() == subname) {
return true;
}
if (std::ranges::any_of(paths, [subname, obj, sobj, &subElement](const auto& path) {
if (path.getSubObjectName() == subname) {
return true;
}
App::SubObjectT sobjT(obj, path.getSubObjectName().c_str());
return (sobjT.getSubObject() == sobj
&& sobjT.getOldElementName() == subElement);
})) {
App::SubObjectT sobjT(obj, path.getSubObjectName().c_str());
return (sobjT.getSubObject() == sobj
&& sobjT.getOldElementName() == subElement);
})) {
identifiers.push_back(expressionId);
}
}
+1 -1
View File
@@ -333,7 +333,7 @@ bool FileInfo::hasExtension(const char* Ext) const
bool FileInfo::hasExtension(std::initializer_list<const char*> Exts) const
{
return std::any_of(Exts.begin(), Exts.end(), [this](const char* ext) {
return std::ranges::any_of(Exts, [this](const char* ext) {
return hasExtension(ext);
});
}
+1 -2
View File
@@ -479,8 +479,7 @@ bool Base::XMLReader::hasFilenames() const
bool Base::XMLReader::hasReadFailed(const std::string& filename) const
{
auto it = std::find(FailedFiles.begin(), FailedFiles.end(), filename);
return (it != FailedFiles.end());
return std::ranges::find(FailedFiles, filename) != FailedFiles.end();
}
bool Base::XMLReader::isRegistered(Base::Persistence* Object) const
+1 -2
View File
@@ -51,8 +51,7 @@ struct SequencerP
}
static void removeInstance(SequencerBase* sb)
{
std::vector<SequencerBase*>::iterator it;
it = std::find(_instances.begin(), _instances.end(), sb);
const auto it = std::ranges::find(_instances, sb);
_instances.erase(it);
}
static SequencerBase& getInstance()
+1 -1
View File
@@ -1626,7 +1626,7 @@ PyObject* ApplicationPy::sGetMarkerIndex(PyObject * /*self*/, PyObject *args)
//get the marker size
auto sizeList = Gui::Inventor::MarkerBitmaps::getSupportedSizes(marker_arg);
if (std::find(std::begin(sizeList), std::end(sizeList), defSize) == std::end(sizeList)) {
if (std::ranges::find(sizeList, defSize) == std::end(sizeList)) {
defSize = defaultSize;
}
+2 -3
View File
@@ -106,9 +106,8 @@ void StdCmdOpen::activated(int iMsg)
formatList += QLatin1String(" (");
std::vector<std::string> filetypes = App::GetApplication().getImportTypes();
std::vector<std::string>::iterator it;
// Make sure FCStd is the very first fileformat
it = std::find(filetypes.begin(), filetypes.end(), "FCStd");
auto it = std::ranges::find(filetypes, "FCStd");
if (it != filetypes.end()) {
filetypes.erase(it);
filetypes.insert(filetypes.begin(), "FCStd");
@@ -498,7 +497,7 @@ void StdCmdExport::activated(int iMsg)
lastExportUsedGeneratedFilename = true;
else
lastExportUsedGeneratedFilename = false;
lastExportFullPath = fileName;
lastActiveDocument = getActiveGuiDocument();
lastExportedObject = selection.front();
+1 -1
View File
@@ -948,7 +948,7 @@ void StdCmdToggleTransparency::activated(int iMsg)
}
}
if (std::find(views.begin(), views.end(), view) == views.end()) {
if (std::ranges::find(views, view) == views.end()) {
views.push_back(view);
}
}
@@ -166,9 +166,9 @@ void DlgCreateNewPreferencePackImp::onBrowseButtonClicked()
void Gui::Dialog::DlgCreateNewPreferencePackImp::accept()
{
// Ensure that the chosen name is either unique, or that the user actually wants to overwrite the old one
if (auto chosenName = ui->lineEdit->text().toStdString();
std::find(_existingPackNames.begin(), _existingPackNames.end(), chosenName) != _existingPackNames.end()) {
auto result = QMessageBox::warning(this, tr("Pack already exists"),
if (const auto chosenName = ui->lineEdit->text().toStdString();
std::ranges::find(_existingPackNames, chosenName) != _existingPackNames.end()) {
const auto result = QMessageBox::warning(this, tr("Pack already exists"),
tr("A preference pack with that name already exists. Do you want to overwrite it?"),
QMessageBox::Yes | QMessageBox::Cancel);
if (result == QMessageBox::Cancel)
+3 -3
View File
@@ -118,7 +118,7 @@ struct DocumentP
std::map<SoSeparator *,ViewProviderDocumentObject*> _CoinMap;
std::map<std::string,ViewProvider*> _ViewProviderMapAnnotation;
std::list<ViewProviderDocumentObject*> _redoViewProviders;
using Connection = boost::signals2::connection;
Connection connectNewObject;
Connection connectDelObject;
@@ -2483,11 +2483,11 @@ void Document::setActiveWindow(Gui::MDIView* view)
std::list<MDIView*> mdis = getMDIViews();
// this document is not active
if (std::find(mdis.begin(), mdis.end(), active) == mdis.end())
if (std::ranges::find(mdis, active) == mdis.end())
return;
// the view is not part of the document
if (std::find(mdis.begin(), mdis.end(), view) == mdis.end())
if (std::ranges::find(mdis, view) == mdis.end())
return;
getMainWindow()->setActiveWindow(view);
+2 -2
View File
@@ -483,8 +483,8 @@ DocumentRecoveryPrivate::XmlConfig DocumentRecoveryPrivate::readXmlFile(const QS
child = root.firstChildElement();
while (!child.isNull()) {
QString name = child.localName();
QString value = child.text();
if (std::find(filter.begin(), filter.end(), name) != filter.end())
const QString value = child.text();
if (std::ranges::find(filter, name) != filter.end())
cfg[name] = value;
child = child.nextSiblingElement();
}
+1 -1
View File
@@ -240,7 +240,7 @@ void Translator::activateLanguage (const char* lang)
removeTranslators(); // remove the currently installed translators
d->activatedLanguage = lang;
TStringList languages = supportedLanguages();
if (std::find(languages.begin(), languages.end(), lang) != languages.end()) {
if (std::ranges::find(languages, lang) != languages.end()) {
refresh();
}
}
+7 -6
View File
@@ -218,7 +218,7 @@ void PrefDoubleSpinBox::wheelEvent(QWheelEvent *event)
if (hasFocus())
QDoubleSpinBox::wheelEvent(event);
else
event->ignore();
event->ignore();
}
PrefDoubleSpinBox::~PrefDoubleSpinBox() = default;
@@ -358,7 +358,7 @@ void PrefComboBox::wheelEvent(QWheelEvent *event)
if (hasFocus())
QComboBox::wheelEvent(event);
else
event->ignore();
event->ignore();
}
PrefComboBox::~PrefComboBox() = default;
@@ -601,7 +601,7 @@ void PrefUnitSpinBox::wheelEvent(QWheelEvent *event)
if (hasFocus())
QuantitySpinBox::wheelEvent(event);
else
event->ignore();
event->ignore();
}
PrefUnitSpinBox::~PrefUnitSpinBox() = default;
@@ -650,9 +650,10 @@ public:
list.clear();
}
void append(const QString& value) {
if (!list.isEmpty() && list.back() == value)
if (!list.isEmpty() && list.back() == value) {
return;
auto it = std::find(list.begin(), list.end(), value);
}
const auto it = std::ranges::find(list, value);
if (it != list.end())
list.erase(it);
else if (list.size() == max_size)
@@ -750,7 +751,7 @@ void PrefQuantitySpinBox::wheelEvent(QWheelEvent *event)
if (hasFocus())
QuantitySpinBox::wheelEvent(event);
else
event->ignore();
event->ignore();
}
void PrefQuantitySpinBox::restorePreferences()
@@ -745,7 +745,7 @@ void DlgSettingsGeneral::onImportConfigClicked()
auto packName = path.filename().stem().string();
std::replace(packName.begin(), packName.end(), '_', ' ');
auto existingPacks = Application::Instance->prefPackManager()->preferencePackNames();
if (std::find(existingPacks.begin(), existingPacks.end(), packName)
if (std::ranges::find(existingPacks, packName)
!= existingPacks.end()) {
auto result = QMessageBox::question(
this, tr("File exists"),
@@ -803,7 +803,7 @@ void DlgSettingsGeneral::onLinkActivated(const QString& link)
// This is a quick and dirty way to open Addon Manager with only themes.
auto pref = App::GetApplication().GetParameterGroupByPath("User parameter:BaseApp/Preferences/Addons");
pref->SetInt("PackageTypeSelection", 3); // 3 stands for Preference Packs
pref->SetInt("StatusSelection", 0); // 0 stands for any installation status
pref->SetInt("StatusSelection", 0); // 0 stands for any installation status
Gui::Application::Instance->commandManager().runCommandByName("Std_AddonMgr");
}
@@ -400,12 +400,12 @@ void DlgSettingsWorkbenchesImp::buildWorkbenchList()
void DlgSettingsWorkbenchesImp::addWorkbench(const QString& wbName, bool enabled)
{
bool isStartupWb = wbName.toStdString() == _startupModule;
bool autoLoad = std::find(_backgroundAutoloadedModules.begin(), _backgroundAutoloadedModules.end(),
wbName.toStdString()) != _backgroundAutoloadedModules.end();
wbListItem* widget = new wbListItem(wbName, enabled, isStartupWb, autoLoad, ui->wbList->count(), this);
const bool isStartupWb = wbName.toStdString() == _startupModule;
const bool autoLoad = std::ranges::find(_backgroundAutoloadedModules, wbName.toStdString())
!= _backgroundAutoloadedModules.end();
const auto widget = new wbListItem(wbName, enabled, isStartupWb, autoLoad, ui->wbList->count(), this);
connect(widget, &wbListItem::wbToggled, this, &DlgSettingsWorkbenchesImp::wbToggled);
auto wItem = new QListWidgetItem();
const auto wItem = new QListWidgetItem();
wItem->setSizeHint(widget->sizeHint());
ui->wbList->addItem(wItem);
ui->wbList->setItemWidget(wItem, widget);
+9 -8
View File
@@ -101,7 +101,7 @@ static bool isVisibilityIconEnabled() {
}
static bool isOnlyNameColumnDisplayed() {
return TreeParams::getHideInternalNames()
return TreeParams::getHideInternalNames()
&& TreeParams::getHideColumn();
}
@@ -488,7 +488,7 @@ void TreeWidgetItemDelegate::paint(QPainter *painter,
// If only the first column is shown, we'll trim the color background when
// rendering as transparent overlay.
bool trimColumnSize = isOnlyNameColumnDisplayed();
bool trimColumnSize = isOnlyNameColumnDisplayed();
if (index.column() == 0) {
if (tree->testAttribute(Qt::WA_NoSystemBackground)
@@ -550,7 +550,7 @@ public:
QSize sizeHint() const override
{
QSize size = QLineEdit::sizeHint();
QSize size = QLineEdit::sizeHint();
QFontMetrics fm(font());
int availableWidth = parentWidget()->width() - geometry().x(); // Calculate available width
int margin = 2 * (style()->pixelMetric(QStyle::PM_FocusFrameHMargin) + 1)
@@ -2779,7 +2779,7 @@ void TreeWidget::sortDroppedObjects(TargetItemInfo& targetInfo, std::vector<App:
}
}
else {
if (std::find(draggedObjects.begin(), draggedObjects.end(), obj) == draggedObjects.end()) {
if (std::ranges::find(draggedObjects, obj) == draggedObjects.end()) {
sortedObjList.push_back(obj);
}
}
@@ -2908,7 +2908,7 @@ void TreeWidget::onOpenFileLocation()
}
param += QDir::toNativeSeparators(filePath);
success = QProcess::startDetached(QStringLiteral("explorer.exe"), param);
#else
#else
success = QProcess::startDetached(QStringLiteral("xdg-open"), {filePath});
#endif
@@ -4992,8 +4992,9 @@ DocumentObjectItem* DocumentItem::findItem(
else {
if (select) {
item->selected += 2;
if (std::find(item->mySubs.begin(), item->mySubs.end(), subname) == item->mySubs.end())
if (std::ranges::find(item->mySubs, subname) == item->mySubs.end()) {
item->mySubs.emplace_back(subname);
}
}
return item;
}
@@ -5006,7 +5007,7 @@ DocumentObjectItem* DocumentItem::findItem(
TREE_LOG("sub object not found " << item->getName() << '.' << name.c_str());
if (select) {
item->selected += 2;
if (std::find(item->mySubs.begin(), item->mySubs.end(), subname) == item->mySubs.end())
if (std::ranges::find(item->mySubs, subname) == item->mySubs.end())
item->mySubs.emplace_back(subname);
}
return item;
@@ -5051,7 +5052,7 @@ DocumentObjectItem* DocumentItem::findItem(
// Select the current object instead.
TREE_TRACE("element " << subname << " not found");
item->selected += 2;
if (std::find(item->mySubs.begin(), item->mySubs.end(), subname) == item->mySubs.end())
if (std::ranges::find(item->mySubs, subname) == item->mySubs.end())
item->mySubs.emplace_back(subname);
}
return res;
+1 -1
View File
@@ -88,7 +88,7 @@ bool ViewProviderGroupExtension::extensionCanDropObject(App::DocumentObject* obj
// Check for possible cyclic dependencies if we allowed to drop the object
const auto& list = obj->getOutList();
if (std::find(list.begin(), list.end(), extobj) != list.end()) {
if (std::ranges::find(list, extobj) != list.end()) {
Base::Console().Warning("Do not add cyclic dependency to %s\n", extobj->Label.getValue());
return false;
}
+2 -2
View File
@@ -164,7 +164,7 @@ void ViewProviderVRMLObject::addResource(const SbString& url, std::list<std::str
Base::FileInfo fi(found.getString());
if (fi.exists()) {
// add the resource file if not yet listed
if (std::find(resources.begin(), resources.end(), found.getString()) == resources.end()) {
if (std::ranges::find(resources, found.getString()) == resources.end()) {
resources.emplace_back(found.getString());
}
}
@@ -186,7 +186,7 @@ void ViewProviderVRMLObject::getLocalResources(SoNode* node, std::list<std::stri
const SbString& url = vrml->getFullURLName();
if (url.getLength() > 0) {
// add the resource file if not yet listed
if (std::find(resources.begin(), resources.end(), url.getString()) == resources.end()) {
if (std::ranges::find(resources, url.getString()) == resources.end()) {
resources.emplace_back(url.getString());
}
+1 -1
View File
@@ -680,7 +680,7 @@ void PropertyEditor::removeProperty(const App::Property& prop)
for (PropertyModel::PropertyList::iterator it = propList.begin(); it != propList.end(); ++it) {
// find the given property in the list and remove it if it's there
std::vector<App::Property*>::iterator pos =
std::find(it->second.begin(), it->second.end(), &prop);
std::ranges::find(it->second, &prop);
if (pos != it->second.end()) {
it->second.erase(pos);
// if the last property of this name is removed then also remove the whole group
+2 -2
View File
@@ -199,7 +199,7 @@ const std::vector<App::Property*>& PropertyItem::getPropertyData() const
bool PropertyItem::hasProperty(const App::Property* prop) const
{
auto it = std::find(propertyItems.begin(), propertyItems.end(), prop);
auto it = std::ranges::find(propertyItems, prop);
return (it != propertyItems.end());
}
@@ -210,7 +210,7 @@ void PropertyItem::assignProperty(const App::Property* prop)
bool PropertyItem::removeProperty(const App::Property* prop)
{
auto it = std::find(propertyItems.begin(), propertyItems.end(), prop);
auto it = std::ranges::find(propertyItems, prop);
if (it != propertyItems.end()) {
propertyItems.erase(it);
}
+2 -2
View File
@@ -259,7 +259,7 @@ void AssemblyObject::preDrag(std::vector<App::DocumentObject*> dragParts)
draggedParts.clear();
for (auto part : dragParts) {
// make sure no duplicate
if (std::find(draggedParts.begin(), draggedParts.end(), part) != draggedParts.end()) {
if (std::ranges::find(draggedParts, part) != draggedParts.end()) {
continue;
}
@@ -1493,7 +1493,7 @@ AssemblyObject::makeMbdJoint(App::DocumentObject* joint)
std::vector<App::DocumentObject*> done;
// Add motions if needed
for (auto* motion : motions) {
if (std::find(done.begin(), done.end(), motion) != done.end()) {
if (std::ranges::find(done, motion) != done.end()) {
continue; // don't process twice (can happen in case of cylindrical)
}
@@ -1062,7 +1062,7 @@ bool ViewProviderAssembly::canDelete(App::DocumentObject* objBeingDeleted) const
auto* subAsmLink = dynamic_cast<AssemblyLink*>(obj);
auto* link = dynamic_cast<App::Link*>(obj);
if (subAsmLink || link) {
if (std::find(objs.begin(), objs.end(), obj) == objs.end()) {
if (std::ranges::find(objs, obj) == objs.end()) {
objs.push_back(obj);
if (subAsmLink && !asmLink->isRigid()) {
addSubComponents(subAsmLink, objs);
@@ -1085,7 +1085,7 @@ bool ViewProviderAssembly::canDelete(App::DocumentObject* objBeingDeleted) const
}
joints = assemblyPart->getJointsOfPart(obj);
for (auto* joint : joints) {
if (std::find(objToDel.begin(), objToDel.end(), joint) == objToDel.end()) {
if (std::ranges::find(objToDel, joint) == objToDel.end()) {
objToDel.push_back(joint);
}
}
@@ -129,16 +129,17 @@ EndMill* MillSimulation::GetTool(int toolId)
return nullptr;
}
void MillSimulation::RemoveTool(int toolId)
void MillSimulation::RemoveTool(const int toolId)
{
EndMill* tool;
if ((tool = GetTool(toolId)) != nullptr) {
auto it = std::find(mToolTable.begin(), mToolTable.end(), tool);
if (it != mToolTable.end()) {
mToolTable.erase(it);
}
delete tool;
EndMill* tool = GetTool(toolId);
if (tool == nullptr) {
return;
}
if (const auto it = std::ranges::find(mToolTable, tool); it != mToolTable.end()) {
mToolTable.erase(it);
}
delete tool;
}
@@ -256,7 +256,7 @@ App::DocumentObjectExecReturn* FeatureViewSpreadsheet::execute(void)
cell->getAlignment(alignment);
}
// skip cell if found in skiplist
if (std::find(skiplist.begin(), skiplist.end(), address.toString()) == skiplist.end()) {
if (std::ranges::find(skiplist, address.toString()) == skiplist.end()) {
result << " <rect x=\"" << coloffset << "\" y=\"" << rowoffset << "\" width=\""
<< cellwidth << "\" height=\"" << cellheight << "\" style=\"fill:" << bcolor
<< ";stroke-width:" << LineWidth.getValue() / Scale.getValue() << ";stroke:#"
+5 -6
View File
@@ -197,14 +197,13 @@ void Constraint::onChanged(const App::Property* prop)
App::DocumentObject::onChanged(prop);
}
void Constraint::slotChangedObject(const App::DocumentObject& obj, const App::Property& prop)
void Constraint::slotChangedObject(const App::DocumentObject& Obj, const App::Property& Prop)
{
if (obj.isDerivedFrom<App::GeoFeature>()
&& (prop.isDerivedFrom<App::PropertyPlacement>() || obj.isRemoving())) {
auto values = References.getValues();
for (const auto ref : values) {
if (Obj.isDerivedFrom<App::GeoFeature>()
&& (Prop.isDerivedFrom<App::PropertyPlacement>() || Obj.isRemoving())) {
for (const auto ref : References.getValues()) {
auto v = ref->getInListEx(true);
if ((&obj == ref) || (std::find(v.begin(), v.end(), &obj) != v.end())) {
if ((&Obj == ref) || (std::ranges::find(v, &Obj) != v.end())) {
this->touch();
return;
}
+1 -1
View File
@@ -521,7 +521,7 @@ std::map<int, int> FemMesh::getccxVolumesByFace(const TopoDS_Face& face) const
int missing_node = 0;
for (int i = 0; i < 4; i++) {
// search for the ID of the volume which is not part of 'element_face_nodes'
if (std::find(element_face_nodes.begin(), element_face_nodes.end(), apair.second[i])
if (std::ranges::find(element_face_nodes, apair.second[i])
== element_face_nodes.end()) {
missing_node = i + 1;
break;
+4 -6
View File
@@ -826,8 +826,7 @@ void FemPostContoursFilter::refreshFields()
Field.setValue(m_fields);
// search if the current field is in the available ones and set it
std::vector<std::string>::iterator it =
std::find(FieldsArray.begin(), FieldsArray.end(), fieldName);
const auto it = std::ranges::find(FieldsArray, fieldName);
if (!fieldName.empty() && it != FieldsArray.end()) {
Field.setValue(fieldName.c_str());
}
@@ -884,7 +883,7 @@ void FemPostContoursFilter::refreshVectors()
VectorMode.setValue(m_vectors);
// apply stored name
auto it = std::find(vectorArray.begin(), vectorArray.end(), vectorName);
const auto it = std::ranges::find(vectorArray, vectorName);
if (!vectorName.empty() && it != vectorArray.end()) {
VectorMode.setValue(vectorName.c_str());
}
@@ -1004,8 +1003,7 @@ DocumentObjectExecReturn* FemPostScalarClipFilter::execute()
Scalars.setValue(m_scalarFields);
// search if the current field is in the available ones and set it
std::vector<std::string>::iterator it =
std::find(ScalarsArray.begin(), ScalarsArray.end(), val);
const auto it = std::ranges::find(ScalarsArray, val);
if (!val.empty() && it != ScalarsArray.end()) {
Scalars.setValue(val.c_str());
}
@@ -1123,7 +1121,7 @@ DocumentObjectExecReturn* FemPostWarpVectorFilter::execute()
Vector.setValue(m_vectorFields);
// search if the current field is in the available ones and set it
std::vector<std::string>::iterator it = std::find(VectorArray.begin(), VectorArray.end(), val);
const auto it = std::ranges::find(VectorArray, val);
if (!val.empty() && it != VectorArray.end()) {
Vector.setValue(val.c_str());
}
+2 -2
View File
@@ -1533,7 +1533,7 @@ void readResults(std::ifstream& ifstr,
for (auto it = sub.begin(); it != sub.end(); it += 12, ++countScaPos) {
valueFromLine(it, 12, value);
// search if value is scalar or vector/matrix component
auto pos = std::find(scalarPos.begin(), scalarPos.end(), countScaPos);
auto pos = std::ranges::find(scalarPos, countScaPos);
if (pos == scalarPos.end()) {
vecValues.emplace_back(value);
}
@@ -1552,7 +1552,7 @@ void readResults(std::ifstream& ifstr,
for (auto it = sub.begin(); it != sub.end(); it += 12) {
valueFromLine(it, 12, value);
// search if value is scalar or vector/matrix component
auto pos = std::find(scalarPos.begin(), scalarPos.end(), countScaPos);
auto pos = std::ranges::find(scalarPos, countScaPos);
if (pos == scalarPos.end()) {
vecValues.emplace_back(value);
}
+4 -11
View File
@@ -230,9 +230,7 @@ void TaskFemConstraintContact::addToSelectionSlave()
QMessageBox::warning(this, tr("Selection error"), tr("Only faces can be picked"));
return;
}
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -279,9 +277,7 @@ void TaskFemConstraintContact::removeFromSelectionSlave()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -359,8 +355,7 @@ void TaskFemConstraintContact::addToSelectionMaster()
QMessageBox::warning(this, tr("Selection error"), tr("Only faces can be picked"));
return;
}
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
for (auto itr = std::ranges::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
@@ -408,9 +403,7 @@ void TaskFemConstraintContact::removeFromSelectionMaster()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -254,8 +254,7 @@ void TaskFemConstraintDisplacement::addToSelection()
App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
bool addMe = true;
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
for (auto itr = std::ranges::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
@@ -325,9 +324,7 @@ void TaskFemConstraintDisplacement::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
+2 -6
View File
@@ -124,9 +124,7 @@ void TaskFemConstraintFixed::addToSelection()
ConstraintView->getObject()->getDocument()->getObject(it.getFeatName());
for (const auto& subName : subNames) { // for every selected sub element
bool addMe = true;
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -194,9 +192,7 @@ void TaskFemConstraintFixed::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -833,9 +833,7 @@ void TaskFemConstraintFluidBoundary::addToSelection()
App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
bool addMe = true;
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -905,9 +903,7 @@ void TaskFemConstraintFluidBoundary::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
+2 -6
View File
@@ -139,9 +139,7 @@ void TaskFemConstraintForce::addToSelection()
App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
bool addMe = true;
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -210,9 +208,7 @@ void TaskFemConstraintForce::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -294,8 +294,7 @@ void TaskFemConstraintHeatflux::addToSelection()
}
for (const auto& subName : subNames) { // for every selected sub element
bool addMe = true;
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
for (auto itr = std::ranges::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
@@ -358,9 +357,7 @@ void TaskFemConstraintHeatflux::removeFromSelection()
// SubElements
}
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -171,8 +171,7 @@ void TaskFemConstraintPlaneRotation::addToSelection()
return;
}
}
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
for (auto itr = std::ranges::find(SubElements, subName);
itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
@@ -231,9 +230,7 @@ void TaskFemConstraintPlaneRotation::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -248,7 +245,7 @@ void TaskFemConstraintPlaneRotation::removeFromSelection()
}
}
}
std::sort(itemsToDel.begin(), itemsToDel.end());
std::ranges::sort(itemsToDel);
while (!itemsToDel.empty()) {
Objects.erase(Objects.begin() + itemsToDel.back());
SubElements.erase(SubElements.begin() + itemsToDel.back());
@@ -149,9 +149,7 @@ void TaskFemConstraintPressure::addToSelection()
QMessageBox::warning(this, tr("Selection error"), tr("Only faces can be picked"));
return;
}
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -198,9 +196,7 @@ void TaskFemConstraintPressure::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -215,7 +211,7 @@ void TaskFemConstraintPressure::removeFromSelection()
}
}
}
std::sort(itemsToDel.begin(), itemsToDel.end());
std::ranges::sort(itemsToDel);
while (!itemsToDel.empty()) {
Objects.erase(Objects.begin() + itemsToDel.back());
SubElements.erase(SubElements.begin() + itemsToDel.back());
@@ -289,8 +289,7 @@ void TaskFemConstraintRigidBody::addToSelection()
for (size_t subIt = 0; subIt < (subNames.size());
++subIt) { // for every selected sub element
bool addMe = true;
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subNames[subIt]);
for (auto itr = std::ranges::find(SubElements, subNames[subIt]);
itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
@@ -361,8 +360,7 @@ void TaskFemConstraintRigidBody::removeFromSelection()
for (size_t subIt = 0; subIt < (subNames.size());
++subIt) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subNames[subIt]);
for (auto itr = std::ranges::find(SubElements, subNames[subIt]);
itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
+2 -6
View File
@@ -147,9 +147,7 @@ void TaskFemConstraintSpring::addToSelection()
QMessageBox::warning(this, tr("Selection error"), tr("Only faces can be picked"));
return;
}
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -196,9 +194,7 @@ void TaskFemConstraintSpring::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -204,9 +204,7 @@ void TaskFemConstraintTemperature::addToSelection()
ConstraintView->getObject()->getDocument()->getObject(it.getFeatName());
for (const auto& subName : subNames) { // for every selected sub element
bool addMe = true;
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -254,9 +252,7 @@ void TaskFemConstraintTemperature::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -271,7 +267,7 @@ void TaskFemConstraintTemperature::removeFromSelection()
}
}
}
std::sort(itemsToDel.begin(), itemsToDel.end());
std::ranges::sort(itemsToDel);
while (!itemsToDel.empty()) {
Objects.erase(Objects.begin() + itemsToDel.back());
SubElements.erase(SubElements.begin() + itemsToDel.back());
@@ -349,9 +349,7 @@ void TaskFemConstraintTransform::addToSelection()
}
}
}
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -433,9 +431,7 @@ void TaskFemConstraintTransform::removeFromSelection()
const App::DocumentObject* obj = it.getObject();
for (const auto& subName : subNames) { // for every selected sub element
for (std::vector<std::string>::iterator itr =
std::find(SubElements.begin(), SubElements.end(), subName);
itr != SubElements.end();
for (auto itr = std::ranges::find(SubElements, subName); itr != SubElements.end();
itr = std::find(++itr,
SubElements.end(),
subName)) { // for every sub element in selection that
@@ -450,7 +446,7 @@ void TaskFemConstraintTransform::removeFromSelection()
}
}
}
std::sort(itemsToDel.begin(), itemsToDel.end());
std::ranges::sort(itemsToDel);
while (!itemsToDel.empty()) {
Objects.erase(Objects.begin() + itemsToDel.back());
SubElements.erase(SubElements.begin() + itemsToDel.back());
@@ -430,7 +430,7 @@ void ViewProviderFemPostObject::updateProperties()
m_coloringEnum.setEnums(colorArrays);
Field.setValue(m_coloringEnum);
std::vector<std::string>::iterator it = std::find(colorArrays.begin(), colorArrays.end(), val);
auto it = std::ranges::find(colorArrays, val);
if (!val.empty() && it != colorArrays.end()) {
Field.setValue(val.c_str());
}
@@ -472,7 +472,7 @@ void ViewProviderFemPostObject::updateProperties()
m_vectorEnum.setEnums(colorArrays);
VectorMode.setValue(m_vectorEnum);
it = std::find(colorArrays.begin(), colorArrays.end(), val);
it = std::ranges::find(colorArrays, val);
if (!val.empty() && it != colorArrays.end()) {
VectorMode.setValue(val.c_str());
}
+1 -2
View File
@@ -100,8 +100,7 @@ std::vector<App::DocumentObject*> ExportOCAF::filterPart(App::Part* part) const
std::vector<App::DocumentObject*> inList = it->getInList();
bool accept = true;
for (auto jt : inList) {
auto kt = std::find(filterType.begin(), filterType.end(), jt);
if (kt != filterType.end()) {
if (auto kt = std::ranges::find(filterType, jt); kt != filterType.end()) {
accept = false;
break;
}
+1 -1
View File
@@ -535,7 +535,7 @@ private:
"User parameter:BaseApp/Preferences/Mod/Part/STEP");
std::string scheme = hGrp->GetASCII("Scheme", Part::Interface::writeStepScheme());
std::list<std::string> supported = Part::supportedSTEPSchemes();
if (std::find(supported.begin(), supported.end(), scheme) != supported.end()) {
if (std::ranges::find(supported, scheme) != supported.end()) {
Part::Interface::writeStepScheme(scheme.c_str());
}
@@ -351,8 +351,7 @@ void ViewProviderMeasureBase::updateData(const App::Property* prop)
// Check if one of the input properties has been changed
auto inputProps = obj->getInputProps();
if (std::find(inputProps.begin(), inputProps.end(), std::string(prop->getName()))
!= inputProps.end()) {
if (std::ranges::find(inputProps, std::string(prop->getName())) != inputProps.end()) {
doUpdate = true;
// Add connections to be notified when the measured objects are changed
+1 -2
View File
@@ -403,8 +403,7 @@ void MeshEvalTopology::GetFacetManifolds(std::vector<FacetIndex>& raclFacetIndLi
PointIndex ulPt1 = std::max<PointIndex>(pI->_aulPoints[i], pI->_aulPoints[(i + 1) % 3]);
std::pair<PointIndex, PointIndex> edge = std::make_pair(ulPt0, ulPt1);
if (std::find(nonManifoldList.begin(), nonManifoldList.end(), edge)
!= nonManifoldList.end()) {
if (std::ranges::find(nonManifoldList, edge) != nonManifoldList.end()) {
raclFacetIndList.push_back(pI - rclFAry.begin());
}
}
+2 -4
View File
@@ -182,8 +182,7 @@ bool WriterOBJ::Save(std::ostream& out)
for (auto it = rFacets.begin(); it != rFacets.end(); ++it, index++) {
if (index == 0 || prev != Kd[index]) {
prev = Kd[index];
auto c_it = std::find(colors.begin(), colors.end(), prev);
if (c_it != colors.end()) {
if (auto c_it = std::ranges::find(colors, prev); c_it != colors.end()) {
out << "usemtl material_" << (c_it - colors.begin()) << '\n';
}
}
@@ -224,8 +223,7 @@ bool WriterOBJ::Save(std::ostream& out)
if (first || prev != Kd[it]) {
first = false;
prev = Kd[it];
auto c_it = std::find(colors.begin(), colors.end(), prev);
if (c_it != colors.end()) {
if (auto c_it = std::ranges::find(colors, prev); c_it != colors.end()) {
out << "usemtl material_" << (c_it - colors.begin()) << '\n';
}
}
+1 -1
View File
@@ -53,7 +53,7 @@ void MeshSurfaceSegment::AddSegment(const std::vector<FacetIndex>& segm)
MeshSegment MeshSurfaceSegment::FindSegment(FacetIndex index) const
{
for (const auto& segment : segments) {
if (std::find(segment.begin(), segment.end(), index) != segment.end()) {
if (std::ranges::find(segment, index) != segment.end()) {
return segment;
}
}
+3 -4
View File
@@ -940,10 +940,10 @@ bool MeshTopoAlgorithm::CollapseVertex(const VertexCollapse& vc)
const std::vector<FacetIndex>& faces = vc._circumFacets;
// get neighbours that are not part of the faces to be removed
for (int i = 0; i < 3; i++) {
if (std::find(faces.begin(), faces.end(), rFace2._aulNeighbours[i]) == faces.end()) {
if (std::ranges::find(faces, rFace2._aulNeighbours[i]) == faces.end()) {
neighbour1 = rFace2._aulNeighbours[i];
}
if (std::find(faces.begin(), faces.end(), rFace3._aulNeighbours[i]) == faces.end()) {
if (std::ranges::find(faces, rFace3._aulNeighbours[i]) == faces.end()) {
neighbour2 = rFace3._aulNeighbours[i];
}
}
@@ -1106,8 +1106,7 @@ bool MeshTopoAlgorithm::CollapseEdge(const EdgeCollapse& ec)
for (FacetIndex nbIndex : f._aulNeighbours) {
// get the neighbours of the facet that won't be invalidated
if (nbIndex != FACET_INDEX_MAX) {
if (std::find(ec._removeFacets.begin(), ec._removeFacets.end(), nbIndex)
== ec._removeFacets.end()) {
if (std::ranges::find(ec._removeFacets, nbIndex) == ec._removeFacets.end()) {
neighbours.push_back(nbIndex);
}
}
+5 -6
View File
@@ -323,9 +323,8 @@ void MeshFaceAddition::showMarker(SoPickedPoint* pp)
SbVec3f face_pnt;
for (int i = 0; i < 3; i++) {
int index = (int)f._aulPoints[i];
if (std::find(faceView->index.begin(), faceView->index.end(), index)
!= faceView->index.end()) {
int index = static_cast<int>(f._aulPoints[i]);
if (std::ranges::find(faceView->index, index) != faceView->index.end()) {
continue; // already inside
}
if (f._aulNeighbours[i] == MeshCore::FACET_INDEX_MAX
@@ -524,9 +523,9 @@ void MeshFillHole::closeBridge()
{
// Do the hole-filling
Gui::WaitCursor wc;
auto it = std::find(myPolygon.begin(), myPolygon.end(), myVertex1);
auto jt = std::find(myPolygon.begin(), myPolygon.end(), myVertex2);
if (it != myPolygon.end() && jt != myPolygon.end()) {
auto it = std::ranges::find(myPolygon, myVertex1);
if (auto jt = std::ranges::find(myPolygon, myVertex2);
it != myPolygon.end() && jt != myPolygon.end()) {
// which iterator comes first
if (jt < it) {
std::swap(it, jt);
+4 -4
View File
@@ -568,10 +568,10 @@ void MeshSelection::pickFaceCallback(void* ud, SoEventCallback* n)
if (!vp || !vp->isDerivedFrom<ViewProviderMesh>()) {
return;
}
ViewProviderMesh* mesh = static_cast<ViewProviderMesh*>(vp);
MeshSelection* self = static_cast<MeshSelection*>(ud);
std::list<ViewProviderMesh*> views = self->getViewProviders();
if (std::find(views.begin(), views.end(), mesh) == views.end()) {
const auto mesh = static_cast<ViewProviderMesh*>(vp);
const auto self = static_cast<MeshSelection*>(ud);
if (std::list<ViewProviderMesh*> views = self->getViewProviders();
std::ranges::find(views, mesh) == views.end()) {
return;
}
const SoDetail* detail = point->getDetail(/*mesh->getShapeNode()*/);
+5 -9
View File
@@ -68,16 +68,12 @@ bool BodyBase::isAfter(const App::DocumentObject *feature, const App::DocumentOb
return hasObject (feature);
}
const std::vector<App::DocumentObject *> & features = Group.getValues();
auto featureIt = std::find(features.begin(), features.end(), feature);
auto targetIt = std::find(features.begin(), features.end(), target);
const std::vector<App::DocumentObject*>& features = Group.getValues();
const auto featureIt = std::ranges::find(features, feature);
const auto targetIt = std::ranges::find(features, target);
if (featureIt == features.end()) {
return false;
} else {
return featureIt > targetIt;
}
}
return featureIt == features.end() ? false : featureIt > targetIt;
}
void BodyBase::onBeforeChange (const App::Property* prop) {
+5 -6
View File
@@ -252,7 +252,7 @@ App::ElementNamePair Feature::getExportElementName(TopoShape shape,
}
else if (size > 1) {
for (auto it = ancestors.begin(); it != ancestors.end();) {
if (std::find(v.second.begin(), v.second.end(), *it)
if (std::ranges::find(v.second, *it)
== v.second.end()) {
it = ancestors.erase(it);
if (ancestors.size() == 1) {
@@ -283,13 +283,12 @@ App::ElementNamePair Feature::getExportElementName(TopoShape shape,
// The current chosen elements are not enough to
// identify the higher element, generate an index for
// disambiguation.
auto it = std::find(ancestors.begin(), ancestors.end(), res.second);
auto it = std::ranges::find(ancestors, res.second);
if (it == ancestors.end()) {
assert(0 && "ancestor not found"); // this shouldn't happen
}
else {
op = Data::POSTFIX_INDEX + std::to_string(it - ancestors.begin());
}
op = Data::POSTFIX_INDEX + std::to_string(it - ancestors.begin());
}
// Note: setting names to shape will change its underlying
@@ -367,7 +366,7 @@ App::ElementNamePair Feature::getExportElementName(TopoShape shape,
}
else {
for (auto it = ancestors.begin(); it != ancestors.end();) {
if (std::find(current.begin(), current.end(), *it) == current.end()) {
if (std::ranges::find(current, *it) == current.end()) {
it = ancestors.erase(it);
}
else {
+10 -10
View File
@@ -291,13 +291,13 @@ public:
bool contains(const T &vForContains)
{
if (!sorted) {
const size_t dataSizeMax = 30;
constexpr static size_t dataSizeMax = 30;
if (data.size() < dataSizeMax) {
return std::find(data.begin(), data.end(), vForContains) != data.end();
return std::ranges::find(data, vForContains) != data.end();
}
sort();
}
auto it = std::lower_bound(data.begin(), data.end(), vForContains);
auto it = std::ranges::lower_bound(data, vForContains);
return it!=data.end() && *it == vForContains;
}
bool intersects(const VectorSet<T> &other)
@@ -330,7 +330,7 @@ public:
void insert(const T &vToInsert)
{
if (sorted) {
data.insert(std::upper_bound(data.begin(), data.end(), vToInsert), vToInsert);
data.insert(std::ranges::upper_bound(data, vToInsert), vToInsert);
}
else {
data.push_back(vToInsert);
@@ -339,7 +339,7 @@ public:
bool insertUnique(const T &vToInsertUnique)
{
if (sorted) {
auto it = std::lower_bound(data.begin(), data.end(), vToInsertUnique);
auto it = std::ranges::lower_bound(data, vToInsertUnique);
bool insert = !(it != data.end() && *it == vToInsertUnique);
if (insert) {
data.insert(it, vToInsertUnique);
@@ -359,7 +359,7 @@ public:
data.erase(std::remove(data.begin(), data.end(), vToErase), data.end());
}
else {
auto it = std::lower_bound(data.begin(), data.end(), vToErase);
auto it = std::ranges::lower_bound(data, vToErase);
auto itEnd = it;
while (itEnd != data.end() && *itEnd == vToErase) {
++itEnd;
@@ -493,15 +493,15 @@ public:
{
const size_t verticesSizeMax = 20;
if (vertices.size() < verticesSizeMax) {
auto it = std::find(vertices.begin(), vertices.end(), info);
const auto it = std::ranges::find(vertices, info);
if (it == vertices.end()) {
return 0;
}
return (static_cast<int>(it - vertices.begin()) + 1);
}
sort();
auto it = std::lower_bound(sorted.begin(), sorted.end(), info,
[&](int idx, const VertexInfo &vertex) {return vertices[idx]<vertex;});
const auto it = std::lower_bound(sorted.begin(), sorted.end(), info,
[&](const int idx, const VertexInfo &vertex) {return vertices[idx]<vertex;});
int res = 0;
if (it != sorted.end() && vertices[*it] == info) {
res = *it + 1;
@@ -520,7 +520,7 @@ public:
return 0;
}
sort();
auto it = std::lower_bound(sorted.begin(), sorted.end(), info,
const auto it = std::lower_bound(sorted.begin(), sorted.end(), info,
[&](int idx, const EdgeInfo *vertex) {return vertices[idx].edgeInfo()<vertex;});
int res = 0;
if (it != sorted.end() && vertices[*it].edgeInfo() == info) {
+2 -3
View File
@@ -134,9 +134,8 @@ void DlgBooleanOperation::slotCreatedObject(const App::DocumentObject& obj)
void DlgBooleanOperation::slotChangedObject(const App::DocumentObject& obj,
const App::Property& prop)
{
std::list<const App::DocumentObject*>::iterator it;
it = std::find(observe.begin(), observe.end(), &obj);
if (it != observe.end() && prop.is<Part::PropertyPartShape>()) {
if (const auto it = std::ranges::find(observe, &obj);
it != observe.end() && prop.is<Part::PropertyPartShape>()) {
const TopoDS_Shape& shape = static_cast<const Part::PropertyPartShape&>(prop).getValue();
if (!shape.IsNull()) {
Gui::Document* activeGui = Gui::Application::Instance->getDocument(obj.getDocument());
+5 -6
View File
@@ -605,10 +605,9 @@ void DlgFilletEdges::setupFillet(const std::vector<App::DocumentObject*>& objs)
for(auto &sub : subs)
subSet.insert(sub.newName.empty()?sub.oldName:sub.newName);
std::string tmp;
std::vector<App::DocumentObject*>::const_iterator it = std::find(objs.begin(), objs.end(), base);
if (it != objs.end()) {
if (auto it = std::ranges::find(objs, base); it != objs.end()) {
// toggle visibility
std::string tmp;
Gui::ViewProvider* vp;
vp = Gui::Application::Instance->getViewProvider(d->fillet);
if (vp) vp->hide();
@@ -662,9 +661,9 @@ void DlgFilletEdges::setupFillet(const std::vector<App::DocumentObject*>& objs)
}
for (const auto & et : e) {
std::vector<int>::iterator it = std::find(d->edge_ids.begin(), d->edge_ids.end(), et.edgeid);
if (it != d->edge_ids.end()) {
int index = it - d->edge_ids.begin();
auto it2 = std::ranges::find(d->edge_ids, et.edgeid);
if (it2 != d->edge_ids.end()) {
int index = it2 - d->edge_ids.begin();
model->setData(model->index(index, 0), Qt::Checked, Qt::CheckStateRole);
//model->setData(model->index(index, 1), QVariant(QLocale().toString(et->radius1,'f',Base::UnitsApi::getDecimals())));
//model->setData(model->index(index, 2), QVariant(QLocale().toString(et->radius2,'f',Base::UnitsApi::getDecimals())));
+1 -1
View File
@@ -353,7 +353,7 @@ std::vector<App::DocumentObject*> Body::removeObject(App::DocumentObject* featur
}
std::vector<App::DocumentObject*> model = Group.getValues();
std::vector<App::DocumentObject*>::iterator it = std::find(model.begin(), model.end(), feature);
const auto it = std::ranges::find(model, feature);
// Adjust Tip feature if it is pointing to the deleted object
if (Tip.getValue()== feature) {
+1 -1
View File
@@ -158,7 +158,7 @@ void DressUp::getContinuousEdges(Part::TopoShape TopShape, std::vector< std::str
buf << "Edge";
buf << id;
if(std::find(SubNames.begin(),SubNames.end(),buf.str()) == SubNames.end())
if (std::ranges::find(SubNames, buf.str()) == SubNames.end())
{
SubNames.push_back(buf.str());
}
+2 -2
View File
@@ -72,11 +72,11 @@ Loft::getSectionShape(const char *name,
size_t expected_size)
{
std::vector<TopoShape> shapes;
// Be smart. If part of a sketch is selected, use the entire sketch unless it is a single vertex -
// Be smart. If part of a sketch is selected, use the entire sketch unless it is a single vertex -
// backward compatibility (#16630)
auto subName = subs.empty() ? "" : subs.front();
auto useEntireSketch = obj->isDerivedFrom<Part::Part2DObject>() && subName.find("Vertex") != 0;
if (subs.empty() || std::find(subs.begin(), subs.end(), std::string()) != subs.end() || useEntireSketch ) {
if (subs.empty() || std::ranges::find(subs, std::string()) != subs.end() || useEntireSketch ) {
shapes.push_back(Part::Feature::getTopoShape(obj));
if (shapes.back().isNull())
FC_THROWM(Part::NullShapeException, "Failed to get shape of "
+1 -2
View File
@@ -317,8 +317,7 @@ void ShapeBinder::slotChangedObject(const App::DocumentObject& Obj, const App::P
list = obj->getInListRecursive();
chain.insert(chain.end(), list.begin(), list.end());
auto it = std::find(chain.begin(), chain.end(), &Obj);
if (it != chain.end()) {
if (const auto it = std::ranges::find(chain, &Obj); it != chain.end()) {
if (hasPlacementChanged()) {
enforceRecompute();
}
+8 -8
View File
@@ -379,16 +379,16 @@ void CmdPartDesignMigrate::activated(int iMsg)
featIt = baseFeatSetIt;
continue;
} else {
// The base feature seems already assigned to some chain
// Find which
// The base feature seems already assigned to some chain. Find which
std::list<PartDesign::Feature *>::iterator baseFeatIt;
auto chainIt = std::find_if( featureChains.begin(), featureChains.end(),
[baseFeat, &baseFeatIt] ( std::list<PartDesign::Feature *>&chain ) mutable -> bool {
baseFeatIt = std::find( chain.begin(), chain.end(), baseFeat );
return baseFeatIt != chain.end();
} );
auto isChain = [baseFeat, &baseFeatIt](
std::list<PartDesign::Feature*>& fchain) mutable -> bool {
baseFeatIt = std::ranges::find(fchain, baseFeat);
return baseFeatIt != fchain.end();
};
if ( chainIt != featureChains.end() ) {
if (auto chainIt = std::ranges::find_if(featureChains, isChain);
chainIt != featureChains.end() ) {
assert (baseFeatIt != chainIt->end());
if ( std::next ( baseFeatIt ) == chainIt->end() ) {
// just append our chain to already found
@@ -136,7 +136,7 @@ void TaskBooleanParameters::onSelectionChanged(const Gui::SelectionChanges& msg)
std::vector<App::DocumentObject*> bodies = pcBoolean->Group.getValues();
if (selectionMode == bodyAdd) {
if (std::find(bodies.begin(), bodies.end(), pcBody) == bodies.end()) {
if (std::ranges::find(bodies, pcBody) == bodies.end()) {
bodies.push_back(pcBody);
pcBoolean->Group.setValues(std::vector<App::DocumentObject*>());
pcBoolean->addObjects(bodies);
@@ -178,13 +178,11 @@ void TaskBooleanParameters::onSelectionChanged(const Gui::SelectionChanges& msg)
}
}
else if (selectionMode == bodyRemove) {
std::vector<App::DocumentObject*>::iterator b =
std::find(bodies.begin(), bodies.end(), pcBody);
if (b != bodies.end()) {
if (const auto b = std::ranges::find(bodies, pcBody); b != bodies.end()) {
bodies.erase(b);
pcBoolean->setObjects(bodies);
QString internalName = QString::fromStdString(body);
const QString internalName = QString::fromStdString(body);
for (int row = 0; row < ui->listWidgetBodies->count(); row++) {
QListWidgetItem* item = ui->listWidgetBodies->item(row);
QString name = item->data(Qt::UserRole).toString();
@@ -119,19 +119,19 @@ void TaskDressUpParameters::referenceSelected(const Gui::SelectionChanges& msg,
// TODO: Must we make a copy here instead of assigning to const char* ?
const char* fname = base->getNameInDocument();
if (strcmp(msg.pObjectName, fname) != 0)
if (strcmp(msg.pObjectName, fname) != 0) {
return;
}
std::string subName(msg.pSubName);
const std::string subName(msg.pSubName);
std::vector<std::string> refs = pcDressUp->Base.getSubValues();
std::vector<std::string>::iterator f = std::find(refs.begin(), refs.end(), subName);
if (f != refs.end()) { //If it's found then it's in the list so we remove it.
refs.erase(f);
if (const auto f = std::ranges::find(refs, subName); f != refs.end()) {
refs.erase(f); // it's in the list. Remove it
removeItemFromListWidget(widget, msg.pSubName);
}
else { //if it's not found then it's not yet in the list so we add it.
refs.push_back(subName);
else {
refs.push_back(subName); // not yet in the list so we add it
widget->addItem(QString::fromStdString(msg.pSubName));
}
@@ -402,19 +402,18 @@ void TaskExtrudeParameters::selectedShapeFace(const Gui::SelectionChanges& msg)
}
std::vector<std::string> faces = getShapeFaces();
std::string subName(msg.pSubName);
const std::string subName(msg.pSubName);
if (subName.empty()) {
return;
}
auto positionInList = std::find(faces.begin(), faces.end(), subName);
if (positionInList != faces.end()) { // If it's found then it's in the list so we remove it.
faces.erase(positionInList);
if (const auto positionInList = std::ranges::find(faces, subName);
positionInList != faces.end()) { // it's in the list
faces.erase(positionInList); // remove it.
}
else { // if it's not found then it's not yet in the list so we add it.
faces.push_back(subName);
else {
faces.push_back(subName); // not yet in the list so add it.
}
extrude->UpToShape.setValue(base, faces);
+3 -3
View File
@@ -29,6 +29,8 @@
#include <QTimer>
#endif
#include <ranges>
#include <fmt/format.h>
#include <App/Document.h>
@@ -555,9 +557,7 @@ void TaskFeaturePick::onDoubleClick(QListWidgetItem* item)
void TaskFeaturePick::slotDeletedObject(const Gui::ViewProviderDocumentObject& Obj)
{
std::vector<Gui::ViewProviderCoordinateSystem*>::iterator it;
it = std::find(origins.begin(), origins.end(), &Obj);
if (it != origins.end()) {
if (const auto it = std::ranges::find(origins, &Obj); it != origins.end()) {
origins.erase(it);
}
}
@@ -212,11 +212,11 @@ bool TaskLoftParameters::referenceSelected(const Gui::SelectionChanges& msg) con
loft->Profile.setValue(obj, {msg.pSubName});
return true;
}
else if (selectionMode == refAdd || selectionMode == refRemove) {
if (selectionMode == refAdd || selectionMode == refRemove) {
// now check the sections
std::vector<App::DocumentObject*> refs = loft->Sections.getValues();
std::vector<App::DocumentObject*>::iterator f =
std::find(refs.begin(), refs.end(), obj);
const auto f = std::ranges::find(refs, obj);
if (selectionMode == refAdd) {
if (f != refs.end()) {
@@ -264,12 +264,10 @@ void TaskLoftParameters::onDeleteSection()
delete item;
// search inside the list of sections
if (auto loft = getObject<PartDesign::Loft>()) {
if (const auto loft = getObject<PartDesign::Loft>()) {
std::vector<App::DocumentObject*> refs = loft->Sections.getValues();
App::DocumentObject* obj = loft->getDocument()->getObject(data.constData());
std::vector<App::DocumentObject*>::iterator f =
std::find(refs.begin(), refs.end(), obj);
if (f != refs.end()) {
if (const auto f = std::ranges::find(refs, obj); f != refs.end()) {
loft->Sections.removeValue(obj);
recomputeFeature();
+17 -22
View File
@@ -295,13 +295,12 @@ void TaskPipeParameters::onDeleteEdge()
delete item;
// search inside the list of spines
auto pipe = getObject<PartDesign::Pipe>();
const auto pipe = getObject<PartDesign::Pipe>();
std::vector<std::string> refs = pipe->Spine.getSubValues();
std::string obj = data.constData();
std::vector<std::string>::iterator f = std::find(refs.begin(), refs.end(), obj);
const std::string obj = data.constData();
// if something was found, delete it and update the spine list
if (f != refs.end()) {
if (const auto f = std::ranges::find(refs, obj); f != refs.end()) {
refs.erase(f);
pipe->Spine.setValue(pipe->Spine.getValue(), refs);
clearButtons();
@@ -340,7 +339,7 @@ bool TaskPipeParameters::referenceSelected(const SelectionChanges& msg) const
std::vector<App::DocumentObject*> sections = pipe->Sections.getValues();
// cannot use the same object for profile and section
if (std::find(sections.begin(), sections.end(), profile) != sections.end()) {
if (std::ranges::find(sections, profile) != sections.end()) {
success = false;
}
else {
@@ -359,10 +358,10 @@ bool TaskPipeParameters::referenceSelected(const SelectionChanges& msg) const
case StateHandlerTaskPipe::SelectionModes::refSpineEdgeAdd:
case StateHandlerTaskPipe::SelectionModes::refSpineEdgeRemove: {
// change the references
std::string subName(msg.pSubName);
auto pipe = getObject<PartDesign::Pipe>();
const std::string subName(msg.pSubName);
const auto pipe = getObject<PartDesign::Pipe>();
std::vector<std::string> refs = pipe->Spine.getSubValues();
std::vector<std::string>::iterator f = std::find(refs.begin(), refs.end(), subName);
const auto f = std::ranges::find(refs, subName);
if (selectionMode == StateHandlerTaskPipe::SelectionModes::refSpine) {
getViewObject<ViewProviderPipe>()->highlightReferences(ViewProviderPipe::Spine,
@@ -793,11 +792,11 @@ bool TaskPipeOrientation::referenceSelected(const SelectionChanges& msg) const
return false;
}
if (auto pipe = getObject<PartDesign::Pipe>()) {
if (const auto pipe = getObject<PartDesign::Pipe>()) {
// change the references
std::string subName(msg.pSubName);
const std::string subName(msg.pSubName);
std::vector<std::string> refs = pipe->AuxillerySpine.getSubValues();
std::vector<std::string>::iterator f = std::find(refs.begin(), refs.end(), subName);
const auto f = std::ranges::find(refs, subName);
if (selectionMode == StateHandlerTaskPipe::SelectionModes::refAuxSpine) {
refs.clear();
@@ -847,13 +846,12 @@ void TaskPipeOrientation::onDeleteItem()
delete item;
// search inside the list of spines
if (auto pipe = getObject<PartDesign::Pipe>()) {
if (const auto pipe = getObject<PartDesign::Pipe>()) {
std::vector<std::string> refs = pipe->AuxillerySpine.getSubValues();
std::string obj = data.constData();
std::vector<std::string>::iterator f = std::find(refs.begin(), refs.end(), obj);
const std::string obj = data.constData();
// if something was found, delete it and update the spine list
if (f != refs.end()) {
if (const auto f = std::ranges::find(refs, obj); f != refs.end()) {
refs.erase(f);
pipe->AuxillerySpine.setValue(pipe->AuxillerySpine.getValue(), refs);
clearButtons();
@@ -1049,11 +1047,10 @@ bool TaskPipeScaling::referenceSelected(const SelectionChanges& msg) const
}
// change the references
if (auto pipe = getObject<PartDesign::Pipe>()) {
if (const auto pipe = getObject<PartDesign::Pipe>()) {
std::vector<App::DocumentObject*> refs = pipe->Sections.getValues();
App::DocumentObject* obj = pipe->getDocument()->getObject(msg.pObjectName);
std::vector<App::DocumentObject*>::iterator f =
std::find(refs.begin(), refs.end(), obj);
const auto f = std::ranges::find(refs, obj);
if (selectionMode == StateHandlerTaskPipe::SelectionModes::refSectionAdd) {
if (f != refs.end()) {
@@ -1101,13 +1098,11 @@ void TaskPipeScaling::onDeleteSection()
.first->getNameInDocument());
delete item;
if (auto pipe = getObject<PartDesign::Pipe>()) {
if (const auto pipe = getObject<PartDesign::Pipe>()) {
std::vector<App::DocumentObject*> refs = pipe->Sections.getValues();
App::DocumentObject* obj = pipe->getDocument()->getObject(data.constData());
std::vector<App::DocumentObject*>::iterator f =
std::find(refs.begin(), refs.end(), obj);
if (f != refs.end()) {
if (const auto f = std::ranges::find(refs.begin(), refs.end(), obj); f != refs.end()) {
pipe->Sections.removeValue(obj);
clearButtons();
recomputeFeature();
+5 -5
View File
@@ -202,11 +202,10 @@ void TaskShapeBinder::deleteItem()
PartDesign::ShapeBinder* binder = vp->getObject<PartDesign::ShapeBinder>();
PartDesign::ShapeBinder::getFilteredReferences(&binder->Support, obj, subs);
std::string subname = data.constData();
std::vector<std::string>::iterator it = std::find(subs.begin(), subs.end(), subname);
const std::string subname = data.constData();
// if something was found, delete it and update the support
if (it != subs.end()) {
if (const auto it = std::ranges::find(subs, subname); it != subs.end()) {
subs.erase(it);
binder->Support.setValue(obj, subs);
@@ -315,10 +314,11 @@ bool TaskShapeBinder::referenceSelected(const SelectionChanges& msg) const
if (selectionMode != refObjAdd) {
// ensure the new selected subref belongs to the same object
if (strcmp(msg.pObjectName, obj->getNameInDocument()) != 0)
if (strcmp(msg.pObjectName, obj->getNameInDocument()) != 0) {
return false;
}
std::vector<std::string>::iterator f = std::find(refs.begin(), refs.end(), subName);
const auto f = std::ranges::find(refs, subName);
if (selectionMode == refAdd) {
if (f == refs.end())
@@ -234,7 +234,7 @@ bool TaskTransformedParameters::originalSelected(const Gui::SelectionChanges& ms
// Do the same like in TaskDlgTransformedParameters::accept() but without doCommand
std::vector<App::DocumentObject*> originals = pcTransformed->Originals.getValues();
auto or_iter = std::find(originals.begin(), originals.end(), selectedObject);
const auto or_iter = std::ranges::find(originals, selectedObject);
if (selectionMode == SelectionMode::AddFeature) {
if (or_iter == originals.end()) {
originals.push_back(selectedObject);
+26 -26
View File
@@ -578,30 +578,30 @@ void PlyReader::read(const std::string& filename)
// x field
Eigen::Index x = max_size;
it = std::find(fields.begin(), fields.end(), "x");
it = std::ranges::find(fields, "x");
if (it != fields.end()) {
x = std::distance(fields.begin(), it);
}
// y field
Eigen::Index y = max_size;
it = std::find(fields.begin(), fields.end(), "y");
it = std::ranges::find(fields, "y");
if (it != fields.end()) {
y = std::distance(fields.begin(), it);
}
// z field
Eigen::Index z = max_size;
it = std::find(fields.begin(), fields.end(), "z");
it = std::ranges::find(fields, "z");
if (it != fields.end()) {
z = std::distance(fields.begin(), it);
}
// normal x field
Eigen::Index normal_x = max_size;
it = std::find(fields.begin(), fields.end(), "normal_x");
it = std::ranges::find(fields, "normal_x");
if (it == fields.end()) {
it = std::find(fields.begin(), fields.end(), "nx");
it = std::ranges::find(fields, "nx");
}
if (it != fields.end()) {
normal_x = std::distance(fields.begin(), it);
@@ -609,9 +609,9 @@ void PlyReader::read(const std::string& filename)
// normal y field
Eigen::Index normal_y = max_size;
it = std::find(fields.begin(), fields.end(), "normal_y");
it = std::ranges::find(fields, "normal_y");
if (it == fields.end()) {
it = std::find(fields.begin(), fields.end(), "ny");
it = std::ranges::find(fields, "ny");
}
if (it != fields.end()) {
normal_y = std::distance(fields.begin(), it);
@@ -619,9 +619,9 @@ void PlyReader::read(const std::string& filename)
// normal z field
Eigen::Index normal_z = max_size;
it = std::find(fields.begin(), fields.end(), "normal_z");
it = std::ranges::find(fields, "normal_z");
if (it == fields.end()) {
it = std::find(fields.begin(), fields.end(), "nz");
it = std::ranges::find(fields, "nz");
}
if (it != fields.end()) {
normal_z = std::distance(fields.begin(), it);
@@ -629,7 +629,7 @@ void PlyReader::read(const std::string& filename)
// intensity field
Eigen::Index greyvalue = max_size;
it = std::find(fields.begin(), fields.end(), "intensity");
it = std::ranges::find(fields, "intensity");
if (it != fields.end()) {
greyvalue = std::distance(fields.begin(), it);
}
@@ -639,22 +639,22 @@ void PlyReader::read(const std::string& filename)
Eigen::Index green = max_size;
Eigen::Index blue = max_size;
Eigen::Index alpha = max_size;
it = std::find(fields.begin(), fields.end(), "red");
it = std::ranges::find(fields, "red");
if (it != fields.end()) {
red = std::distance(fields.begin(), it);
}
it = std::find(fields.begin(), fields.end(), "green");
it = std::ranges::find(fields, "green");
if (it != fields.end()) {
green = std::distance(fields.begin(), it);
}
it = std::find(fields.begin(), fields.end(), "blue");
it = std::ranges::find(fields, "blue");
if (it != fields.end()) {
blue = std::distance(fields.begin(), it);
}
it = std::find(fields.begin(), fields.end(), "alpha");
it = std::ranges::find(fields, "alpha");
if (it != fields.end()) {
alpha = std::distance(fields.begin(), it);
}
@@ -1068,30 +1068,30 @@ void PcdReader::read(const std::string& filename)
// x field
Eigen::Index x = max_size;
it = std::find(fields.begin(), fields.end(), "x");
it = std::ranges::find(fields, "x");
if (it != fields.end()) {
x = std::distance(fields.begin(), it);
}
// y field
Eigen::Index y = max_size;
it = std::find(fields.begin(), fields.end(), "y");
it = std::ranges::find(fields, "y");
if (it != fields.end()) {
y = std::distance(fields.begin(), it);
}
// z field
Eigen::Index z = max_size;
it = std::find(fields.begin(), fields.end(), "z");
it = std::ranges::find(fields, "z");
if (it != fields.end()) {
z = std::distance(fields.begin(), it);
}
// normal x field
Eigen::Index normal_x = max_size;
it = std::find(fields.begin(), fields.end(), "normal_x");
it = std::ranges::find(fields, "normal_x");
if (it == fields.end()) {
it = std::find(fields.begin(), fields.end(), "nx");
it = std::ranges::find(fields, "nx");
}
if (it != fields.end()) {
normal_x = std::distance(fields.begin(), it);
@@ -1099,9 +1099,9 @@ void PcdReader::read(const std::string& filename)
// normal y field
Eigen::Index normal_y = max_size;
it = std::find(fields.begin(), fields.end(), "normal_y");
it = std::ranges::find(fields, "normal_y");
if (it == fields.end()) {
it = std::find(fields.begin(), fields.end(), "ny");
it = std::ranges::find(fields, "ny");
}
if (it != fields.end()) {
normal_y = std::distance(fields.begin(), it);
@@ -1109,9 +1109,9 @@ void PcdReader::read(const std::string& filename)
// normal z field
Eigen::Index normal_z = max_size;
it = std::find(fields.begin(), fields.end(), "normal_z");
it = std::ranges::find(fields, "normal_z");
if (it == fields.end()) {
it = std::find(fields.begin(), fields.end(), "nz");
it = std::ranges::find(fields, "nz");
}
if (it != fields.end()) {
normal_z = std::distance(fields.begin(), it);
@@ -1119,16 +1119,16 @@ void PcdReader::read(const std::string& filename)
// intensity field
Eigen::Index greyvalue = max_size;
it = std::find(fields.begin(), fields.end(), "intensity");
it = std::ranges::find(fields, "intensity");
if (it != fields.end()) {
greyvalue = std::distance(fields.begin(), it);
}
// rgb(a) field
Eigen::Index rgba = max_size;
it = std::find(fields.begin(), fields.end(), "rgb");
it = std::ranges::find(fields, "rgb");
if (it == fields.end()) {
it = std::find(fields.begin(), fields.end(), "rgba");
it = std::ranges::find(fields, "rgba");
}
if (it != fields.end()) {
rgba = std::distance(fields.begin(), it);
+6 -6
View File
@@ -400,7 +400,7 @@ void ViewProviderScattered::attach(App::DocumentObject* pcObj)
addDisplayMaskMode(pcPointRoot, "Point");
// points shaded ---------------------------------------------
if (std::find(modes.begin(), modes.end(), std::string("Shaded")) != modes.end()) {
if (std::ranges::find(modes, std::string("Shaded")) != modes.end()) {
SoGroup* pcPointShadedRoot = new SoGroup();
pcPointShadedRoot->addChild(pcPointStyle);
pcPointShadedRoot->addChild(pcShapeMaterial);
@@ -410,8 +410,8 @@ void ViewProviderScattered::attach(App::DocumentObject* pcObj)
}
// color shaded ------------------------------------------
if (std::find(modes.begin(), modes.end(), std::string("Color")) != modes.end()
|| std::find(modes.begin(), modes.end(), std::string("Intensity")) != modes.end()) {
if (std::ranges::find(modes, std::string("Color")) != modes.end()
|| std::ranges::find(modes, std::string("Intensity")) != modes.end()) {
SoGroup* pcColorShadedRoot = new SoGroup();
pcColorShadedRoot->addChild(pcPointStyle);
SoMaterialBinding* pcMatBinding = new SoMaterialBinding;
@@ -572,7 +572,7 @@ void ViewProviderStructured::attach(App::DocumentObject* pcObj)
addDisplayMaskMode(pcPointRoot, "Point");
// points shaded ---------------------------------------------
if (std::find(modes.begin(), modes.end(), std::string("Shaded")) != modes.end()) {
if (std::ranges::find(modes, std::string("Shaded")) != modes.end()) {
SoGroup* pcPointShadedRoot = new SoGroup();
pcPointShadedRoot->addChild(pcPointStyle);
pcPointShadedRoot->addChild(pcShapeMaterial);
@@ -582,8 +582,8 @@ void ViewProviderStructured::attach(App::DocumentObject* pcObj)
}
// color shaded ------------------------------------------
if (std::find(modes.begin(), modes.end(), std::string("Color")) != modes.end()
|| std::find(modes.begin(), modes.end(), std::string("Intensity")) != modes.end()) {
if (std::ranges::find(modes, std::string("Color")) != modes.end()
|| std::ranges::find(modes, std::string("Intensity")) != modes.end()) {
SoGroup* pcColorShadedRoot = new SoGroup();
pcColorShadedRoot->addChild(pcPointStyle);
SoMaterialBinding* pcMatBinding = new SoMaterialBinding;
+4 -6
View File
@@ -332,14 +332,12 @@ Sketcher::GeoElementId GeoListModel<T>::getGeoElementIdFromVertexId(int vertexId
template<typename T>
int GeoListModel<T>::getVertexIdFromGeoElementId(const Sketcher::GeoElementId& geoelementId) const
{
if (!indexInit) { // lazy initialised
rebuildVertexIndex();
if (!indexInit) {
rebuildVertexIndex(); // lazy initialised
}
auto found =
std::find(VertexId2GeoElementId.begin(), VertexId2GeoElementId.end(), geoelementId);
if (found != VertexId2GeoElementId.end()) {
if (const auto found = std::ranges::find(VertexId2GeoElementId, geoelementId);
found != VertexId2GeoElementId.end()) {
return std::distance(found, VertexId2GeoElementId.begin());
}
+9 -17
View File
@@ -361,9 +361,7 @@ void Sketch::fixParametersAndDiagnose(std::vector<double*>& params_to_block)
{
if (!params_to_block.empty()) { // only there are parameters to fix
for (auto p : params_to_block) {
auto findparam = std::find(Parameters.begin(), Parameters.end(), p);
if (findparam != Parameters.end()) {
if (auto findparam = std::ranges::find(Parameters, p); findparam != Parameters.end()) {
FixParameters.push_back(*findparam);
Parameters.erase(findparam);
}
@@ -419,15 +417,11 @@ bool Sketch::analyseBlockedConstraintDependentParameters(
double* thisparam = *std::next(groups[i].begin(), j);
auto element = param2geoelement.find(thisparam);
if (auto element = param2geoelement.find(thisparam);
element != param2geoelement.end()) {
if (element != param2geoelement.end()) {
auto blockable = std::find(blockedGeoIds.begin(),
blockedGeoIds.end(),
std::get<0>(element->second));
if (blockable != blockedGeoIds.end()) {
if (auto blockable = std::ranges::find(blockedGeoIds, std::get<0>(element->second));
blockable != blockedGeoIds.end()) {
// This dependent parameter group contains at least one parameter that should be
// blocked, so added to the blockable list.
prop_groups[i].blockable_params_in_group.push_back(thisparam);
@@ -442,7 +436,7 @@ bool Sketch::analyseBlockedConstraintDependentParameters(
for (size_t j = prop_groups[i].blockable_params_in_group.size(); j-- > 0;) {
// check if parameter is already satisfying one group
double* thisparam = prop_groups[i].blockable_params_in_group[j];
auto pos = std::find(params_to_block.begin(), params_to_block.end(), thisparam);
auto pos = std::ranges::find(params_to_block, thisparam);
if (pos == params_to_block.end()) { // not found, so add
params_to_block.push_back(thisparam);
@@ -2959,7 +2953,7 @@ int Sketch::addTangentLineAtBSplineKnotConstraint(int checkedlinegeoId,
size_t knotindex = b.knots.size();
auto knotIt = std::find(b.knotpointGeoids.begin(), b.knotpointGeoids.end(), checkedknotgeoid);
const auto knotIt = std::ranges::find(b.knotpointGeoids, checkedknotgeoid);
knotindex = std::distance(b.knotpointGeoids.begin(), knotIt);
@@ -3012,7 +3006,7 @@ int Sketch::addTangentLineEndpointAtBSplineKnotConstraint(int checkedlinegeoId,
size_t knotindex = b.knots.size();
auto knotIt = std::find(b.knotpointGeoids.begin(), b.knotpointGeoids.end(), checkedknotgeoid);
auto knotIt = std::ranges::find(b.knotpointGeoids, checkedknotgeoid);
knotindex = std::distance(b.knotpointGeoids.begin(), knotIt);
@@ -4570,9 +4564,7 @@ bool Sketch::updateNonDrivingConstraints()
rad = a.rad;
}
auto pos = std::find(FixParameters.begin(), FixParameters.end(), rad);
if (pos != FixParameters.end()) {
if (auto pos = std::ranges::find(FixParameters, rad); pos != FixParameters.end()) {
(*it).constr->setValue(*((*it).value));
}
else {
+10 -11
View File
@@ -1846,7 +1846,7 @@ int SketchObject::delGeometries(InputIt first, InputIt last)
// if a GeoId has internal geometry, it must delete internal geometries too
for (auto c : Constraints.getValues()) {
if (c->Type == InternalAlignment) {
auto pos = std::find(sGeoIds.begin(), sGeoIds.end(), c->Second);
auto pos = std::ranges::find(sGeoIds, c->Second);
if (pos != sGeoIds.end()) {
sGeoIds.push_back(c->First);
@@ -1854,7 +1854,7 @@ int SketchObject::delGeometries(InputIt first, InputIt last)
}
}
std::sort(sGeoIds.begin(), sGeoIds.end());
std::ranges::sort(sGeoIds);
// eliminate duplicates
auto newend = std::unique(sGeoIds.begin(), sGeoIds.end());
sGeoIds.resize(std::distance(sGeoIds.begin(), newend));
@@ -1866,7 +1866,7 @@ int SketchObject::delGeometriesExclusiveList(const std::vector<int>& GeoIds)
{
std::vector<int> sGeoIds(GeoIds);
std::sort(sGeoIds.begin(), sGeoIds.end());
std::ranges::sort(sGeoIds);
if (sGeoIds.empty())
return 0;
@@ -4925,7 +4925,7 @@ std::vector<Part::Geometry*> SketchObject::getSymmetric(const std::vector<int>&
}
}
// Return true if definedGeo is in geoIdList, false otherwise
return std::find(geoIdList.begin(), geoIdList.end(), definedGeo) != geoIdList.end();
return std::ranges::find(geoIdList, definedGeo) != geoIdList.end();
}
// Return true if not internal aligned, indicating it should always be copied
return true;
@@ -5358,8 +5358,7 @@ int SketchObject::addCopy(const std::vector<int>& geoIdList, const Base::Vector3
}
}
if (std::find(newgeoIdList.begin(), newgeoIdList.end(), definedGeo)
== newgeoIdList.end()) {
if (std::ranges::find(newgeoIdList, definedGeo) == newgeoIdList.end()) {
// the first element setting the reference is an internal alignment
// geometry, wherein the geometry it defines is not part of the copy
// operation.
@@ -5414,7 +5413,7 @@ int SketchObject::addCopy(const std::vector<int>& geoIdList, const Base::Vector3
}
}
if (std::find(newgeoIdList.begin(), newgeoIdList.end(), definedGeo)
if (std::ranges::find(newgeoIdList, definedGeo)
== newgeoIdList.end()) {
// we should not copy internal alignment geometry, unless the element they
// define is also mirrored
@@ -7184,7 +7183,7 @@ bool SketchObject::modifyBSplineKnotMultiplicity(int GeoId, int knotIndex, int m
indexInNew[Sketcher::BSplineKnotPoint].reserve(knots.size());
for (const auto& pole : poles) {
const auto it = std::find(newPoles.begin(), newPoles.end(), pole);
const auto it = std::ranges::find(newPoles, pole);
indexInNew[Sketcher::BSplineControlPoint].emplace_back(it - newPoles.begin());
}
std::replace(indexInNew[Sketcher::BSplineControlPoint].begin(),
@@ -7193,7 +7192,7 @@ bool SketchObject::modifyBSplineKnotMultiplicity(int GeoId, int knotIndex, int m
-1);
for (const auto& knot : knots) {
const auto it = std::find(newKnots.begin(), newKnots.end(), knot);
const auto it = std::ranges::find(newKnots, knot);
indexInNew[Sketcher::BSplineKnotPoint].emplace_back(it - newKnots.begin());
}
std::replace(indexInNew[Sketcher::BSplineKnotPoint].begin(),
@@ -7319,7 +7318,7 @@ bool SketchObject::insertBSplineKnot(int GeoId, double param, int multiplicity)
std::vector<int> poleIndexInNew(poles.size(), -1);
for (size_t j = 0; j < poles.size(); j++) {
const auto it = std::find(newPoles.begin(), newPoles.end(), poles[j]);
const auto it = std::ranges::find(newPoles, poles[j]);
poleIndexInNew[j] = it - newPoles.begin();
}
std::replace(poleIndexInNew.begin(), poleIndexInNew.end(), int(newPoles.size()), -1);
@@ -7329,7 +7328,7 @@ bool SketchObject::insertBSplineKnot(int GeoId, double param, int multiplicity)
std::vector<int> knotIndexInNew(knots.size(), -1);
for (size_t j = 0; j < knots.size(); j++) {
const auto it = std::find(newKnots.begin(), newKnots.end(), knots[j]);
const auto it = std::ranges::find(newKnots, knots[j]);
knotIndexInNew[j] = it - newKnots.begin();
}
std::replace(knotIndexInNew.begin(), knotIndexInNew.end(), int(newKnots.size()), -1);
+163 -243
View File
@@ -574,7 +574,7 @@ int System::addConstraint(Constraint* constr)
void System::removeConstraint(Constraint* constr)
{
std::vector<Constraint*>::iterator it;
it = std::find(clist.begin(), clist.end(), constr);
it = std::ranges::find(clist, constr);
if (it == clist.end()) {
return;
}
@@ -589,7 +589,7 @@ void System::removeConstraint(Constraint* constr)
for (VEC_pD::const_iterator param = constr_params.begin(); param != constr_params.end();
++param) {
std::vector<Constraint*>& constraints = p2c[*param];
it = std::find(constraints.begin(), constraints.end(), constr);
it = std::ranges::find(constraints, constr);
constraints.erase(it);
}
c2p.erase(constr);
@@ -2588,7 +2588,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
int ips = 0;
for (VEC_pD::iterator it = plistout.begin(); it != plistout.end(); ++it, ++ips) {
VEC_pD::iterator p = std::find(plist.begin(), plist.end(), (*it));
VEC_pD::iterator p = std::ranges::find(plist, (*it));
size_t p_index = std::distance(plist.begin(), p);
if (p_index == plist.size()) {
@@ -2605,14 +2605,13 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
switch ((*it)->getTypeId()) {
case Equal: { // 2
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -2630,8 +2629,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -2656,16 +2654,15 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case Difference: { // 3
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -2683,8 +2680,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -2702,8 +2698,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -2730,11 +2725,11 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case P2PDistance: { // 5
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -2742,8 +2737,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i5 = std::distance(plist.begin(), p5);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -2761,8 +2755,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -2780,8 +2773,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -2799,8 +2791,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -2818,8 +2809,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -2862,11 +2852,11 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case P2PAngle: { // 5
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -2874,8 +2864,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i5 = std::distance(plist.begin(), p5);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -2893,8 +2882,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -2912,8 +2900,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -2931,8 +2918,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -2950,8 +2936,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -2994,13 +2979,13 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case P2LDistance: { // 7
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p7 = std::find(plist.begin(), plist.end(), (*it)->pvec[6]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
VEC_pD::iterator p7 = std::ranges::find(plist, (*it)->pvec[6]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -3010,8 +2995,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i7 = std::distance(plist.begin(), p7);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -3029,8 +3013,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -3048,8 +3031,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -3067,8 +3049,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -3086,8 +3067,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -3105,8 +3085,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -3124,8 +3103,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb7 = false;
VEC_pD::iterator np7 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[6]);
VEC_pD::iterator np7 = std::ranges::find(clist_params_, (*it)->pvec[6]);
size_t ni7 = std::distance(clist_params_.begin(), np7);
if (i7 == plist.size()) {
@@ -3175,12 +3153,12 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case PointOnLine: { // 6
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -3189,8 +3167,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i6 = std::distance(plist.begin(), p6);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -3208,8 +3185,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -3227,8 +3203,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -3246,8 +3221,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -3265,8 +3239,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -3284,8 +3257,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -3331,12 +3303,12 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case PointOnPerpBisector: { // 6
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -3345,8 +3317,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i6 = std::distance(plist.begin(), p6);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -3364,8 +3335,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -3383,8 +3353,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -3402,8 +3371,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -3421,8 +3389,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -3440,8 +3407,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -3487,14 +3453,14 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case Parallel: { // 8
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p7 = std::find(plist.begin(), plist.end(), (*it)->pvec[6]);
VEC_pD::iterator p8 = std::find(plist.begin(), plist.end(), (*it)->pvec[7]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
VEC_pD::iterator p7 = std::ranges::find(plist, (*it)->pvec[6]);
VEC_pD::iterator p8 = std::ranges::find(plist, (*it)->pvec[7]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -3505,8 +3471,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i8 = std::distance(plist.begin(), p8);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -3524,8 +3489,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -3543,8 +3507,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -3562,8 +3525,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -3581,8 +3543,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -3600,8 +3561,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -3619,8 +3579,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb7 = false;
VEC_pD::iterator np7 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[6]);
VEC_pD::iterator np7 = std::ranges::find(clist_params_, (*it)->pvec[6]);
size_t ni7 = std::distance(clist_params_.begin(), np7);
if (i7 == plist.size()) {
@@ -3638,8 +3597,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb8 = false;
VEC_pD::iterator np8 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[7]);
VEC_pD::iterator np8 = std::ranges::find(clist_params_, (*it)->pvec[7]);
size_t ni8 = std::distance(clist_params_.begin(), np8);
if (i8 == plist.size()) {
@@ -3692,14 +3650,14 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case Perpendicular: { // 8
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p7 = std::find(plist.begin(), plist.end(), (*it)->pvec[6]);
VEC_pD::iterator p8 = std::find(plist.begin(), plist.end(), (*it)->pvec[7]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
VEC_pD::iterator p7 = std::ranges::find(plist, (*it)->pvec[6]);
VEC_pD::iterator p8 = std::ranges::find(plist, (*it)->pvec[7]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -3710,8 +3668,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i8 = std::distance(plist.begin(), p8);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -3729,8 +3686,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -3748,8 +3704,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -3767,8 +3722,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -3786,8 +3740,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -3805,8 +3758,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -3824,8 +3776,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb7 = false;
VEC_pD::iterator np7 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[6]);
VEC_pD::iterator np7 = std::ranges::find(clist_params_, (*it)->pvec[6]);
size_t ni7 = std::distance(clist_params_.begin(), np7);
if (i7 == plist.size()) {
@@ -3843,8 +3794,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb8 = false;
VEC_pD::iterator np8 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[7]);
VEC_pD::iterator np8 = std::ranges::find(clist_params_, (*it)->pvec[7]);
size_t ni8 = std::distance(clist_params_.begin(), np8);
if (i8 == plist.size()) {
@@ -3897,15 +3847,15 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case L2LAngle: { // 9
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p7 = std::find(plist.begin(), plist.end(), (*it)->pvec[6]);
VEC_pD::iterator p8 = std::find(plist.begin(), plist.end(), (*it)->pvec[7]);
VEC_pD::iterator p9 = std::find(plist.begin(), plist.end(), (*it)->pvec[8]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
VEC_pD::iterator p7 = std::ranges::find(plist, (*it)->pvec[6]);
VEC_pD::iterator p8 = std::ranges::find(plist, (*it)->pvec[7]);
VEC_pD::iterator p9 = std::ranges::find(plist, (*it)->pvec[8]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -3917,8 +3867,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i9 = std::distance(plist.begin(), p9);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -3936,8 +3885,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -3955,8 +3903,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -3974,8 +3921,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -3993,8 +3939,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -4012,8 +3957,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -4031,8 +3975,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb7 = false;
VEC_pD::iterator np7 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[6]);
VEC_pD::iterator np7 = std::ranges::find(clist_params_, (*it)->pvec[6]);
size_t ni7 = std::distance(clist_params_.begin(), np7);
if (i7 == plist.size()) {
@@ -4050,8 +3993,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb8 = false;
VEC_pD::iterator np8 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[7]);
VEC_pD::iterator np8 = std::ranges::find(clist_params_, (*it)->pvec[7]);
size_t ni8 = std::distance(clist_params_.begin(), np8);
if (i8 == plist.size()) {
@@ -4069,8 +4011,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb9 = false;
VEC_pD::iterator np9 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[8]);
VEC_pD::iterator np9 = std::ranges::find(clist_params_, (*it)->pvec[8]);
size_t ni9 = std::distance(clist_params_.begin(), np9);
if (i9 == plist.size()) {
@@ -4126,14 +4067,14 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case MidpointOnLine: { // 8
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p7 = std::find(plist.begin(), plist.end(), (*it)->pvec[6]);
VEC_pD::iterator p8 = std::find(plist.begin(), plist.end(), (*it)->pvec[7]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
VEC_pD::iterator p7 = std::ranges::find(plist, (*it)->pvec[6]);
VEC_pD::iterator p8 = std::ranges::find(plist, (*it)->pvec[7]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -4144,8 +4085,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i8 = std::distance(plist.begin(), p8);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -4163,8 +4103,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -4182,8 +4121,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -4201,8 +4139,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -4220,8 +4157,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -4239,8 +4175,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -4258,8 +4193,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb7 = false;
VEC_pD::iterator np7 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[6]);
VEC_pD::iterator np7 = std::ranges::find(clist_params_, (*it)->pvec[6]);
size_t ni7 = std::distance(clist_params_.begin(), np7);
if (i7 == plist.size()) {
@@ -4277,8 +4211,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb8 = false;
VEC_pD::iterator np8 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[7]);
VEC_pD::iterator np8 = std::ranges::find(clist_params_, (*it)->pvec[7]);
size_t ni8 = std::distance(clist_params_.begin(), np8);
if (i8 == plist.size()) {
@@ -4331,12 +4264,12 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case TangentCircumf: { // 6
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -4345,8 +4278,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i6 = std::distance(plist.begin(), p6);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -4364,8 +4296,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -4383,8 +4314,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -4402,8 +4332,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -4421,8 +4350,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -4440,8 +4368,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -4491,13 +4418,13 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
break;
}
case PointOnEllipse: { // 7
VEC_pD::iterator p1 = std::find(plist.begin(), plist.end(), (*it)->pvec[0]);
VEC_pD::iterator p2 = std::find(plist.begin(), plist.end(), (*it)->pvec[1]);
VEC_pD::iterator p3 = std::find(plist.begin(), plist.end(), (*it)->pvec[2]);
VEC_pD::iterator p4 = std::find(plist.begin(), plist.end(), (*it)->pvec[3]);
VEC_pD::iterator p5 = std::find(plist.begin(), plist.end(), (*it)->pvec[4]);
VEC_pD::iterator p6 = std::find(plist.begin(), plist.end(), (*it)->pvec[5]);
VEC_pD::iterator p7 = std::find(plist.begin(), plist.end(), (*it)->pvec[6]);
VEC_pD::iterator p1 = std::ranges::find(plist, (*it)->pvec[0]);
VEC_pD::iterator p2 = std::ranges::find(plist, (*it)->pvec[1]);
VEC_pD::iterator p3 = std::ranges::find(plist, (*it)->pvec[2]);
VEC_pD::iterator p4 = std::ranges::find(plist, (*it)->pvec[3]);
VEC_pD::iterator p5 = std::ranges::find(plist, (*it)->pvec[4]);
VEC_pD::iterator p6 = std::ranges::find(plist, (*it)->pvec[5]);
VEC_pD::iterator p7 = std::ranges::find(plist, (*it)->pvec[6]);
size_t i1 = std::distance(plist.begin(), p1);
size_t i2 = std::distance(plist.begin(), p2);
size_t i3 = std::distance(plist.begin(), p3);
@@ -4507,8 +4434,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
size_t i7 = std::distance(plist.begin(), p7);
bool npb1 = false;
VEC_pD::iterator np1 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[0]);
VEC_pD::iterator np1 = std::ranges::find(clist_params_, (*it)->pvec[0]);
size_t ni1 = std::distance(clist_params_.begin(), np1);
if (i1 == plist.size()) {
@@ -4526,8 +4452,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb2 = false;
VEC_pD::iterator np2 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[1]);
VEC_pD::iterator np2 = std::ranges::find(clist_params_, (*it)->pvec[1]);
size_t ni2 = std::distance(clist_params_.begin(), np2);
if (i2 == plist.size()) {
@@ -4545,8 +4470,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb3 = false;
VEC_pD::iterator np3 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[2]);
VEC_pD::iterator np3 = std::ranges::find(clist_params_, (*it)->pvec[2]);
size_t ni3 = std::distance(clist_params_.begin(), np3);
if (i3 == plist.size()) {
@@ -4564,8 +4488,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb4 = false;
VEC_pD::iterator np4 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[3]);
VEC_pD::iterator np4 = std::ranges::find(clist_params_, (*it)->pvec[3]);
size_t ni4 = std::distance(clist_params_.begin(), np4);
if (i4 == plist.size()) {
@@ -4583,8 +4506,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb5 = false;
VEC_pD::iterator np5 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[4]);
VEC_pD::iterator np5 = std::ranges::find(clist_params_, (*it)->pvec[4]);
size_t ni5 = std::distance(clist_params_.begin(), np5);
if (i5 == plist.size()) {
@@ -4602,8 +4524,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb6 = false;
VEC_pD::iterator np6 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[5]);
VEC_pD::iterator np6 = std::ranges::find(clist_params_, (*it)->pvec[5]);
size_t ni6 = std::distance(clist_params_.begin(), np6);
if (i6 == plist.size()) {
@@ -4621,8 +4542,7 @@ void System::extractSubsystem(SubSystem* subsys, bool isRedundantsolving)
}
bool npb7 = false;
VEC_pD::iterator np7 =
std::find(clist_params_.begin(), clist_params_.end(), (*it)->pvec[6]);
VEC_pD::iterator np7 = std::ranges::find(clist_params_, (*it)->pvec[6]);
size_t ni7 = std::distance(clist_params_.begin(), np7);
if (i7 == plist.size()) {
+8 -9
View File
@@ -607,16 +607,15 @@ void CmdSketcherMapSketch::activated(int iMsg)
* in its own outlist, so we remove it from the dialog list proactively
* rather than wait and generate an error after the fact.
*/
auto newEnd = std::remove_if(sketches.begin(), sketches.end(),
const auto newEnd = std::ranges::remove_if(sketches,
[&selectedSketches, &sketchInSelection](App::DocumentObject* obj) {
Part::Part2DObject* sketch = dynamic_cast<Part::Part2DObject*>(obj);
if (sketch && std::find(selectedSketches.begin(),
selectedSketches.end(), sketch) != selectedSketches.end()) {
if (const auto sketch = dynamic_cast<Part::Part2DObject*>(obj);
sketch && std::ranges::find(selectedSketches, sketch) != selectedSketches.end()) {
sketchInSelection = true;
return true;
}
return false;
});
}).begin();
sketches.erase(newEnd, sketches.end());
if (sketches.empty()) {
@@ -665,8 +664,8 @@ void CmdSketcherMapSketch::activated(int iMsg)
throw Base::ValueError(
"Unexpected null pointer in CmdSketcherMapSketch::activated");
}
std::vector<App::DocumentObject*> input = part->getOutListRecursive();
if (std::find(input.begin(), input.end(), sketch) != input.end()) {
if (std::vector<App::DocumentObject*> input = part->getOutListRecursive();
std::ranges::find(input, sketch) != input.end()) {
throw ExceptionWrongInput(
QT_TR_NOOP("Some of the selected objects depend on the sketch to be mapped. "
"Circular dependencies are not allowed."));
@@ -685,9 +684,9 @@ void CmdSketcherMapSketch::activated(int iMsg)
bool bAttach = true;
bool bCurIncompatible = false;
// * find out the modes that are compatible with selection.
eMapMode curMapMode = eMapMode(sketch->MapMode.getValue());
const auto curMapMode = eMapMode(sketch->MapMode.getValue());
// * Test if current mode is OK.
if (std::find(validModes.begin(), validModes.end(), curMapMode) == validModes.end())
if (std::ranges::find(validModes, curMapMode) == validModes.end())
bCurIncompatible = true;
// * fill in the dialog
@@ -112,14 +112,14 @@ std::vector<int> getListOfSelectedGeoIds(bool forceInternalSelection)
}
if (forceInternalSelection) {
size_t loopSize = listOfGeoIds.size();
const size_t loopSize = listOfGeoIds.size();
for (size_t i = 0; i < loopSize; i++) {
const Part::Geometry* geo = Obj->getGeometry(listOfGeoIds[i]);
if (isEllipse(*geo) || isArcOfEllipse(*geo) || isArcOfHyperbola(*geo) || isArcOfParabola(*geo) || isBSplineCurve(*geo)) {
const std::vector<Sketcher::Constraint*>& constraints = Obj->Constraints.getValues();
for (auto constr : constraints) {
for (const auto constr : constraints) {
if (constr->Type == InternalAlignment && constr->Second == listOfGeoIds[i]) {
if (std::find(listOfGeoIds.begin(), listOfGeoIds.end(), constr->First) == listOfGeoIds.end()) {
if (std::ranges::find(listOfGeoIds, constr->First) == listOfGeoIds.end()) {
// If the value is not found, add it to the vector
listOfGeoIds.push_back(constr->First);
}
@@ -171,7 +171,7 @@ bool copySelectionToClipboard(Sketcher::SketchObject* obj) {
for (auto constr : obj->Constraints.getValues()) {
auto isSelectedGeoOrAxis = [](const std::vector<int>& vec, int value) {
return (std::find(vec.begin(), vec.end(), value) != vec.end())
return (std::ranges::find(vec, value) != vec.end())
|| value == GeoEnum::GeoUndef || value == GeoEnum::RtPnt
|| value == GeoEnum::VAxis || value == GeoEnum::HAxis;
};
+3 -4
View File
@@ -582,13 +582,12 @@ void EditModeCoinManager::drawEditMarkers(const std::vector<Base::Vector2d>& Edi
auto supportedsizes = Gui::Inventor::MarkerBitmaps::getSupportedSizes("CIRCLE_LINE");
auto defaultmarker =
std::find(supportedsizes.begin(), supportedsizes.end(), drawingParameters.markerSize);
const auto defaultmarker = std::ranges::find(supportedsizes, drawingParameters.markerSize);
if (defaultmarker != supportedsizes.end()) {
auto validAugmentationLevels = std::distance(defaultmarker, supportedsizes.end());
if (augmentationlevel >= validAugmentationLevels) {
if (const auto validAugmentationLevels = std::distance(defaultmarker, supportedsizes.end());
augmentationlevel >= validAugmentationLevels) {
augmentationlevel = validAugmentationLevels - 1;
}
@@ -537,10 +537,9 @@ struct CoinMapping
{
for (size_t l = 0; l < PointIdToVertexId.size(); l++) {
auto indexit =
std::find(PointIdToVertexId[l].begin(), PointIdToVertexId[l].end(), vertexId);
if (indexit != PointIdToVertexId[l].end()) {
if (auto indexit = std::ranges::find(PointIdToVertexId[l], vertexId);
indexit != PointIdToVertexId[l].end()) {
return MultiFieldId(std::distance(PointIdToVertexId[l].begin(), indexit), l);
}
}
+1 -2
View File
@@ -87,8 +87,7 @@ TaskDlgEditSketch::~TaskDlgEditSketch()
{
// to make sure to delete the advanced solver panel
// it must be part to the 'Content' array
std::vector<QWidget*>::iterator it = std::find(Content.begin(), Content.end(), SolverAdvanced);
if (it == Content.end()) {
if (const auto it = std::ranges::find(Content, SolverAdvanced); it == Content.end()) {
Content.push_back(SolverAdvanced);
}
@@ -1103,7 +1103,7 @@ void TaskSketcherConstraints::changeFilteredVisibility(bool show, ActionTarget t
processItem = !item->isHidden();
}
else if (target == ActionTarget::Selected) {
if (std::find(selecteditems.begin(), selecteditems.end(), item) != selecteditems.end())
if (std::ranges::find(selecteditems, item) != selecteditems.end())
processItem = true;
}
@@ -1653,13 +1653,10 @@ bool TaskSketcherConstraints::isConstraintFiltered(QListWidgetItem* item)
// Then we re-filter based on selected/associated if such mode selected.
if (visible && specialFilterMode == SpecialFilterType::Selected) {
visible = (std::find(selectionFilter.begin(), selectionFilter.end(), it->ConstraintNbr)
!= selectionFilter.end());
visible = (std::ranges::find(selectionFilter, it->ConstraintNbr) != selectionFilter.end());
}
else if (visible && specialFilterMode == SpecialFilterType::Associated) {
visible = (std::find(associatedConstraintsFilter.begin(),
associatedConstraintsFilter.end(),
it->ConstraintNbr)
visible = (std::ranges::find(associatedConstraintsFilter, it->ConstraintNbr)
!= associatedConstraintsFilter.end());
}
}
+3 -4
View File
@@ -1275,7 +1275,7 @@ void ViewProviderSketch::toggleWireSelelection(int clickedGeoId)
while (partHasBeenAdded) {
partHasBeenAdded = false;
for (int geoId = 0; geoId <= obj->getHighestCurveIndex(); geoId++) {
if (geoId == clickedGeoId || std::find(connectedEdges.begin(), connectedEdges.end(), geoId) != connectedEdges.end()) {
if (geoId == clickedGeoId || std::ranges::find(connectedEdges, geoId) != connectedEdges.end()) {
continue;
}
@@ -2711,10 +2711,9 @@ void ViewProviderSketch::scaleBSplinePoleCirclesAndUpdateSolverAndSketchObjectGe
for (auto ic : getSketchObject()->Constraints.getValues()) {
if (ic->Type == Weight) {
auto pos = std::find(
polegeoids.begin(), polegeoids.end(), ic->First);
if (pos != polegeoids.end()) {
if (auto pos = std::ranges::find(polegeoids, ic->First);
pos != polegeoids.end()) {
vradius = ic->getValue() * scalefactor;
break;// one is enough, otherwise it would not be
// non-rational
+3 -4
View File
@@ -116,10 +116,9 @@ std::pair<int, int> DrawTemplate::getPageNumbers() const
std::sort(pageNames.begin(), pageNames.end(), collator);
int pos = 0;
DrawPage *page = getParentPage();
if (page) {
auto it = std::find(pageNames.begin(), pageNames.end(), QString::fromUtf8(page->Label.getValue()));
if (it != pageNames.end()) {
if (const DrawPage* page = getParentPage()) {
if (const auto it = std::ranges::find(pageNames, QString::fromUtf8(page->Label.getValue()));
it != pageNames.end()) {
pos = it - pageNames.begin() + 1;
}
}
+2 -2
View File
@@ -331,7 +331,7 @@ std::string DrawViewSpreadsheet::getSheetImage()
cell->getAlignment(alignment);
}
// skip cell if found in skiplist
if (std::find(skiplist.begin(), skiplist.end(), address.toString()) == skiplist.end()) {
if (std::ranges::find(skiplist, address.toString()) == skiplist.end()) {
result << " <rect x=\"" << coloffset << "\" y=\"" << rowoffset << "\" width=\""
<< cellwidth << "\" height=\"" << cellheight << "\" style=\"fill:" << bcolor
<< ";stroke-width:" << LineWidth.getValue() / getScale()
@@ -388,7 +388,7 @@ std::string DrawViewSpreadsheet::getSheetImage()
int DrawViewSpreadsheet::colInList(const std::vector<std::string>& list,
const std::string& toFind)
{
auto match = std::find(std::begin(list), std::end(list), toFind);
const auto match = std::ranges::find(list, toFind);
if (match == std::end(list)) {
return -1; // Error value
}
+1 -2
View File
@@ -126,8 +126,7 @@ void CmdTechDrawHatch::activated(int iMsg)
std::vector<std::string> hatchSubs = h->Source.getSubValues();
for (auto& hs: hatchSubs) { //all the Faces in this hatch object
int hatchFace = TechDraw::DrawUtil::getIndexFromName(hs);
std::vector<int>::iterator it = std::find(selFaces.begin(), selFaces.end(), hatchFace);
if (it != selFaces.end()) {
if (auto it = std::ranges::find(selFaces, hatchFace); it != selFaces.end()) {
std::pair< int, TechDraw::DrawHatch*> removeItem;
removeItem.first = hatchFace;
removeItem.second = h;
+1 -1
View File
@@ -990,7 +990,7 @@ std::vector<T> QGIView::getObjects(std::vector<int> indexes)
T object = static_cast<T>(child);
int target = object->getProjIndex();
// If child item's index in indexes, then add to results
if (std::find(indexes.begin(), indexes.end(), target) != indexes.end()) {
if (std::ranges::find(indexes, target) != indexes.end()) {
result.push_back(object);
}
}
+2 -2
View File
@@ -146,8 +146,8 @@ void QGIViewClip::drawClip()
for (; it != qgItems.end(); it++) {
QGIView* qv = dynamic_cast<QGIView*>((*it));
if (qv) {
std::string qvName = std::string(qv->getViewName());
if (std::find(childNames.begin(), childNames.end(), qvName) == childNames.end()) {
if (auto qvName = std::string(qv->getViewName());
std::ranges::find(childNames, qvName) == childNames.end()) {
m_cliparea->removeFromGroup(qv);
removeFromGroup(qv);
qv->isInnerView(false);