Assembly: Solver message taskbox. UI setup, App not implemented yet. (#23420)

* Assembly: Solver message taskbox. UI setup, App not implemented yet.

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update TaskAssemblyMessages.cpp

* Update ViewProviderAssembly.cpp

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
PaddleStroke
2025-09-01 23:29:06 +02:00
committed by GitHub
parent 24a6d59ca8
commit e40e01b039
9 changed files with 408 additions and 2 deletions

View File

@@ -25,6 +25,7 @@
#ifndef ASSEMBLY_AssemblyObject_H
#define ASSEMBLY_AssemblyObject_H
#include <boost/signals2.hpp>
#include <Mod/Assembly/AssemblyGlobal.h>
@@ -193,6 +194,51 @@ public:
bool isMbDJointValid(App::DocumentObject* joint);
bool isEmpty() const;
int numberOfComponents() const;
inline int getLastDoF() const
{
return lastDoF;
}
inline bool getLastHasConflicts() const
{
return lastHasConflict;
}
inline bool getLastHasRedundancies() const
{
return lastHasRedundancies;
}
inline bool getLastHasPartialRedundancies() const
{
return lastHasPartialRedundancies;
}
inline bool getLastHasMalformedConstraints() const
{
return lastHasMalformedConstraints;
}
inline int getLastSolverStatus() const
{
return lastSolverStatus;
}
inline const std::vector<int>& getLastConflicting() const
{
return lastConflicting;
}
inline const std::vector<int>& getLastRedundant() const
{
return lastRedundant;
}
inline const std::vector<int>& getLastPartiallyRedundant() const
{
return lastPartiallyRedundant;
}
inline const std::vector<int>& getLastMalformedConstraints() const
{
return lastMalformedConstraints;
}
boost::signals2::signal<void()> signalSolverUpdate;
private:
std::shared_ptr<MbD::ASMTAssembly> mbdAssembly;
@@ -204,6 +250,18 @@ private:
std::vector<std::pair<App::DocumentObject*, Base::Placement>> previousPositions;
bool bundleFixed;
int lastDoF;
bool lastHasConflict;
bool lastHasRedundancies;
bool lastHasPartialRedundancies;
bool lastHasMalformedConstraints;
int lastSolverStatus;
std::vector<int> lastConflicting;
std::vector<int> lastRedundant;
std::vector<int> lastPartiallyRedundant;
std::vector<int> lastMalformedConstraints;
};
} // namespace Assembly