|
KiCad PCB EDA Suite
|
#include <algorithm>#include <assert.h>#include <cmath>#include <cstdio>#include <istream>#include <limits>#include <map>#include <memory>#include <set>#include <string>#include <unordered_set>#include <utility>#include <vector>#include <array>#include <clipper2/clipper.h>#include <geometry/geometry_utils.h>#include <geometry/polygon_triangulation.h>#include <geometry/seg.h>#include <geometry/shape.h>#include <geometry/shape_line_chain.h>#include <geometry/shape_poly_set.h>#include <geometry/rtree.h>#include <math/box2.h>#include <math/util.h>#include <math/vector2d.h>#include <hash.h>#include <mmh3_hash.h>#include <geometry/shape_segment.h>#include <geometry/shape_circle.h>#include <wx/log.h>Go to the source code of this file.
Classes | |
| struct | FractureEdge |
| struct | FractureEdgeSlow |
Macros | |
| #define | TRIANGULATESIMPLIFICATIONLEVEL ADVANCED_CFG::GetCfg().m_TriangulateSimplificationLevel |
| #define | ENABLECACHEFRIENDLYFRACTURE ADVANCED_CFG::GetCfg().m_EnableCacheFriendlyFracture |
| #define | SEG_CNT_MAX 64 |
| #define | SEG_CNT_MAX 64 |
Typedefs | |
| typedef std::vector< FractureEdge > | FractureEdgeSet |
| typedef std::vector< FractureEdgeSlow * > | FractureEdgeSetSlow |
Functions | |
| static FractureEdge * | processHole (FractureEdgeSet &edges, FractureEdge::Index provokingIndex, FractureEdge::Index edgeIndex, FractureEdge::Index bridgeIndex) |
| static void | fractureSingleCacheFriendly (SHAPE_POLY_SET::POLYGON &paths) |
| static int | processEdge (FractureEdgeSetSlow &edges, FractureEdgeSlow *edge) |
| static void | fractureSingleSlow (SHAPE_POLY_SET::POLYGON &paths) |
| static SHAPE_POLY_SET | partitionPolyIntoRegularCellGrid (const SHAPE_POLY_SET &aPoly, int aSize) |
| #define ENABLECACHEFRIENDLYFRACTURE ADVANCED_CFG::GetCfg().m_EnableCacheFriendlyFracture |
Definition at line 71 of file shape_poly_set.cpp.
Referenced by SHAPE_POLY_SET::fractureSingle().
| #define SEG_CNT_MAX 64 |
Referenced by SHAPE_POLY_SET::inflate2(), and SHAPE_POLY_SET::inflateLine2().
| #define SEG_CNT_MAX 64 |
| #define TRIANGULATESIMPLIFICATIONLEVEL ADVANCED_CFG::GetCfg().m_TriangulateSimplificationLevel |
Definition at line 70 of file shape_poly_set.cpp.
| typedef std::vector<FractureEdge> FractureEdgeSet |
Definition at line 1229 of file shape_poly_set.cpp.
| typedef std::vector<FractureEdgeSlow*> FractureEdgeSetSlow |
Definition at line 1461 of file shape_poly_set.cpp.
|
static |
Definition at line 1303 of file shape_poly_set.cpp.
References SHAPE_LINE_CHAIN::Append(), SHAPE_LINE_CHAIN::Clear(), FractureEdge::m_next, FractureEdge::m_p1, path, processHole(), SHAPE_LINE_CHAIN::SetClosed(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SHAPE_POLY_SET::fractureSingle().
|
static |
Definition at line 1541 of file shape_poly_set.cpp.
References SHAPE_LINE_CHAIN::Append(), FractureEdgeSlow::m_connected, FractureEdgeSlow::m_next, FractureEdgeSlow::m_p1, path, processEdge(), SHAPE_LINE_CHAIN::SetClosed(), and VECTOR2< T >::x.
Referenced by SHAPE_POLY_SET::fractureSingle().
|
static |
Definition at line 2936 of file shape_poly_set.cpp.
References SHAPE_POLY_SET::AddOutline(), SHAPE_LINE_CHAIN::Append(), SHAPE_POLY_SET::BBox(), SHAPE_POLY_SET::BooleanIntersection(), BOX2< Vec >::GetHeight(), BOX2< Vec >::GetWidth(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SHAPE_POLY_SET::cacheTriangulation().
|
static |
Definition at line 1464 of file shape_poly_set.cpp.
References FractureEdgeSlow::m_connected, FractureEdgeSlow::m_next, FractureEdgeSlow::m_p1, FractureEdgeSlow::m_p2, rescale(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by fractureSingleSlow().
|
static |
Definition at line 1232 of file shape_poly_set.cpp.
References FractureEdge::m_next, FractureEdge::m_p1, FractureEdge::m_p2, FractureEdge::matches(), rescale(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by fractureSingleCacheFriendly().