[TD]throttle over aggressive dimension autocorrect

This commit is contained in:
wandererfan
2024-10-11 20:35:53 -04:00
committed by Yorik van Havre
parent 37e021edd4
commit 9f7e50e4ce
4 changed files with 24 additions and 19 deletions

View File

@@ -457,7 +457,7 @@ short DrawViewDimension::mustExecute() const
App::DocumentObjectExecReturn* DrawViewDimension::execute()
{
if (!okToProceed()) {
// if we set an error here, it will be triggering many times during
// if we set an error here, it will be triggered many times during
// document load.
return DrawView::execute();
}
@@ -467,10 +467,10 @@ App::DocumentObjectExecReturn* DrawViewDimension::execute()
m_referencesCorrect = autocorrectReferences();
}
if (!m_referencesCorrect) {
return new App::DocumentObjectExecReturn("Autocorrect failed to fix broken references", this);
// this test needs Phase 2 of auto correct to be useful
Base::Console().Log("The references for %s have changed and autocorrect could not match the geometry\n", Label.getValue());
}
// references are good, we can proceed
resetLinear();
resetAngular();
resetArc();
@@ -1677,7 +1677,7 @@ pointPair DrawViewDimension::closestPoints(TopoDS_Shape s1, TopoDS_Shape s2) con
}
// set the reference property from a reference vector
void DrawViewDimension::setReferences2d(ReferenceVector refsAll)
void DrawViewDimension::setReferences2d(const ReferenceVector& refsAll)
{
// Base::Console().Message("DVD::setReferences2d(%d)\n", refs.size());
std::vector<App::DocumentObject*> objects;
@@ -1692,10 +1692,11 @@ void DrawViewDimension::setReferences2d(ReferenceVector refsAll)
}
References2D.setValues(objects, subNames);
m_referencesCorrect = true;
}
// set the reference property from a reference vector
void DrawViewDimension::setReferences3d(ReferenceVector refsAll)
void DrawViewDimension::setReferences3d(const ReferenceVector &refsAll)
{
// Base::Console().Message("DVD::setReferences3d()\n");
if (refsAll.empty() && !References3D.getValues().empty()) {
@@ -1726,6 +1727,7 @@ void DrawViewDimension::setReferences3d(ReferenceVector refsAll)
}
References3D.setValues(objects, subNames);
m_referencesCorrect = true;
}
//! add Dimension 3D references to measurement