| 
    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().