[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

@@ -327,8 +327,8 @@ void TaskDimension::onDimUseDefaultClicked()
{
pointPair points = m_parent->getDimFeat()->getLinearPoints();
//duplicate coordinate conversion logic from QGIViewDimension
Base::Vector2d first2(points.first.x, -points.first.y);
Base::Vector2d second2(points.second.x, -points.second.y);
Base::Vector2d first2(points.first().x, -points.first().y);
Base::Vector2d second2(points.second().x, -points.second().y);
double lineAngle = (second2 - first2).Angle();
ui->dsbDimAngle->setValue(lineAngle * 180.0 / M_PI);
}
@@ -345,8 +345,8 @@ void TaskDimension::onExtUseDefaultClicked()
{
pointPair points = m_parent->getDimFeat()->getLinearPoints();
//duplicate coordinate conversion logic from QGIViewDimension
Base::Vector2d first2(points.first.x, -points.first.y);
Base::Vector2d second2(points.second.x, -points.second.y);
Base::Vector2d first2(points.first().x, -points.first().y);
Base::Vector2d second2(points.second().x, -points.second().y);
Base::Vector2d lineDirection = second2 - first2;
Base::Vector2d extensionDirection(-lineDirection.y, lineDirection.x);
double extensionAngle = extensionDirection.Angle();