|
KiCad PCB EDA Suite
|
#include <bitmaps.h>#include <pcb_edit_frame.h>#include <base_units.h>#include <convert_basic_shapes_to_polygon.h>#include <font/font.h>#include <board.h>#include <pcb_dimension.h>#include <pcb_text.h>#include <board_design_settings.h>#include <geometry/shape_compound.h>#include <geometry/shape_circle.h>#include <geometry/shape_segment.h>#include <geometry/shape_rect.h>#include <geometry/geometry_utils.h>#include <settings/color_settings.h>#include <settings/settings_manager.h>#include <trigo.h>#include <api/api_enums.h>#include <api/api_utils.h>#include <api/board/board_types.pb.h>Go to the source code of this file.
Classes | |
| struct | DIMENSION_DESC |
| struct | ALIGNED_DIMENSION_DESC |
| struct | ORTHOGONAL_DIMENSION_DESC |
| struct | RADIAL_DIMENSION_DESC |
| struct | LEADER_DIMENSION_DESC |
| struct | CENTER_DIMENSION_DESC |
Functions | |
| static OPT_VECTOR2I | segPolyIntersection (const SHAPE_POLY_SET &aPoly, const SEG &aSeg, bool aStart=true) |
| Find the intersection between a given segment and polygon outline. | |
| static OPT_VECTOR2I | segCircleIntersection (CIRCLE &aCircle, SEG &aSeg, bool aStart=true) |
| static void | CollectKnockedOutSegments (const SHAPE_POLY_SET &aPoly, const SEG &aSeg, std::vector< std::shared_ptr< SHAPE > > &aSegmentsAfterKnockout) |
| Knockout a polygon from a segment. | |
Variables | |
| static const int | INWARD_ARROW_LENGTH_TO_HEAD_RATIO = 2 |
| static const EDA_ANGLE | s_arrowAngle (27.5, DEGREES_T) |
| static struct DIMENSION_DESC | _DIMENSION_DESC |
| static struct ALIGNED_DIMENSION_DESC | ALIGNED_DIMENSION_DESC |
| static struct ORTHOGONAL_DIMENSION_DESC | ORTHOGONAL_DIMENSION_DESC |
| static struct RADIAL_DIMENSION_DESC | RADIAL_DIMENSION_DESC |
| static struct LEADER_DIMENSION_DESC | LEADER_DIMENSION_DESC |
| static struct CENTER_DIMENSION_DESC | CENTER_DIMENSION_DESC |
|
static |
Knockout a polygon from a segment.
This function will add 0, 1 or 2 segments to the vector, depending on how the polygon intersects the segment.
Definition at line 117 of file pcb_dimension.cpp.
References SEG::A, SEG::B, SHAPE_POLY_SET::Contains(), and segPolyIntersection().
Referenced by PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), and PCB_DIM_RADIAL::updateGeometry().
|
static |
Definition at line 89 of file pcb_dimension.cpp.
References SEG::A, SEG::B, CIRCLE::Contains(), and CIRCLE::Intersect().
Referenced by PCB_DIM_LEADER::updateGeometry().
|
static |
Find the intersection between a given segment and polygon outline.
| aPoly | is the polygon to collide. |
| aSeg | is the segment to collide. |
| aStart | if true will start from aSeg.A, otherwise aSeg.B. |
Definition at line 63 of file pcb_dimension.cpp.
References SEG::A, SEG::B, SHAPE_POLY_SET::CIterateSegments(), and SHAPE_POLY_SET::Contains().
Referenced by CollectKnockedOutSegments(), and PCB_DIM_LEADER::updateGeometry().
|
static |
|
static |
|
static |
|
static |
Definition at line 50 of file pcb_dimension.cpp.
Referenced by PCB_DIM_ALIGNED::updateGeometry(), and PCB_DIM_ORTHOGONAL::updateGeometry().
|
static |
|
static |
|
static |