KiCad PCB EDA Suite
|
#include <functional>
#include <memory>
#include <advanced_config.h>
#include <kiplatform/ui.h>
#include <view/view_controls.h>
#include <gal/graphics_abstraction_layer.h>
#include <geometry/corner_operations.h>
#include <geometry/geometry_utils.h>
#include <geometry/seg.h>
#include <geometry/vector_utils.h>
#include <confirm.h>
#include <tool/tool_manager.h>
#include <tool/point_editor_behavior.h>
#include <tool/selection_conditions.h>
#include <tools/pcb_actions.h>
#include <tools/pcb_selection_tool.h>
#include <tools/pcb_point_editor.h>
#include <tools/pcb_grid_helper.h>
#include <tools/generator_tool.h>
#include <dialogs/dialog_unit_entry.h>
#include <board_commit.h>
#include <pcb_edit_frame.h>
#include <pcb_reference_image.h>
#include <pcb_generator.h>
#include <pcb_dimension.h>
#include <pcb_textbox.h>
#include <pcb_tablecell.h>
#include <pcb_table.h>
#include <pad.h>
#include <zone.h>
#include <footprint.h>
#include <footprint_editor_settings.h>
#include <connectivity/connectivity_data.h>
#include <progress_reporter.h>
Go to the source code of this file.
Classes | |
class | RECTANGLE_POINT_EDIT_BEHAVIOR |
class | ARC_POINT_EDIT_BEHAVIOR |
class | ZONE_POINT_EDIT_BEHAVIOR |
class | REFERENCE_IMAGE_POINT_EDIT_BEHAVIOR |
class | PCB_TABLECELL_POINT_EDIT_BEHAVIOR |
class | PAD_POINT_EDIT_BEHAVIOR |
class | GENERATOR_POINT_EDIT_BEHAVIOR |
Point editor behavior for the PCB_GENERATOR class. More... | |
class | DIM_ALIGNED_TEXT_UPDATER |
Class to help update the text position of a dimension when the crossbar changes. More... | |
class | ALIGNED_DIMENSION_POINT_EDIT_BEHAVIOR |
This covers both aligned and the orthogonal sub-type. More... | |
class | DIM_CENTER_POINT_EDIT_BEHAVIOR |
class | DIM_RADIAL_POINT_EDIT_BEHAVIOR |
class | DIM_LEADER_POINT_EDIT_BEHAVIOR |
class | TEXTBOX_POINT_EDIT_BEHAVIOR |
A textbox is edited as a rectnagle when it is orthogonally aligned. More... | |
Enumerations | |
enum | RECT_POINTS { RECT_TOP_LEFT , RECT_TOP_RIGHT , RECT_BOT_RIGHT , RECT_BOT_LEFT , RECT_CENTER , RECT_MAX_POINTS } |
enum | RECT_LINES { RECT_TOP , RECT_RIGHT , RECT_BOT , RECT_LEFT } |
enum | DIMENSION_POINTS { DIM_START , DIM_END , DIM_TEXT , DIM_CROSSBARSTART , DIM_CROSSBAREND , DIM_KNEE = DIM_CROSSBARSTART , DIM_ALIGNED_MAX = DIM_CROSSBAREND + 1 , DIM_CENTER_MAX = DIM_END + 1 , DIM_RADIAL_MAX = DIM_KNEE + 1 , DIM_LEADER_MAX = DIM_TEXT + 1 } |
enum | TEXTBOX_POINT_COUNT { WHEN_RECTANGLE = RECT_MAX_POINTS , WHEN_POLYGON = 0 } |
Functions | |
static bool | canAddCorner (const EDA_ITEM &aItem) |
Condition to check if a point editor can add a corner to the given item. | |
static bool | canChamferCorner (const EDA_ITEM &aItem) |
Condition to check if a point editor can add a chamfer to a corner of the given item. | |
static std::pair< bool, SHAPE_POLY_SET::VERTEX_INDEX > | findVertex (SHAPE_POLY_SET &aPolySet, const EDIT_POINT &aPoint) |
enum DIMENSION_POINTS |
Enumerator | |
---|---|
DIM_START | |
DIM_END | |
DIM_TEXT | |
DIM_CROSSBARSTART | |
DIM_CROSSBAREND | |
DIM_KNEE | |
DIM_ALIGNED_MAX | |
DIM_CENTER_MAX | |
DIM_RADIAL_MAX | |
DIM_LEADER_MAX |
Definition at line 84 of file pcb_point_editor.cpp.
enum RECT_LINES |
Enumerator | |
---|---|
RECT_TOP | |
RECT_RIGHT | |
RECT_BOT | |
RECT_LEFT |
Definition at line 78 of file pcb_point_editor.cpp.
enum RECT_POINTS |
Enumerator | |
---|---|
RECT_TOP_LEFT | |
RECT_TOP_RIGHT | |
RECT_BOT_RIGHT | |
RECT_BOT_LEFT | |
RECT_CENTER | |
RECT_MAX_POINTS |
Definition at line 66 of file pcb_point_editor.cpp.
enum TEXTBOX_POINT_COUNT |
Enumerator | |
---|---|
WHEN_RECTANGLE | |
WHEN_POLYGON |
Definition at line 101 of file pcb_point_editor.cpp.
|
static |
Condition to check if a point editor can add a corner to the given item.
Definition at line 1899 of file pcb_point_editor.cpp.
References ARC, EDA_SHAPE::GetShape(), PCB_SHAPE_T, PCB_ZONE_T, POLY, SEGMENT, and EDA_ITEM::Type().
Referenced by PCB_POINT_EDITOR::addCorner(), and PCB_POINT_EDITOR::Init().
|
static |
Condition to check if a point editor can add a chamfer to a corner of the given item.
Definition at line 1921 of file pcb_point_editor.cpp.
References EDA_SHAPE::GetShape(), PCB_SHAPE_T, PCB_ZONE_T, POLY, and EDA_ITEM::Type().
Referenced by PCB_POINT_EDITOR::Init().
|
static |
Definition at line 2651 of file pcb_point_editor.cpp.
References SHAPE_POLY_SET::CVertex(), EDIT_POINT::GetPosition(), and SHAPE_POLY_SET::IterateWithHoles().
Referenced by PCB_POINT_EDITOR::removeCorner(), PCB_POINT_EDITOR::removeCornerCondition(), and PNS::LINE::Walkaround().