X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdimension.cpp;h=2dc7fce924956d2f51c070d390b3e7cd0aecb22b;hb=669a05b5a52bd759f0ea08772e0ed17222b015a0;hp=2a989dccec0de1b91fb3d68f8ab13e4d2ebbbcdf;hpb=64482766268cddae393da1277987de31e69ffdd9;p=architektonas diff --git a/src/dimension.cpp b/src/dimension.cpp index 2a989dc..2dc7fce 100644 --- a/src/dimension.cpp +++ b/src/dimension.cpp @@ -108,6 +108,7 @@ I believe they are pixels. } else { + // Draw outside arrowheads Point p7 = p1 - (unit * 9.0 * size); Point p8 = p2 + (unit * 9.0 * size); painter->DrawArrowhead(p1, p7, size); @@ -120,7 +121,27 @@ I believe they are pixels. painter->SetFont(QFont("Arial", 8.0 * Painter::zoom * size)); Vector v1((p1.x - p2.x) / 2.0, (p1.y - p2.y) / 2.0); Point ctr = p2 + v1; + +#if 0 QString dimText = QString("%1\"").arg(Vector(endpoint - position).Magnitude()); +#else + QString dimText; + double length = Vector(endpoint - position).Magnitude(); + + if (length < 12.0) + dimText = QString("%1\"").arg(length); + else + { + double feet = (double)((int)length / 12); + double inches = length - (feet * 12.0); + + if (inches == 0) + dimText = QString("%1'").arg(feet); + else + dimText = QString("%1' %2\"").arg(feet).arg(inches); + } +#endif + painter->DrawAngledText(ctr, angle, dimText, size); }