Fix compil warnings.
This commit is contained in:
parent
b622e3a3f7
commit
ac71227e75
|
@ -593,7 +593,6 @@ void TransformArcToPolygon( SHAPE_POLY_SET& aBuffer, const VECTOR2I& aStart, con
|
||||||
EDA_ANGLE arc_angle_start = arc.GetStartAngle();
|
EDA_ANGLE arc_angle_start = arc.GetStartAngle();
|
||||||
EDA_ANGLE arc_angle = arc.GetCentralAngle();
|
EDA_ANGLE arc_angle = arc.GetCentralAngle();
|
||||||
EDA_ANGLE arc_angle_end = arc_angle_start + arc_angle;
|
EDA_ANGLE arc_angle_end = arc_angle_start + arc_angle;
|
||||||
EDA_ANGLE sweep = arc_angle < ANGLE_0 ? -ANGLE_180 : ANGLE_180;
|
|
||||||
|
|
||||||
if( arc_angle < ANGLE_0 )
|
if( arc_angle < ANGLE_0 )
|
||||||
{
|
{
|
||||||
|
|
|
@ -222,8 +222,7 @@ std::vector<std::unique_ptr<FOOTPRINT>> CADSTAR_PCB_ARCHIVE_LOADER::LoadLibrary(
|
||||||
retval.emplace_back( footprint );
|
retval.emplace_back( footprint );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( m_board )
|
delete m_board;
|
||||||
delete m_board;
|
|
||||||
|
|
||||||
// Don't delete the generated footprints, but empty the map
|
// Don't delete the generated footprints, but empty the map
|
||||||
// (the destructor of this class would end up deleting them if not)
|
// (the destructor of this class would end up deleting them if not)
|
||||||
|
|
|
@ -24,7 +24,7 @@ namespace Clipper2Lib {
|
||||||
|
|
||||||
inline Paths64 BooleanOp(ClipType cliptype, FillRule fillrule,
|
inline Paths64 BooleanOp(ClipType cliptype, FillRule fillrule,
|
||||||
const Paths64& subjects, const Paths64& clips)
|
const Paths64& subjects, const Paths64& clips)
|
||||||
{
|
{
|
||||||
Paths64 result;
|
Paths64 result;
|
||||||
Clipper64 clipper;
|
Clipper64 clipper;
|
||||||
clipper.AddSubject(subjects);
|
clipper.AddSubject(subjects);
|
||||||
|
@ -58,7 +58,7 @@ namespace Clipper2Lib {
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void BooleanOp(ClipType cliptype, FillRule fillrule,
|
inline void BooleanOp(ClipType cliptype, FillRule fillrule,
|
||||||
const PathsD& subjects, const PathsD& clips,
|
const PathsD& subjects, const PathsD& clips,
|
||||||
PolyTreeD& polytree, int precision = 2)
|
PolyTreeD& polytree, int precision = 2)
|
||||||
{
|
{
|
||||||
polytree.Clear();
|
polytree.Clear();
|
||||||
|
@ -75,7 +75,7 @@ namespace Clipper2Lib {
|
||||||
{
|
{
|
||||||
return BooleanOp(ClipType::Intersection, fillrule, subjects, clips);
|
return BooleanOp(ClipType::Intersection, fillrule, subjects, clips);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline PathsD Intersect(const PathsD& subjects, const PathsD& clips, FillRule fillrule, int decimal_prec = 2)
|
inline PathsD Intersect(const PathsD& subjects, const PathsD& clips, FillRule fillrule, int decimal_prec = 2)
|
||||||
{
|
{
|
||||||
return BooleanOp(ClipType::Intersection, fillrule, subjects, clips, decimal_prec);
|
return BooleanOp(ClipType::Intersection, fillrule, subjects, clips, decimal_prec);
|
||||||
|
@ -145,7 +145,7 @@ namespace Clipper2Lib {
|
||||||
}
|
}
|
||||||
|
|
||||||
inline PathsD InflatePaths(const PathsD& paths, double delta,
|
inline PathsD InflatePaths(const PathsD& paths, double delta,
|
||||||
JoinType jt, EndType et, double miter_limit = 2.0,
|
JoinType jt, EndType et, double miter_limit = 2.0,
|
||||||
int precision = 2, double arc_tolerance = 0.0)
|
int precision = 2, double arc_tolerance = 0.0)
|
||||||
{
|
{
|
||||||
int error_code = 0;
|
int error_code = 0;
|
||||||
|
@ -197,7 +197,7 @@ namespace Clipper2Lib {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline Paths64 RectClip(const Rect64& rect,
|
inline Paths64 ExecuteRectClip(const Rect64& rect,
|
||||||
const Paths64& paths, bool convex_only = false)
|
const Paths64& paths, bool convex_only = false)
|
||||||
{
|
{
|
||||||
if (rect.IsEmpty() || paths.empty()) return Paths64();
|
if (rect.IsEmpty() || paths.empty()) return Paths64();
|
||||||
|
@ -205,7 +205,7 @@ namespace Clipper2Lib {
|
||||||
return rc.Execute(paths, convex_only);
|
return rc.Execute(paths, convex_only);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline Paths64 RectClip(const Rect64& rect,
|
inline Paths64 ExecuteRectClip(const Rect64& rect,
|
||||||
const Path64& path, bool convex_only = false)
|
const Path64& path, bool convex_only = false)
|
||||||
{
|
{
|
||||||
if (rect.IsEmpty() || path.empty()) return Paths64();
|
if (rect.IsEmpty() || path.empty()) return Paths64();
|
||||||
|
@ -213,7 +213,7 @@ namespace Clipper2Lib {
|
||||||
return rc.Execute(Paths64{ path }, convex_only);
|
return rc.Execute(Paths64{ path }, convex_only);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline PathsD RectClip(const RectD& rect,
|
inline PathsD ExecuteRectClip(const RectD& rect,
|
||||||
const PathsD& paths, bool convex_only = false, int precision = 2)
|
const PathsD& paths, bool convex_only = false, int precision = 2)
|
||||||
{
|
{
|
||||||
if (rect.IsEmpty() || paths.empty()) return PathsD();
|
if (rect.IsEmpty() || paths.empty()) return PathsD();
|
||||||
|
@ -224,35 +224,35 @@ namespace Clipper2Lib {
|
||||||
Rect64 r = ScaleRect<int64_t, double>(rect, scale);
|
Rect64 r = ScaleRect<int64_t, double>(rect, scale);
|
||||||
class RectClip rc(r);
|
class RectClip rc(r);
|
||||||
Paths64 pp = ScalePaths<int64_t, double>(paths, scale, error_code);
|
Paths64 pp = ScalePaths<int64_t, double>(paths, scale, error_code);
|
||||||
if (error_code) return PathsD(); // ie: error_code result is lost
|
if (error_code) return PathsD(); // ie: error_code result is lost
|
||||||
return ScalePaths<double, int64_t>(
|
return ScalePaths<double, int64_t>(
|
||||||
rc.Execute(pp, convex_only), 1 / scale, error_code);
|
rc.Execute(pp, convex_only), 1 / scale, error_code);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline PathsD RectClip(const RectD& rect,
|
inline PathsD ExecuteRectClip(const RectD& rect,
|
||||||
const PathD& path, bool convex_only = false, int precision = 2)
|
const PathD& path, bool convex_only = false, int precision = 2)
|
||||||
{
|
{
|
||||||
return RectClip(rect, PathsD{ path }, convex_only, precision);
|
return ExecuteRectClip(rect, PathsD{ path }, convex_only, precision);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline Paths64 RectClipLines(const Rect64& rect, const Paths64& lines)
|
inline Paths64 ExecuteRectClipLines(const Rect64& rect, const Paths64& lines)
|
||||||
{
|
{
|
||||||
if (rect.IsEmpty() || lines.empty()) return Paths64();
|
if (rect.IsEmpty() || lines.empty()) return Paths64();
|
||||||
class RectClipLines rcl(rect);
|
class RectClipLines rcl(rect);
|
||||||
return rcl.Execute(lines);
|
return rcl.Execute(lines);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline Paths64 RectClipLines(const Rect64& rect, const Path64& line)
|
inline Paths64 ExecuteRectClipLines(const Rect64& rect, const Path64& line)
|
||||||
{
|
{
|
||||||
return RectClipLines(rect, Paths64{ line });
|
return ExecuteRectClipLines(rect, Paths64{ line });
|
||||||
}
|
}
|
||||||
|
|
||||||
inline PathsD RectClipLines(const RectD& rect, const PathD& line, int precision = 2)
|
inline PathsD ExecuteRectClipLines(const RectD& rect, const PathD& line, int precision = 2)
|
||||||
{
|
{
|
||||||
return RectClip(rect, PathsD{ line }, precision);
|
return ExecuteRectClip(rect, PathsD{ line }, precision);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline PathsD RectClipLines(const RectD& rect, const PathsD& lines, int precision = 2)
|
inline PathsD ExecuteRectClipLines(const RectD& rect, const PathsD& lines, int precision = 2)
|
||||||
{
|
{
|
||||||
if (rect.IsEmpty() || lines.empty()) return PathsD();
|
if (rect.IsEmpty() || lines.empty()) return PathsD();
|
||||||
int error_code = 0;
|
int error_code = 0;
|
||||||
|
@ -316,7 +316,7 @@ namespace Clipper2Lib {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void OutlinePolyPath(std::ostream& os,
|
static void OutlinePolyPath(std::ostream& os,
|
||||||
bool isHole, size_t count, const std::string& preamble)
|
bool isHole, size_t count, const std::string& preamble)
|
||||||
{
|
{
|
||||||
std::string plural = (count == 1) ? "." : "s.";
|
std::string plural = (count == 1) ? "." : "s.";
|
||||||
|
@ -366,7 +366,7 @@ namespace Clipper2Lib {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} // end details namespace
|
} // end details namespace
|
||||||
|
|
||||||
inline std::ostream& operator<< (std::ostream& os, const PolyTree64& pp)
|
inline std::ostream& operator<< (std::ostream& os, const PolyTree64& pp)
|
||||||
{
|
{
|
||||||
|
@ -409,7 +409,7 @@ namespace Clipper2Lib {
|
||||||
inline bool CheckPolytreeFullyContainsChildren(const PolyTree64& polytree)
|
inline bool CheckPolytreeFullyContainsChildren(const PolyTree64& polytree)
|
||||||
{
|
{
|
||||||
for (const auto& child : polytree)
|
for (const auto& child : polytree)
|
||||||
if (child->Count() > 0 &&
|
if (child->Count() > 0 &&
|
||||||
!details::PolyPath64ContainsChildren(*child))
|
!details::PolyPath64ContainsChildren(*child))
|
||||||
return false;
|
return false;
|
||||||
return true;
|
return true;
|
||||||
|
@ -574,12 +574,12 @@ namespace Clipper2Lib {
|
||||||
double cp = std::abs(CrossProduct(pt1, pt2, pt3));
|
double cp = std::abs(CrossProduct(pt1, pt2, pt3));
|
||||||
return (cp * cp) / (DistanceSqr(pt1, pt2) * DistanceSqr(pt2, pt3)) < sin_sqrd_min_angle_rads;
|
return (cp * cp) / (DistanceSqr(pt1, pt2) * DistanceSqr(pt2, pt3)) < sin_sqrd_min_angle_rads;
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
inline Path<T> Ellipse(const Rect<T>& rect, int steps = 0)
|
inline Path<T> Ellipse(const Rect<T>& rect, int steps = 0)
|
||||||
{
|
{
|
||||||
return Ellipse(rect.MidPoint(),
|
return Ellipse(rect.MidPoint(),
|
||||||
static_cast<double>(rect.Width()) *0.5,
|
static_cast<double>(rect.Width()) *0.5,
|
||||||
static_cast<double>(rect.Height()) * 0.5, steps);
|
static_cast<double>(rect.Height()) * 0.5, steps);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -620,7 +620,7 @@ namespace Clipper2Lib {
|
||||||
return Sqr(a * d - c * b) / (c * c + d * d);
|
return Sqr(a * d - c * b) / (c * c + d * d);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline size_t GetNext(size_t current, size_t high,
|
inline size_t GetNext(size_t current, size_t high,
|
||||||
const std::vector<bool>& flags)
|
const std::vector<bool>& flags)
|
||||||
{
|
{
|
||||||
++current;
|
++current;
|
||||||
|
@ -631,7 +631,7 @@ namespace Clipper2Lib {
|
||||||
return current;
|
return current;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline size_t GetPrior(size_t current, size_t high,
|
inline size_t GetPrior(size_t current, size_t high,
|
||||||
const std::vector<bool>& flags)
|
const std::vector<bool>& flags)
|
||||||
{
|
{
|
||||||
if (current == 0) current = high;
|
if (current == 0) current = high;
|
||||||
|
@ -644,7 +644,7 @@ namespace Clipper2Lib {
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
inline Path<T> SimplifyPath(const Path<T> path,
|
inline Path<T> SimplifyPath(const Path<T> path,
|
||||||
double epsilon, bool isOpenPath = false)
|
double epsilon, bool isOpenPath = false)
|
||||||
{
|
{
|
||||||
const size_t len = path.size(), high = len -1;
|
const size_t len = path.size(), high = len -1;
|
||||||
|
@ -659,7 +659,7 @@ namespace Clipper2Lib {
|
||||||
distSqr[0] = MAX_DBL;
|
distSqr[0] = MAX_DBL;
|
||||||
distSqr[high] = MAX_DBL;
|
distSqr[high] = MAX_DBL;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
distSqr[0] = PerpendicDistFromLineSqrd(path[0], path[high], path[1]);
|
distSqr[0] = PerpendicDistFromLineSqrd(path[0], path[high], path[1]);
|
||||||
distSqr[high] = PerpendicDistFromLineSqrd(path[high], path[0], path[high - 1]);
|
distSqr[high] = PerpendicDistFromLineSqrd(path[high], path[0], path[high - 1]);
|
||||||
|
@ -678,7 +678,7 @@ namespace Clipper2Lib {
|
||||||
} while (curr != start && distSqr[curr] > epsSqr);
|
} while (curr != start && distSqr[curr] > epsSqr);
|
||||||
if (curr == start) break;
|
if (curr == start) break;
|
||||||
}
|
}
|
||||||
|
|
||||||
prior = GetPrior(curr, high, flags);
|
prior = GetPrior(curr, high, flags);
|
||||||
next = GetNext(curr, high, flags);
|
next = GetNext(curr, high, flags);
|
||||||
if (next == prior) break;
|
if (next == prior) break;
|
||||||
|
@ -712,7 +712,7 @@ namespace Clipper2Lib {
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
inline Paths<T> SimplifyPaths(const Paths<T> paths,
|
inline Paths<T> SimplifyPaths(const Paths<T> paths,
|
||||||
double epsilon, bool isOpenPath = false)
|
double epsilon, bool isOpenPath = false)
|
||||||
{
|
{
|
||||||
Paths<T> result;
|
Paths<T> result;
|
||||||
|
|
Loading…
Reference in New Issue