[TD]Refactor Dimensions for 3d upgrade

- separate validation, geometry and reference handling into
  individual files
- improve 3d reference geometry handling
- eliminate duplicate dim creation code

- add Dimension reference repair dialog

- Refactor formatting out of DrawViewDimension

- move dimension repaint control to ViewProvider
This commit is contained in:
wandererfan
2022-10-28 08:46:37 -04:00
committed by WandererFan
parent 9e48f5a158
commit 208104e9e0
39 changed files with 5181 additions and 2544 deletions

View File

@@ -31,7 +31,7 @@
#include <Base/Vector3D.h>
#include <Mod/TechDraw/TechDrawGlobal.h>
#include <Mod/TechDraw/App/DimensionReferences.h>
namespace TechDraw
{
@@ -45,6 +45,10 @@ class TechDrawExport DrawDimHelper {
static void makeExtentDim(DrawViewPart* dvp,
std::vector<std::string> edgeNames,
int direction);
static void makeExtentDim3d(DrawViewPart* dvp,
ReferenceVector references,
int direction);
static gp_Pnt findClosestPoint(std::vector<TopoDS_Edge> inEdges,
TopoDS_Edge& boundary);
@@ -58,6 +62,9 @@ class TechDrawExport DrawDimHelper {
static std::pair<Base::Vector3d, Base::Vector3d> minMax(DrawViewPart* dvp,
std::vector<std::string> edgeNames,
int direction);
static std::pair<Base::Vector3d, Base::Vector3d> minMax3d(DrawViewPart* dvp,
ReferenceVector references,
int direction);
};
} //end namespace TechDraw