KiCad PCB EDA Suite
|
A 2D bounding box built on top of an origin point and size vector. More...
#include <box2.h>
Public Types | |
typedef Vec::coord_type | coord_type |
typedef Vec::extended_type | ecoord_type |
typedef std::numeric_limits< coord_type > | coord_limits |
Public Member Functions | |
BOX2 () | |
BOX2 (const Vec &aPos, const Vec &aSize=Vec(0, 0)) | |
void | SetMaximum () |
Vec | Centre () const |
template<class Container > | |
void | Compute (const Container &aPointList) |
Compute the bounding box from a given list of points. More... | |
void | Move (const Vec &aMoveVector) |
Move the rectangle by the aMoveVector. More... | |
BOX2< Vec > & | Normalize () |
Ensure that the height and width are positive. More... | |
bool | Contains (const Vec &aPoint) const |
bool | Contains (coord_type x, coord_type y) const |
bool | Contains (const BOX2< Vec > &aRect) const |
const Vec & | GetSize () const |
coord_type | GetX () const |
coord_type | GetY () const |
const Vec & | GetOrigin () const |
const Vec & | GetPosition () const |
const Vec | GetEnd () const |
coord_type | GetWidth () const |
coord_type | GetHeight () const |
coord_type | GetRight () const |
coord_type | GetBottom () const |
coord_type | GetLeft () const |
coord_type | GetTop () const |
const Vec | GetCenter () const |
int | GetSizeMax () const |
void | SetOrigin (const Vec &pos) |
void | SetOrigin (coord_type x, coord_type y) |
void | SetSize (const Vec &size) |
void | SetSize (coord_type w, coord_type h) |
void | Offset (coord_type dx, coord_type dy) |
void | Offset (const Vec &offset) |
void | SetX (coord_type val) |
void | SetY (coord_type val) |
void | SetWidth (coord_type val) |
void | SetHeight (coord_type val) |
void | SetEnd (coord_type x, coord_type y) |
void | SetEnd (const Vec &pos) |
bool | Intersects (const BOX2< Vec > &aRect) const |
BOX2< Vec > | Intersect (const BOX2< Vec > &aRect) |
bool | Intersects (const Vec &aPoint1, const Vec &aPoint2) const |
bool | Intersects (const BOX2< Vec > &aRect, const EDA_ANGLE &aRotation) const |
bool | IntersectsCircle (const Vec &aCenter, const int aRadius) const |
bool | IntersectsCircleEdge (const Vec &aCenter, const int aRadius, const int aWidth) const |
const std::string | Format () const |
BOX2< Vec > & | Inflate (coord_type dx, coord_type dy) |
Inflates the rectangle horizontally by dx and vertically by dy. More... | |
BOX2< Vec > & | Inflate (int aDelta) |
Inflate the rectangle horizontally and vertically by aDelta. More... | |
BOX2< Vec > & | Merge (const BOX2< Vec > &aRect) |
Modify the position and size of the rectangle in order to contain aRect. More... | |
BOX2< Vec > & | Merge (const Vec &aPoint) |
Modify the position and size of the rectangle in order to contain the given point. More... | |
const BOX2< Vec > | GetBoundingBoxRotated (const VECTOR2I &aRotCenter, const EDA_ANGLE &aAngle) const |
Useful to calculate bounding box of rotated items, when rotation is not cardinal. More... | |
void | RevertYAxis () |
Mirror the rectangle from the X axis (negate Y pos and size). More... | |
ecoord_type | GetArea () const |
Return the area of the rectangle. More... | |
ecoord_type | Diagonal () const |
Return the length of the diagonal of the rectangle. More... | |
ecoord_type | SquaredDistance (const Vec &aP) const |
ecoord_type | Distance (const Vec &aP) const |
ecoord_type | SquaredDistance (const BOX2< Vec > &aBox) const |
Return the square of the minimum distance between self and box aBox. More... | |
ecoord_type | Distance (const BOX2< Vec > &aBox) const |
Return the minimum distance between self and aBox. More... | |
const Vec | ClosestPointTo (const Vec &aPoint) const |
Return the point in this rect that is closest to the provided point. More... | |
const Vec | FarthestPointTo (const Vec &aPoint) const |
Return the point in this rect that is farthest from the provided point. More... | |
bool | operator== (const BOX2< Vec > &aOther) const |
bool | operator!= (const BOX2< Vec > &aOther) const |
bool | IsValid () const |
Private Attributes | |
Vec | m_Pos |
Vec | m_Size |
bool | m_init |
A 2D bounding box built on top of an origin point and size vector.
typedef std::numeric_limits<coord_type> BOX2< Vec >::coord_limits |
typedef Vec::coord_type BOX2< Vec >::coord_type |
typedef Vec::extended_type BOX2< Vec >::ecoord_type |
Definition at line 56 of file box2.h.
References BOX2< Vec >::Normalize().
|
inline |
Definition at line 71 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
Referenced by COMMON_TOOLS::CenterContents(), SHAPE::Centre(), SCH_EDIT_TOOL::ChangeTextType(), PCB_GRID_HELPER::computeAnchors(), PCB_SELECTION_TOOL::doSyncSelection(), COMMON_TOOLS::doZoomFit(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), DRAWING_TOOL::DrawDimension(), BOARD_PRINTOUT::DrawPage(), BOARD_NETLIST_UPDATER::estimateFootprintInsertionPosition(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), AUTOPLACER::fieldBoxPlacement(), AUTOPLACER::fieldHPlacement(), SYMBOL_PREVIEW_WIDGET::fitOnDrawArea(), PCB_BASE_FRAME::FocusOnItems(), GENDRILL_WRITER_BASE::genDrillMapFile(), EDA_SHAPE::getCenter(), BOX2< Vec >::GetCenter(), GERBVIEW_SELECTION::GetCenter(), PCB_GROUP::GetPosition(), GERBER_DRAW_ITEM::HitTest(), initializePlotter(), BOARD_ADAPTER::InitSettings(), BOX2< Vec >::Intersects(), SCH_FIELD::IsHorizJustifyFlipped(), SCH_FIELD::IsVertJustifyFlipped(), CADSTAR_SCH_ARCHIVE_LOADER::Load(), SCH_EAGLE_PLUGIN::loadSheet(), SCH_EDIT_TOOL::Mirror(), PCB_EDIT_FRAME::OnExportIDF3(), SCH_EDIT_FRAME::onNetNavigatorSelection(), DIALOG_PIN_PROPERTIES::OnPaintShowPanel(), SCH_FIELD::Plot(), LIB_FIELD::Plot(), LIB_TEXT::Plot(), SCH_FIELD::Print(), LIB_TEXT::print(), SCH_PRINTOUT::PrintPage(), KIGFX::VIEW::SetCenter(), KIGFX::VIEW::SetViewport(), EE_SELECTION_TOOL::SyncSelection(), DRC_TEST_PROVIDER_MISC::testOutline(), KIGFX::WX_VIEW_CONTROLS::UpdateScrollbars(), PANEL_EESCHEMA_COLOR_SETTINGS::zoomFitPreview(), PANEL_PCBNEW_COLOR_SETTINGS::zoomFitPreview(), and PCB_SELECTION_TOOL::zoomFitSelection().
|
inline |
Return the point in this rect that is closest to the provided point.
Definition at line 782 of file box2.h.
References alg::clamp(), BOX2< Vec >::GetBottom(), BOX2< Vec >::GetLeft(), BOX2< Vec >::GetRight(), BOX2< Vec >::GetTop(), and BOX2< Vec >::Normalize().
Referenced by BOX2< Vec >::IntersectsCircle(), and PNS::LINE_PLACER::rhMarkObstacles().
|
inline |
Compute the bounding box from a given list of points.
aPointList | is the list points of the object. |
Definition at line 83 of file box2.h.
References BOX2< Vec >::SetOrigin(), and BOX2< Vec >::SetSize().
Referenced by SHAPE_LINE_CHAIN::BBox(), SHAPE_LINE_CHAIN::GenerateBBoxCache(), and SHAPE_ARC::update_bbox().
aRect | is the the area to test. |
Definition at line 175 of file box2.h.
References BOX2< Vec >::Contains(), BOX2< Vec >::GetEnd(), and BOX2< Vec >::GetOrigin().
|
inline |
aPoint | is the point to test. |
Definition at line 142 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
Referenced by AR_AUTOPLACER::AutoplaceFootprints(), LABEL_MANAGER::boxMtv(), PNS::AREA_CONSTRAINT::Check(), CN_VISITOR::checkZoneZoneConnection(), SHAPE_RECT::Collide(), BOX2< Vec >::Contains(), drawBacksideTicks(), DRAWING_TOOL::DrawDimension(), SCH_DRAWING_TOOLS::DrawSheet(), drawTicksAlongLine(), DRAWING_TOOL::DrawVia(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), PCB_SELECTION_TOOL::FindItem(), EDA_DRAW_FRAME::FocusOnLocation(), EE_SELECTION_TOOL::GuessSelectionCandidates(), EDA_SHAPE::hitTest(), LIB_ITEM::HitTest(), LIB_TEXT::HitTest(), SCH_BUS_ENTRY_BASE::HitTest(), SCH_JUNCTION::HitTest(), SCH_LINE::HitTest(), SCH_NO_CONNECT::HitTest(), DS_DRAW_ITEM_BASE::HitTest(), DS_DRAW_ITEM_POLYPOLYGONS::HitTest(), DS_DRAW_ITEM_RECT::HitTest(), PAD::HitTest(), PCB_DIMENSION_BASE::HitTest(), PCB_TARGET::HitTest(), PCB_TRACK::HitTest(), PCB_VIA::HitTest(), PCB_ARC::HitTest(), ZONE::HitTest(), SCH_SHEET::HitTest(), PCB_TEXTBOX::HitTest(), LIB_PIN::HitTest(), LIB_TEXTBOX::HitTest(), SCH_BITMAP::HitTest(), SCH_FIELD::HitTest(), SCH_LABEL_BASE::HitTest(), SCH_PIN::HitTest(), SCH_SHEET_PIN::HitTest(), SCH_SYMBOL::HitTest(), SCH_TEXT::HitTest(), SCH_TEXTBOX::HitTest(), DS_DRAW_ITEM_BITMAP::HitTest(), FOOTPRINT::HitTest(), PCB_REFERENCE_IMAGE::HitTest(), GERBER_DRAW_ITEM::HitTest(), MARKER_BASE::HitTestMarker(), BOX2< Vec >::Intersects(), EE_SELECTION_TOOL::Main(), AR_AUTOPLACER::nearestPad(), ALTIUM_PCB::ParsePolygons6Data(), PNS::NODE::QueryJoints(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), EE_SELECTION_TOOL::selectionContains(), PL_SELECTION_TOOL::selectionContains(), PCB_SELECTION_TOOL::selectionContains(), EE_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectPoint(), KIGFX::VIEW::SetCenter(), KIGFX::WX_VIEW_CONTROLS::SetCrossHairCursorPosition(), PCB_TEXT::TextHitTest(), EDA_TEXT::TextHitTest(), PCB_POINT_EDITOR::updateItem(), and KIGFX::WX_VIEW_CONTROLS::WarpMouseCursor().
|
inline |
x | is the x coordinate of the point to test. |
y | is the x coordinate of the point to test. |
Definition at line 168 of file box2.h.
References BOX2< Vec >::Contains().
Referenced by BOX2< Vec >::Contains().
|
inline |
Return the length of the diagonal of the rectangle.
Definition at line 712 of file box2.h.
References BOX2< Vec >::m_Size.
|
inline |
Return the minimum distance between self and aBox.
aBox | is the other box to get the distance from. |
Definition at line 774 of file box2.h.
References BOX2< Vec >::SquaredDistance().
|
inline |
Definition at line 728 of file box2.h.
References BOX2< Vec >::SquaredDistance().
Referenced by SHAPE_INDEX_LIST< T, >::query_iterator::next().
|
inline |
Return the point in this rect that is farthest from the provided point.
Definition at line 798 of file box2.h.
References BOX2< Vec >::GetBottom(), BOX2< Vec >::GetCenter(), BOX2< Vec >::GetLeft(), BOX2< Vec >::GetRight(), BOX2< Vec >::GetTop(), and BOX2< Vec >::Normalize().
Referenced by BOX2< Vec >::IntersectsCircleEdge().
|
inline |
Definition at line 494 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
|
inline |
Return the area of the rectangle.
Definition at line 702 of file box2.h.
References BOX2< Vec >::GetHeight(), and BOX2< Vec >::GetWidth().
Referenced by SCH_SYMBOL::operator<(), and SpreadFootprints().
|
inline |
Definition at line 191 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
Referenced by SHAPE_INDEX< T >::Add(), AR_AUTOPLACER::addPad(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), FOOTPRINT::AutoPositionFields(), PCB_TEXT::buildBoundingHull(), CN_ZONE_LAYER::BuildRTree(), DRC_RTREE::CheckColliding(), ClipLine(), clipOutCode(), BOX2< Vec >::ClosestPointTo(), CN_ZONE_LAYER::Collide(), TEST_BOARD_ITEM_FIXTURE::CompareItems(), TEST_EE_ITEM_FIXTURE::CompareItems(), EE_RTREE::contains(), ConvertPolygonToBlocks(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), SCH_SYMBOL::doGetBoundingBox(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawDimension(), DRC_RTREE::DRC_LAYER::DRC_LAYER(), EE_RTREE::EE_TYPE::EE_TYPE(), PDF_PLOTTER::EndPlot(), BOARD_NETLIST_UPDATER::estimateFootprintInsertionPosition(), BOX2< Vec >::FarthestPointTo(), AR_AUTOPLACER::fillMatrix(), GENDRILL_WRITER_BASE::genDrillMapFile(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), PLACE_FILE_EXPORTER::GenReportData(), PCB_TEXTBOX::GetAnchorAndOppositeCorner(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_TRACK::GetBoundingBox(), KIFONT::OUTLINE_FONT::getBoundingBox(), LIB_TEXTBOX::GetDrawPos(), SCH_TEXTBOX::GetDrawPos(), BOX2< Vec >::GetEnd(), SCH_SHEET::GetMinHeight(), DRC_RTREE::Insert(), EE_RTREE::insert(), CN_RTREE< T >::Insert(), KIGFX::VIEW_RTREE::Insert(), KIGFX::SCH_PAINTER::knockoutText(), SCH_EAGLE_PLUGIN::loadSchematic(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), PNS::NODE::NearestObstacle(), DIALOG_MOVE_EXACT::OnTextChanged(), CN_RTREE< T >::Query(), KIGFX::VIEW_RTREE::Query(), SHAPE_INDEX< T >::Query(), DRC_RTREE::QueryColliding(), DRC_RTREE::QueryCollidingPairs(), DIALOG_PAD_PROPERTIES::redraw(), SHAPE_INDEX< T >::Reindex(), EE_RTREE::remove(), CN_RTREE< T >::Remove(), SHAPE_INDEX< T >::Remove(), KIGFX::VIEW::SetCenter(), SHAPE_POLY_SET::SHAPE_POLY_SET(), PNS::WALKAROUND::singleStep(), and PCB_POINT_EDITOR::updateItem().
|
inline |
Useful to calculate bounding box of rotated items, when rotation is not cardinal.
Definition at line 651 of file box2.h.
References BOX2< Vec >::GetEnd(), BOX2< Vec >::GetOrigin(), RotatePoint(), BOX2< Vec >::SetEnd(), BOX2< Vec >::SetOrigin(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by KIGFX::SCH_PAINTER::boxText(), and PCB_TEXT::GetBoundingBox().
|
inline |
Definition at line 196 of file box2.h.
References BOX2< Vec >::Centre().
Referenced by FOOTPRINT::AutoPositionFields(), BOX2< Vec >::FarthestPointTo(), SCH_FIND_REPLACE_TOOL::FindNext(), BOARD_ITEM::GetCenter(), FOOTPRINT::GetCenter(), EDA_TEXT::GetEffectiveTextShape(), BOARD::GetFocusPosition(), SCH_SHEET::GetRotationCenter(), EE_SELECTION_TOOL::GuessSelectionCandidates(), ALTIUM_PCB::HelperParseDimensions6Radial(), PCBNEW_JOBS_HANDLER::JobExportStep(), EASYEDA_PLUGIN::LoadBoard(), SCH_EDIT_TOOL::Mirror(), DIALOG_EXPORT_STEP::onExportButton(), PCB_EDIT_FRAME::OnExportVRML(), LTSPICE_SCH_PARSER::Parse(), PCB_EASYEDAPRO_PARSER::ParseBoard(), SCH_EDIT_TOOL::Rotate(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), PCB_DIM_RADIAL::updateGeometry(), and PCB_DIM_LEADER::updateGeometry().
|
inline |
Definition at line 186 of file box2.h.
References BOX2< Vec >::GetBottom(), and BOX2< Vec >::GetRight().
Referenced by BOOST_AUTO_TEST_CASE(), LABEL_MANAGER::boxMtv(), KIGFX::SCH_PAINTER::boxText(), buildBoardBoundingBoxPoly(), BuildBoardPolygonOutlines(), AR_AUTOPLACER::buildFpAreas(), AR_AUTOPLACER::calculateKeepOutArea(), SCH_EDIT_TOOL::ChangeTextType(), PDF_PLOTTER::ClosePage(), AR_MATRIX::ComputeMatrixSize(), BOX2< Vec >::Contains(), KIGFX::DS_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), KIGFX::GERBVIEW_PAINTER::draw(), KIGFX::GAL::DrawRectangle(), FillNegativeKnockout(), SCH_LABEL::GetBodyBoundingBox(), LIB_FIELD::GetBoundingBox(), LIB_TEXT::GetBoundingBox(), SCH_FIELD::GetBoundingBox(), SCH_TEXT::GetBoundingBox(), GERBER_DRAW_ITEM::GetBoundingBox(), PCB_DIMENSION_BASE::GetBoundingBox(), BOX2< Vec >::GetBoundingBoxRotated(), NL_SCHEMATIC_PLUGIN_IMPL::GetModelExtents(), NL_PCBNEW_PLUGIN_IMPL::GetModelExtents(), AR_AUTOPLACER::getOptimalFPPlacement(), EDIT_TOOL::getSafeMovement(), KIFONT::STROKE_FONT::GetTextAsGlyphs(), BOX2< Vec >::Intersects(), BOX2< Vec >::Merge(), PCB_SHAPE::Normalize(), SCH_SYMBOL::PlotDNP(), primitiveNeedsUpdate(), SCH_SYMBOL::Print(), SVG_PLOTTER::Rect(), EDIT_TOOL::Rotate(), KIGFX::VIEW::SetBoundary(), shapeNeedsUpdate(), AR_AUTOPLACER::testRectangle(), TRANSFORM::TransformCoordinate(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), PCB_DIM_RADIAL::updateGeometry(), and PCB_DIM_LEADER::updateGeometry().
|
inline |
Definition at line 189 of file box2.h.
References BOX2< Vec >::m_Size.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), GERBER_JOBFILE_WRITER::addJSONGeneralSpecs(), AUTOPLACE_TOOL::autoplace(), LABEL_MANAGER::boxMtv(), KIGFX::SCH_PAINTER::boxText(), buildBoardBoundingBoxPoly(), BuildBoardPolygonOutlines(), PNS::DP_GATEWAYS::BuildFromPrimitivePair(), ZONE_FILLER::buildThermalSpokes(), EAGLE_PLUGIN::centerBoard(), COMMON_TOOLS::CenterContents(), AUTOPLACER::computeFBoxSize(), AR_MATRIX::ComputeMatrixSize(), PNS::ConvexHull(), GENCAD_EXPORTER::CreateComponentsSection(), PNS::OPTIMIZER::customBreakouts(), EDIT_TOOL::doMoveSelection(), EESCHEMA_JOBS_HANDLER::doSymExportSvg(), PCB_SELECTION_TOOL::doSyncSelection(), COMMON_TOOLS::doZoomFit(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawBoardCharacteristics(), DRAWING_TOOL::DrawDimension(), BOARD_PRINTOUT::DrawPage(), HPGL_PLOTTER::EndPlot(), BOARD_NETLIST_UPDATER::estimateFootprintInsertionPosition(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), AUTOPLACER::fieldBoxPlacement(), AUTOPLACER::fieldVPlacement(), PCB_SELECTION_TOOL::FindItem(), SYMBOL_PREVIEW_WIDGET::fitOnDrawArea(), PCB_BASE_FRAME::FocusOnItems(), GENDRILL_WRITER_BASE::genDrillMapFile(), AR_AUTOPLACER::genPlacementRoutingMatrix(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), BOX2< Vec >::GetArea(), FOOTPRINT::GetArea(), PCB_BASE_FRAME::GetBoardBoundingBox(), GERBER_DRAW_ITEM::GetBoundingBox(), DIALOG_BOARD_STATISTICS::getDataFromPCB(), PCB_REFERENCE_IMAGE::GetEffectiveShape(), BOARD::GetFootprint(), NL_SCHEMATIC_PLUGIN_IMPL::GetModelExtents(), NL_PCBNEW_PLUGIN_IMPL::GetModelExtents(), AUTOPLACER::getPreferredSides(), D_CODE::GetShapeDim(), EDA_TEXT::GetTextBox(), NL_SCHEMATIC_PLUGIN_IMPL::GetViewExtents(), NL_PCBNEW_PLUGIN_IMPL::GetViewExtents(), EE_SELECTION_TOOL::GuessSelectionCandidates(), SCH_JUNCTION::HitTest(), PCB_SELECTION_TOOL::hitTestDistance(), BOARD_ADAPTER::InitSettings(), BOX2< Vec >::Intersects(), CADSTAR_PCB_ARCHIVE_PLUGIN::LoadBoard(), SCH_EAGLE_PLUGIN::loadSchematic(), DSN::SPECCTRA_DB::makePADSTACK(), SIM_MODEL::MigrateSimModel(), LABEL_MANAGER::nearestBoxCorner(), LIB_TEXT::NormalizeJustification(), DIALOG_PIN_PROPERTIES::OnPaintShowPanel(), DIALOG_PAD_PROPERTIES::padValuesOK(), ALTIUM_PCB::Parse(), LTSPICE_SCH_PARSER::Parse(), ALTIUM_PCB::ParsePolygons6Data(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSchematic(), partitionPolyIntoRegularCellGrid(), EXPORT_SVG::Plot(), SCH_TEXT::Plot(), SCH_SYMBOL::PlotDNP(), SCH_SYMBOL::Print(), SCH_TEXT::Print(), SCH_PRINTOUT::PrintPage(), KIGFX::VIEW::Redraw(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), PNS_LOG_VIEWER_FRAME::SetBoard2(), KIGFX::VIEW::SetCenter(), PNS_LOG_VIEWER_FRAME::SetLogFile(), SpreadFootprints(), EE_SELECTION_TOOL::SyncSelection(), PolygonTriangulation::TesselatePolygon(), PCB_POINT_EDITOR::updateItem(), KIGFX::WX_VIEW_CONTROLS::UpdateScrollbars(), PANEL_PCBNEW_COLOR_SETTINGS::zoomFitPreview(), PCB_SELECTION_TOOL::zoomFitSelection(), PolygonTriangulation::zOrder(), and POLYGON_TEST::zOrder().
|
inline |
Definition at line 194 of file box2.h.
References BOX2< Vec >::GetX().
Referenced by AR_AUTOPLACER::addPad(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), BOX2< Vec >::ClosestPointTo(), TEST_BOARD_ITEM_FIXTURE::CompareItems(), TEST_EE_ITEM_FIXTURE::CompareItems(), ConvertPolygonToBlocks(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawDimension(), PDF_PLOTTER::EndPlot(), BOX2< Vec >::FarthestPointTo(), AUTOPLACER::fieldHPlacement(), PCB_TEXTBOX::GetAnchorAndOppositeCorner(), PCB_TRACK::GetBoundingBox(), LIB_TEXTBOX::GetDrawPos(), SCH_TEXTBOX::GetDrawPos(), SCH_SHEET::GetMinWidth(), PL_SELECTION::GetTopLeftItem(), KIGFX::SCH_PAINTER::knockoutText(), SCH_EAGLE_PLUGIN::loadSchematic(), CADSTAR_SCH_ARCHIVE_LOADER::loadSymdef(), PNS::NODE::NearestObstacle(), DIALOG_MOVE_EXACT::OnTextChanged(), LTSPICE_SCH_PARSER::Parse(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSchematic(), DIALOG_PAD_PROPERTIES::redraw(), KIGFX::VIEW::SetCenter(), SHAPE_POLY_SET::SHAPE_POLY_SET(), PNS::WALKAROUND::singleStep(), PCB_POINT_EDITOR::updateItem(), KIGFX::WX_VIEW_CONTROLS::UpdateScrollbars(), and DS_PROXY_VIEW_ITEM::ViewDraw().
|
inline |
Definition at line 184 of file box2.h.
References BOX2< Vec >::m_Pos.
Referenced by PNS_PCBNEW_DEBUG_DECORATOR::AddShape(), KIFONT::OUTLINE_GLYPH::BoundingBox(), KIGFX::SCH_PAINTER::boxText(), buildBoardBoundingBoxPoly(), BuildBoardPolygonOutlines(), PCB_TEXT::buildBoundingHull(), AR_AUTOPLACER::buildFpAreas(), AR_AUTOPLACER::calculateKeepOutArea(), SCH_EDIT_TOOL::ChangeTextType(), BOX2< Vec >::Contains(), PNS::ConvexHull(), LTSPICE_SCH_PARSER::CreateKicadSYMBOLs(), KIGFX::DS_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), KIGFX::GERBVIEW_PAINTER::draw(), KIGFX::GAL::DrawRectangle(), drawShapes(), SYMBOL_EDITOR_CONTROL::ExportSymbolAsSVG(), FillNegativeKnockout(), PCB_SELECTION_TOOL::FindItem(), FOOTPRINT_PREVIEW_PANEL::fitToCurrentFootprint(), PCB_BASE_FRAME::FocusOnItems(), SCH_LABEL::GetBodyBoundingBox(), LIB_FIELD::GetBoundingBox(), LIB_TEXT::GetBoundingBox(), SCH_FIELD::GetBoundingBox(), SCH_TEXT::GetBoundingBox(), GERBER_DRAW_ITEM::GetBoundingBox(), PCB_DIMENSION_BASE::GetBoundingBox(), BOX2< Vec >::GetBoundingBoxRotated(), AR_MATRIX::GetBrdCoordOrigin(), NL_SCHEMATIC_PLUGIN_IMPL::GetModelExtents(), NL_PCBNEW_PLUGIN_IMPL::GetModelExtents(), AR_AUTOPLACER::getOptimalFPPlacement(), ROUTER_TOOL::handleCommonEvents(), idf_export_outline(), ROUTER_TOOL::InlineDrag(), BOX2< Vec >::Intersects(), LTSPICE_SCHEMATIC::Load(), operator<<(), EDIT_TOOL::PackAndMoveFootprints(), LTSPICE_SCH_PARSER::Parse(), PCB_EASYEDAPRO_PARSER::ParseBoard(), playground_main_func(), EXPORT_SVG::Plot(), SCH_SYMBOL::PlotDNP(), primitiveNeedsUpdate(), SCH_SYMBOL::Print(), SVG_PLOTTER::Rect(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), KIGFX::VIEW::SetBoundary(), shapeNeedsUpdate(), SpreadFootprints(), AR_AUTOPLACER::testRectangle(), TRANSFORM::TransformCoordinate(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), PCB_DIM_RADIAL::updateGeometry(), PCB_DIM_LEADER::updateGeometry(), PAD::ViewBBox(), DS_PROXY_VIEW_ITEM::ViewDraw(), and PCB_TRACK::ViewGetLOD().
|
inline |
Definition at line 185 of file box2.h.
References BOX2< Vec >::m_Pos.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), BOOST_AUTO_TEST_CASE(), LABEL_MANAGER::boxMtv(), SCH_EDIT_TOOL::ChangeTextType(), PDF_PLOTTER::ClosePage(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), drawBacksideTicks(), drawTicksAlongLine(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), AUTOPLACER::fitFieldsBetweenWires(), MARKER_BASE::GetBoundingBoxMarker(), PCB_REFERENCE_IMAGE::GetEffectiveShape(), EDIT_TOOL::getSafeMovement(), EE_SELECTION_TOOL::GuessSelectionCandidates(), SCH_JUNCTION::HitTest(), PCB_SELECTION_TOOL::hitTestDistance(), BOX2< Vec >::Merge(), LABEL_MANAGER::nearestBoxCorner(), PCB_SHAPE::Normalize(), SVG_PLOTTER::Rect(), KIGFX::VIEW::Redraw(), and EDIT_TOOL::Rotate().
|
inline |
Definition at line 190 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
Referenced by SHAPE_INDEX< T >::Add(), AR_AUTOPLACER::addPad(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), PCB_TEXT::buildBoundingHull(), CN_ZONE_LAYER::BuildRTree(), DRC_RTREE::CheckColliding(), ClipLine(), clipOutCode(), BOX2< Vec >::ClosestPointTo(), CN_ZONE_LAYER::Collide(), TEST_BOARD_ITEM_FIXTURE::CompareItems(), TEST_EE_ITEM_FIXTURE::CompareItems(), EE_RTREE::contains(), ConvertPolygonToBlocks(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), SCH_SYMBOL::doGetBoundingBox(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawDimension(), DRC_RTREE::DRC_LAYER::DRC_LAYER(), EE_RTREE::EE_TYPE::EE_TYPE(), PDF_PLOTTER::EndPlot(), BOX2< Vec >::FarthestPointTo(), AUTOPLACER::fieldBoxPlacement(), AUTOPLACER::fieldHPlacement(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), PLACE_FILE_EXPORTER::GenReportData(), PCB_TEXTBOX::GetAnchorAndOppositeCorner(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_TRACK::GetBoundingBox(), KIFONT::OUTLINE_FONT::getBoundingBox(), LIB_TEXTBOX::GetDrawPos(), SCH_TEXTBOX::GetDrawPos(), BOX2< Vec >::GetEnd(), SCH_SHEET::GetMinWidth(), DRC_RTREE::Insert(), EE_RTREE::insert(), CN_RTREE< T >::Insert(), KIGFX::VIEW_RTREE::Insert(), KIGFX::SCH_PAINTER::knockoutText(), PNS::NODE::NearestObstacle(), DIALOG_MOVE_EXACT::OnTextChanged(), CN_RTREE< T >::Query(), KIGFX::VIEW_RTREE::Query(), SHAPE_INDEX< T >::Query(), DRC_RTREE::QueryColliding(), DRC_RTREE::QueryCollidingPairs(), DIALOG_PAD_PROPERTIES::redraw(), SHAPE_INDEX< T >::Reindex(), EE_RTREE::remove(), CN_RTREE< T >::Remove(), SHAPE_INDEX< T >::Remove(), KIGFX::VIEW::SetCenter(), SHAPE_POLY_SET::SHAPE_POLY_SET(), PNS::WALKAROUND::singleStep(), PCB_POINT_EDITOR::updateItem(), and KIGFX::WX_VIEW_CONTROLS::UpdateScrollbars().
|
inline |
Definition at line 180 of file box2.h.
References BOX2< Vec >::m_Size.
Referenced by PNS_PCBNEW_DEBUG_DECORATOR::AddShape(), BOOST_AUTO_TEST_CASE(), KIFONT::OUTLINE_GLYPH::BoundingBox(), PNS::ConvexHull(), LTSPICE_SCH_PARSER::CreateKicadSYMBOLs(), COMMON_TOOLS::doZoomFit(), KIGFX::PCB_PAINTER::draw(), drawBacksideTicks(), drawShapes(), drawTicksAlongLine(), SYMBOL_EDITOR_CONTROL::ExportSymbolAsSVG(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), PCB_SELECTION_TOOL::FindItem(), FOOTPRINT_PREVIEW_PANEL::fitToCurrentFootprint(), MARKER_BASE::GetBoundingBoxMarker(), EDIT_TOOL::getSafeMovement(), ROUTER_TOOL::handleCommonEvents(), PCB_SELECTION_TOOL::hitTestDistance(), idf_export_outline(), initializePlotter(), BOARD_ADAPTER::InitSettings(), ROUTER_TOOL::InlineDrag(), CADSTAR_SCH_ARCHIVE_LOADER::Load(), LTSPICE_SCHEMATIC::Load(), SCH_EAGLE_PLUGIN::loadSheet(), BOX2< Vec >::Merge(), operator<<(), DIALOG_PAD_PROPERTIES::padValuesOK(), LTSPICE_SCH_PARSER::Parse(), PCB_EASYEDAPRO_PARSER::ParseBoard(), playground_main_func(), SVG_PLOTTER::Rect(), KIGFX::VIEW::Redraw(), DIALOG_PAD_PROPERTIES::redraw(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), KIGFX::VIEW::SetViewport(), KIFONT::FONT::StringBoundaryLimits(), PAD::ViewBBox(), DS_PROXY_VIEW_ITEM::ViewDraw(), PCB_TRACK::ViewGetLOD(), EE_SELECTION_TOOL::ZoomFitCrossProbeBBox(), PCB_SELECTION_TOOL::ZoomFitCrossProbeBBox(), PANEL_PCBNEW_COLOR_SETTINGS::zoomFitPreview(), and PCB_SELECTION_TOOL::zoomFitSelection().
|
inline |
Definition at line 201 of file box2.h.
References BOX2< Vec >::m_Size.
Referenced by BOARD_ADAPTER::addShape(), SCH_LABEL_BASE::AutoplaceFields(), and ZONE_FILLER::fillCopperZone().
|
inline |
Definition at line 195 of file box2.h.
References BOX2< Vec >::GetY().
Referenced by AR_AUTOPLACER::addPad(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), FOOTPRINT::AutoPositionFields(), BOX2< Vec >::ClosestPointTo(), TEST_BOARD_ITEM_FIXTURE::CompareItems(), TEST_EE_ITEM_FIXTURE::CompareItems(), ConvertPolygonToBlocks(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), AUTOPLACER::DoAutoplace(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawDimension(), PDF_PLOTTER::EndPlot(), BOX2< Vec >::FarthestPointTo(), AUTOPLACER::fieldBoxPlacement(), PCB_TEXTBOX::GetAnchorAndOppositeCorner(), PCB_TRACK::GetBoundingBox(), LIB_TEXTBOX::GetDrawPos(), SCH_TEXTBOX::GetDrawPos(), SCH_SHEET::GetMinHeight(), PL_SELECTION::GetTopLeftItem(), KIGFX::SCH_PAINTER::knockoutText(), PNS::NODE::NearestObstacle(), KIGFX::WX_VIEW_CONTROLS::onScroll(), DIALOG_MOVE_EXACT::OnTextChanged(), LTSPICE_SCH_PARSER::Parse(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSchematic(), DIALOG_PAD_PROPERTIES::redraw(), KIGFX::VIEW::SetCenter(), SHAPE_POLY_SET::SHAPE_POLY_SET(), PNS::WALKAROUND::singleStep(), PCB_POINT_EDITOR::updateItem(), KIGFX::WX_VIEW_CONTROLS::UpdateScrollbars(), and DS_PROXY_VIEW_ITEM::ViewDraw().
|
inline |
Definition at line 188 of file box2.h.
References BOX2< Vec >::m_Size.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), GERBER_JOBFILE_WRITER::addJSONGeneralSpecs(), AUTOPLACE_TOOL::autoplace(), BOOST_AUTO_TEST_CASE(), LABEL_MANAGER::boxMtv(), KIGFX::SCH_PAINTER::boxText(), buildBoardBoundingBoxPoly(), BuildBoardPolygonOutlines(), PNS::DP_GATEWAYS::BuildFromPrimitivePair(), ZONE_FILLER::buildThermalSpokes(), EAGLE_PLUGIN::centerBoard(), COMMON_TOOLS::CenterContents(), AUTOPLACER::computeFBoxSize(), AR_MATRIX::ComputeMatrixSize(), PNS::ConvexHull(), GENCAD_EXPORTER::CreateComponentsSection(), SCH_GLOBALLABEL::CreateGraphicShape(), PNS::OPTIMIZER::customBreakouts(), EDIT_TOOL::doMoveSelection(), EESCHEMA_JOBS_HANDLER::doSymExportSvg(), PCB_SELECTION_TOOL::doSyncSelection(), COMMON_TOOLS::doZoomFit(), KIGFX::PCB_PAINTER::draw(), DRAWING_TOOL::DrawBoardCharacteristics(), DRAWING_TOOL::DrawDimension(), BOARD_PRINTOUT::DrawPage(), HPGL_PLOTTER::EndPlot(), BOARD_NETLIST_UPDATER::estimateFootprintInsertionPosition(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), AUTOPLACER::fieldBoxPlacement(), PCB_SELECTION_TOOL::FindItem(), SYMBOL_PREVIEW_WIDGET::fitOnDrawArea(), PCB_BASE_FRAME::FocusOnItems(), EDA_DRAW_FRAME::FocusOnLocation(), GENDRILL_WRITER_BASE::genDrillMapFile(), AR_AUTOPLACER::genPlacementRoutingMatrix(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), BOX2< Vec >::GetArea(), FOOTPRINT::GetArea(), PCB_BASE_FRAME::GetBoardBoundingBox(), SCH_HIERLABEL::GetBodyBoundingBox(), GERBER_DRAW_ITEM::GetBoundingBox(), DIALOG_BOARD_STATISTICS::getDataFromPCB(), PCB_REFERENCE_IMAGE::GetEffectiveShape(), EDA_TEXT::GetEffectiveTextShape(), BOARD::GetFootprint(), NL_SCHEMATIC_PLUGIN_IMPL::GetModelExtents(), NL_PCBNEW_PLUGIN_IMPL::GetModelExtents(), AUTOPLACER::getPreferredSides(), D_CODE::GetShapeDim(), EDA_TEXT::GetTextBox(), NL_SCHEMATIC_PLUGIN_IMPL::GetViewExtents(), NL_PCBNEW_PLUGIN_IMPL::GetViewExtents(), EE_SELECTION_TOOL::GuessSelectionCandidates(), SCH_JUNCTION::HitTest(), PCB_SELECTION_TOOL::hitTestDistance(), BOARD_ADAPTER::InitSettings(), BOX2< Vec >::Intersects(), CADSTAR_PCB_ARCHIVE_PLUGIN::LoadBoard(), SCH_EAGLE_PLUGIN::loadSchematic(), DSN::SPECCTRA_DB::makePADSTACK(), SIM_MODEL::MigrateSimModel(), LABEL_MANAGER::nearestBoxCorner(), NL_PCBNEW_PLUGIN_IMPL::NL_PCBNEW_PLUGIN_IMPL(), LIB_TEXT::NormalizeJustification(), DIALOG_PIN_PROPERTIES::OnPaintShowPanel(), DIALOG_PAD_PROPERTIES::padValuesOK(), ALTIUM_PCB::Parse(), LTSPICE_SCH_PARSER::Parse(), ALTIUM_PCB::ParsePolygons6Data(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSchematic(), partitionPolyIntoRegularCellGrid(), EXPORT_SVG::Plot(), SCH_SYMBOL::PlotDNP(), SCH_SYMBOL::Print(), SCH_PRINTOUT::PrintPage(), KIGFX::VIEW::Redraw(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), PNS_LOG_VIEWER_FRAME::SetBoard2(), NL_SCHEMATIC_PLUGIN_IMPL::SetCanvas(), KIGFX::VIEW::SetCenter(), PNS_LOG_VIEWER_FRAME::SetLogFile(), NL_SCHEMATIC_PLUGIN_IMPL::SetViewExtents(), NL_PCBNEW_PLUGIN_IMPL::SetViewExtents(), SpreadFootprints(), EE_SELECTION_TOOL::SyncSelection(), PolygonTriangulation::TesselatePolygon(), PCB_DIM_LEADER::updateGeometry(), PCB_POINT_EDITOR::updateItem(), KIGFX::WX_VIEW_CONTROLS::UpdateScrollbars(), DS_PROXY_VIEW_ITEM::ViewDraw(), GERBER_DRAW_ITEM::ViewGetLOD(), EE_SELECTION_TOOL::ZoomFitCrossProbeBBox(), PCB_SELECTION_TOOL::ZoomFitCrossProbeBBox(), PANEL_PCBNEW_COLOR_SETTINGS::zoomFitPreview(), PCB_SELECTION_TOOL::zoomFitSelection(), PolygonTriangulation::zOrder(), and POLYGON_TEST::zOrder().
|
inline |
Definition at line 181 of file box2.h.
References BOX2< Vec >::m_Pos.
Referenced by SHAPE_INDEX< T >::Add(), KIGFX::SCH_PAINTER::boxText(), CN_ZONE_LAYER::BuildRTree(), EAGLE_PLUGIN::centerBoard(), DRC_RTREE::CheckColliding(), ClipLine(), CN_ZONE_LAYER::Collide(), AR_MATRIX::ComputeMatrixSize(), EE_RTREE::contains(), PNS::ConvexHull(), AR_MATRIX::CreateKeepOutRectangle(), SCH_SYMBOL::doGetBoundingBox(), KIGFX::SCH_PAINTER::draw(), DRC_RTREE::DRC_LAYER::DRC_LAYER(), EE_RTREE::EE_TYPE::EE_TYPE(), HPGL_PLOTTER::EndPlot(), GENDRILL_WRITER_BASE::genDrillMapFile(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), PLACE_FILE_EXPORTER::GenReportData(), PCB_DIMENSION_BASE::GetBoundingBox(), KIFONT::OUTLINE_FONT::getBoundingBox(), BOARD::GetFootprint(), BOX2< Vec >::GetLeft(), EDA_TEXT::GetTextBox(), DRC_RTREE::Insert(), EE_RTREE::insert(), CN_RTREE< T >::Insert(), KIGFX::VIEW_RTREE::Insert(), CADSTAR_PCB_ARCHIVE_PLUGIN::LoadBoard(), ALTIUM_PCB::Parse(), partitionPolyIntoRegularCellGrid(), CN_RTREE< T >::Query(), KIGFX::VIEW_RTREE::Query(), SHAPE_INDEX< T >::Query(), DRC_RTREE::QueryColliding(), DRC_RTREE::QueryCollidingPairs(), SHAPE_INDEX< T >::Reindex(), EE_RTREE::remove(), CN_RTREE< T >::Remove(), SHAPE_INDEX< T >::Remove(), PolygonTriangulation::zOrder(), and POLYGON_TEST::zOrder().
|
inline |
Definition at line 182 of file box2.h.
References BOX2< Vec >::m_Pos.
Referenced by SHAPE_INDEX< T >::Add(), KIGFX::SCH_PAINTER::boxText(), CN_ZONE_LAYER::BuildRTree(), EAGLE_PLUGIN::centerBoard(), DRC_RTREE::CheckColliding(), ClipLine(), CN_ZONE_LAYER::Collide(), AR_MATRIX::ComputeMatrixSize(), EE_RTREE::contains(), PNS::ConvexHull(), AR_MATRIX::CreateKeepOutRectangle(), SCH_SYMBOL::doGetBoundingBox(), KIGFX::SCH_PAINTER::draw(), DRC_RTREE::DRC_LAYER::DRC_LAYER(), EE_RTREE::EE_TYPE::EE_TYPE(), HPGL_PLOTTER::EndPlot(), AR_AUTOPLACER::fillMatrix(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), PLACE_FILE_EXPORTER::GenReportData(), PCB_DIMENSION_BASE::GetBoundingBox(), KIFONT::OUTLINE_FONT::getBoundingBox(), BOARD::GetFootprint(), EDA_TEXT::GetTextBox(), BOX2< Vec >::GetTop(), DRC_RTREE::Insert(), EE_RTREE::insert(), CN_RTREE< T >::Insert(), KIGFX::VIEW_RTREE::Insert(), CADSTAR_PCB_ARCHIVE_PLUGIN::LoadBoard(), SCH_EAGLE_PLUGIN::loadSchematic(), ALTIUM_PCB::Parse(), partitionPolyIntoRegularCellGrid(), CN_RTREE< T >::Query(), KIGFX::VIEW_RTREE::Query(), SHAPE_INDEX< T >::Query(), DRC_RTREE::QueryColliding(), DRC_RTREE::QueryCollidingPairs(), SHAPE_INDEX< T >::Reindex(), EE_RTREE::remove(), CN_RTREE< T >::Remove(), SHAPE_INDEX< T >::Remove(), PolygonTriangulation::zOrder(), and POLYGON_TEST::zOrder().
|
inline |
Inflates the rectangle horizontally by dx and vertically by dy.
If dx and/or dy is negative the rectangle is deflated.
Definition at line 507 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
Referenced by AR_AUTOPLACER::addPad(), FOOTPRINT::AutoPositionFields(), SHAPE_ARC::BBox(), SHAPE_LINE_CHAIN::BBox(), SHAPE_POLY_SET::TRIANGULATED_POLYGON::TRI::BBox(), SHAPE_POLY_SET::BBox(), SHAPE_SEGMENT::BBox(), KIGFX::SCH_PAINTER::boxText(), buildBoardBoundingBoxPoly(), BuildBoardPolygonOutlines(), ZONE_FILLER::buildCopperItemClearances(), AR_AUTOPLACER::buildFpAreas(), ZONE_FILLER::buildThermalSpokes(), PNS::LINE::ChangedArea(), SCH_EDIT_TOOL::ChangeTextType(), DRC_RTREE::CheckColliding(), EE_RTREE::contains(), KIGFX::SCH_PAINTER::draw(), drawBacksideTicks(), drawShapes(), drawTicksAlongLine(), DRAWING_TOOL::DrawVia(), SYMBOL_EDITOR_CONTROL::ExportSymbolAsSVG(), ZONE_FILLER::Fill(), FillNegativeKnockout(), EDA_DRAW_FRAME::FocusOnLocation(), SHAPE_LINE_CHAIN::GenerateBBoxCache(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), SCH_LABEL_BASE::GetBodyBoundingBox(), SCH_SHEET::GetBodyBoundingBox(), SCH_LABEL::GetBodyBoundingBox(), BITMAP_BASE::GetBoundingBox(), EDA_SHAPE::getBoundingBox(), SCH_BUS_ENTRY_BASE::GetBoundingBox(), SCH_JUNCTION::GetBoundingBox(), SCH_NO_CONNECT::GetBoundingBox(), GERBER_DRAW_ITEM::GetBoundingBox(), PCB_GROUP::GetBoundingBox(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_TEXT::GetBoundingBox(), LIB_PIN::GetBoundingBox(), FOOTPRINT::GetBoundingBox(), FOOTPRINT_EDIT_FRAME::GetDocumentExtents(), ZONE::GetInteractingZones(), SCH_SCREEN::GetItem(), EE_SELECTION_TOOL::GuessSelectionCandidates(), EDA_SHAPE::hitTest(), LIB_ITEM::HitTest(), LIB_TEXT::HitTest(), SCH_BUS_ENTRY_BASE::HitTest(), SCH_JUNCTION::HitTest(), SCH_LINE::HitTest(), SCH_NO_CONNECT::HitTest(), DS_DRAW_ITEM_BASE::HitTest(), DS_DRAW_ITEM_POLYPOLYGONS::HitTest(), DS_DRAW_ITEM_RECT::HitTest(), PAD::HitTest(), PCB_DIMENSION_BASE::HitTest(), PCB_TARGET::HitTest(), PCB_TRACK::HitTest(), PCB_VIA::HitTest(), PCB_ARC::HitTest(), ZONE::HitTest(), SCH_SHEET::HitTest(), PCB_TEXTBOX::HitTest(), LIB_PIN::HitTest(), LIB_TEXTBOX::HitTest(), SCH_BITMAP::HitTest(), SCH_FIELD::HitTest(), SCH_LABEL_BASE::HitTest(), SCH_PIN::HitTest(), SCH_SHEET_PIN::HitTest(), SCH_SYMBOL::HitTest(), SCH_TEXT::HitTest(), SCH_TEXTBOX::HitTest(), DS_DRAW_ITEM_BITMAP::HitTest(), FOOTPRINT::HitTest(), PCB_REFERENCE_IMAGE::HitTest(), MARKER_BASE::HitTestMarker(), BOX2< Vec >::Inflate(), BOARD_ADAPTER::InitSettings(), DRC_RTREE::Insert(), EE_RTREE::insert(), BOX2< Vec >::Intersects(), ZONE_FILLER::knockoutThermalReliefs(), EE_SELECTION_TOOL::Main(), EE_RTREE::Overlapping(), DRC_RTREE::Overlapping(), SCH_LINE::Plot(), SHAPE_INDEX< T >::Query(), DRC_RTREE::QueryColliding(), DRC_RTREE::QueryCollidingPairs(), DIALOG_PAD_PROPERTIES::redraw(), EE_RTREE::remove(), EE_SELECTION_TOOL::selectionContains(), PL_SELECTION_TOOL::selectionContains(), PCB_SELECTION_TOOL::selectionContains(), PNS_LOG_VIEWER_FRAME::SetBoard2(), PNS_LOG_VIEWER_FRAME::SetLogFile(), SpreadFootprints(), KIFONT::FONT::StringBoundaryLimits(), DRC_INTERACTIVE_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), AR_AUTOPLACER::testFootprintOnBoard(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), AR_AUTOPLACER::testRectangle(), PCB_TEXT::TextHitTest(), EDA_TEXT::TextHitTest(), PCB_DIM_ALIGNED::updateGeometry(), PCB_DIM_ORTHOGONAL::updateGeometry(), PCB_DIM_RADIAL::updateGeometry(), PCB_DIM_LEADER::updateGeometry(), FOOTPRINT::ViewBBox(), PCB_SHAPE::ViewBBox(), PCB_TRACK::ViewBBox(), ROUTER_PREVIEW_ITEM::ViewBBox(), EE_SELECTION_TOOL::ZoomFitCrossProbeBBox(), and PCB_SELECTION_TOOL::ZoomFitCrossProbeBBox().
Inflate the rectangle horizontally and vertically by aDelta.
If aDelta is negative the rectangle is deflated.
Definition at line 578 of file box2.h.
References BOX2< Vec >::Inflate().
Definition at line 301 of file box2.h.
References BOX2< Vec >::m_Pos, BOX2< Vec >::m_Size, and BOX2< Vec >::Normalize().
Definition at line 270 of file box2.h.
References left, BOX2< Vec >::m_Pos, BOX2< Vec >::m_Size, BOX2< Vec >::Normalize(), and right.
Referenced by BOOST_AUTO_TEST_CASE(), LABEL_MANAGER::boxMtv(), ZONE_FILLER::buildCopperItemClearances(), ZONE_FILLER::buildThermalSpokes(), CN_VISITOR::checkZoneZoneConnection(), Collide(), ZONE_FILLER::Fill(), AUTOPLACER::filterCollisions(), PCB_TUNING_PATTERN::HitTest(), EDA_SHAPE::hitTest(), LIB_ITEM::HitTest(), LIB_PIN::HitTest(), LIB_TEXT::HitTest(), LIB_TEXTBOX::HitTest(), SCH_BITMAP::HitTest(), SCH_BUS_ENTRY_BASE::HitTest(), SCH_FIELD::HitTest(), SCH_LABEL_BASE::HitTest(), SCH_LINE::HitTest(), SCH_NO_CONNECT::HitTest(), SCH_PIN::HitTest(), SCH_SHEET::HitTest(), SCH_SYMBOL::HitTest(), SCH_TEXT::HitTest(), SCH_TEXTBOX::HitTest(), DS_DRAW_ITEM_BASE::HitTest(), DS_DRAW_ITEM_POLYPOLYGONS::HitTest(), DS_DRAW_ITEM_RECT::HitTest(), FOOTPRINT::HitTest(), PAD::HitTest(), PCB_DIMENSION_BASE::HitTest(), PCB_REFERENCE_IMAGE::HitTest(), PCB_TARGET::HitTest(), PCB_TEXTBOX::HitTest(), PCB_TRACK::HitTest(), PCB_ARC::HitTest(), ZONE::HitTest(), SHAPE_LINE_CHAIN::Intersect(), BOX2< Vec >::Intersects(), ZONE_FILLER::knockoutThermalReliefs(), FABMASTER::loadZones(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_INTERACTIVE_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), BOARD::TestZoneIntersection(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones(), EDA_TEXT::TextHitTest(), PCB_TEXT::TextHitTest(), and DS_PROXY_VIEW_ITEM::ViewDraw().
|
inline |
Definition at line 353 of file box2.h.
References std::abs(), ANGLE_0, ANGLE_180, ANGLE_270, ANGLE_360, ANGLE_90, BOX2< Vec >::Centre(), BOX2< Vec >::Contains(), DEGREES_T, delta, BOX2< Vec >::GetHeight(), BOX2< Vec >::GetWidth(), BOX2< Vec >::Inflate(), BOX2< Vec >::Intersects(), BOX2< Vec >::m_init, BOX2< Vec >::m_Pos, BOX2< Vec >::m_Size, EDA_ANGLE::Normalize(), RotatePoint(), and BOX2< Vec >::SetOrigin().
|
inline |
Definition at line 324 of file box2.h.
References BOX2< Vec >::Contains(), BOX2< Vec >::GetEnd(), BOX2< Vec >::GetOrigin(), and SegmentIntersectsSegment().
|
inline |
Definition at line 453 of file box2.h.
References BOX2< Vec >::ClosestPointTo(), and BOX2< Vec >::m_init.
Referenced by PCB_VIA::HitTest(), and BOX2< Vec >::IntersectsCircleEdge().
|
inline |
Definition at line 472 of file box2.h.
References BOX2< Vec >::FarthestPointTo(), BOX2< Vec >::IntersectsCircle(), BOX2< Vec >::m_init, and BOX2< Vec >::Normalize().
Referenced by EDA_SHAPE::hitTest().
|
inline |
Definition at line 840 of file box2.h.
References BOX2< Vec >::m_init.
Modify the position and size of the rectangle in order to contain aRect.
aRect | is the rectangle to merge with this rectangle. |
Definition at line 589 of file box2.h.
References BOX2< Vec >::GetEnd(), BOX2< Vec >::GetPosition(), BOX2< Vec >::GetSize(), BOX2< Vec >::m_init, BOX2< Vec >::m_Pos, BOX2< Vec >::m_Size, BOX2< Vec >::Normalize(), and BOX2< Vec >::SetEnd().
Referenced by SHAPE_LINE_CHAIN::Append(), HPGL_PLOTTER::Arc(), SHAPE_COMPOUND::BBox(), SHAPE_POLY_SET::TRIANGULATED_POLYGON::TRI::BBox(), SHAPE_POLY_SET::BBox(), SHAPE_POLY_SET::BBoxFromCaches(), PAD::BuildEffectiveShapes(), PNS::ARC::ChangedArea(), PNS::VIA::ChangedArea(), HPGL_PLOTTER::Circle(), EDA_SHAPE::computeArcBBox(), GBR_LAYOUT::ComputeBoundingBox(), BOARD::ComputeBoundingBox(), SCH_SYMBOL::doGetBoundingBox(), EDIT_TOOL::doMoveSelection(), drawMarkup(), drawShapes(), HPGL_PLOTTER::EndPlot(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), PNS::extendBox(), AUTOPLACER::fieldBoxPlacement(), ZONE_FILLER::fillCopperZone(), SCH_LABEL_BASE::GetBodyBoundingBox(), SCH_LABEL::GetBodyBoundingBox(), LIB_SYMBOL::GetBodyBoundingBox(), EDA_SHAPE::getBoundingBox(), SELECTION::GetBoundingBox(), SCH_LABEL_BASE::GetBoundingBox(), SCH_SHEET::GetBoundingBox(), EE_SELECTION::GetBoundingBox(), PCB_GROUP::GetBoundingBox(), NETINFO_ITEM::GetBoundingBox(), FOOTPRINT::GetBoundingBox(), SELECTION::GetCenter(), GERBVIEW_SELECTION::GetCenter(), DIALOG_BOARD_STATISTICS::getDataFromPCB(), SCH_EDIT_FRAME::GetDocumentExtents(), FOOTPRINT::GetFpPadsLocalBbox(), SVG_IMPORT_PLUGIN::GetImageBBox(), FOOTPRINT::GetLayerBoundingBox(), AUTOPLACER::getPossibleCollisions(), getSheetBbox(), PNS_TEST_DEBUG_DECORATOR::GetStageExtents(), KIFONT::OUTLINE_FONT::getTextAsGlyphsUnlocked(), LIB_SYMBOL::GetUnitBoundingBox(), PCB_ARC::HitTest(), CADSTAR_SCH_ARCHIVE_LOADER::Load(), EDIT_TOOL::PackAndMoveFootprints(), LTSPICE_SCH_PARSER::Parse(), PCB_EASYEDAPRO_PARSER::ParseBoard(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_EASYEDA_PARSER::ParseSchematic(), HPGL_PLOTTER::PenTo(), playground_main_func(), EDIT_TOOL::Rotate(), SHAPE_LINE_CHAIN::Slice(), SpreadFootprints(), LTSPICE_SCHEMATIC::StructureBuilder(), SCH_EDIT_FRAME::TrimWire(), GERBVIEW_SELECTION::ViewBBox(), EDIT_POINTS::ViewBBox(), KIGFX::VIEW_GROUP::ViewBBox(), PCB_DIMENSION_BASE::ViewBBox(), and ROUTER_PREVIEW_ITEM::ViewBBox().
Modify the position and size of the rectangle in order to contain the given point.
aPoint | is the point to merge with the rectangle. |
Definition at line 623 of file box2.h.
References BOX2< Vec >::GetEnd(), BOX2< Vec >::m_init, BOX2< Vec >::m_Pos, BOX2< Vec >::m_Size, BOX2< Vec >::Normalize(), and BOX2< Vec >::SetEnd().
|
inline |
Move the rectangle by the aMoveVector.
aMoveVector | is a point that is the value to move this rectangle. |
Definition at line 112 of file box2.h.
References BOX2< Vec >::m_Pos.
Referenced by LABEL_MANAGER::boxMtv(), ZONE_FILLER::buildThermalSpokes(), SCH_BITMAP::GetBoundingBox(), SCH_FIELD::GetBoundingBox(), AR_AUTOPLACER::getOptimalFPPlacement(), SHAPE_LINE_CHAIN::Move(), FOOTPRINT::MoveAnchorPosition(), DIALOG_PAD_PROPERTIES::redraw(), FOOTPRINT::SetPosition(), and AR_AUTOPLACER::testFootprintOnBoard().
Ensure that the height and width are positive.
Definition at line 120 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
Referenced by BOOST_AUTO_TEST_CASE(), BOX2< Vec >::BOX2(), LABEL_MANAGER::boxMtv(), KIGFX::SCH_PAINTER::boxText(), BOX2< Vec >::ClosestPointTo(), GBR_LAYOUT::ComputeBoundingBox(), PNS::ConvexHull(), SCH_SYMBOL::doGetBoundingBox(), BOX2< Vec >::FarthestPointTo(), PCB_TEXTBOX::GetAnchorAndOppositeCorner(), SCH_LABEL_BASE::GetBodyBoundingBox(), SCH_LABEL::GetBodyBoundingBox(), SCH_HIERLABEL::GetBodyBoundingBox(), EDA_SHAPE::getBoundingBox(), SCH_BUS_ENTRY_BASE::GetBoundingBox(), SCH_FIELD::GetBoundingBox(), SCH_LABEL_BASE::GetBoundingBox(), SCH_TEXT::GetBoundingBox(), GERBER_DRAW_ITEM::GetBoundingBox(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_DIM_CENTER::GetBoundingBox(), LIB_PIN::GetBoundingBox(), KIFONT::OUTLINE_FONT::getBoundingBox(), SCH_TEXTBOX::GetDrawPos(), NL_SCHEMATIC_PLUGIN_IMPL::GetModelExtents(), NL_PCBNEW_PLUGIN_IMPL::GetModelExtents(), KIFONT::STROKE_FONT::GetTextAsGlyphs(), EDA_TEXT::GetTextBox(), KIGFX::VIEW::GetViewport(), EDA_SHAPE::hitTest(), PAD::HitTest(), ZONE::HitTest(), BOX2< Vec >::Intersect(), BOX2< Vec >::Intersects(), BOX2< Vec >::IntersectsCircleEdge(), BOX2< Vec >::Merge(), PCB_SHAPE::Normalize(), EDIT_TOOL::PackAndMoveFootprints(), primitiveNeedsUpdate(), SVG_PLOTTER::Rect(), KIGFX::VIEW::Redraw(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), BOX2< Vec >::RevertYAxis(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), shapeNeedsUpdate(), STROKE_PARAMS::Stroke(), KIGFX::PREVIEW::SELECTION_AREA::ViewBBox(), KIGFX::ORIGIN_VIEWITEM::ViewDraw(), EE_SELECTION_TOOL::ZoomFitCrossProbeBBox(), and PCB_SELECTION_TOOL::ZoomFitCrossProbeBBox().
|
inline |
Definition at line 231 of file box2.h.
References BOX2< Vec >::Offset().
|
inline |
Definition at line 225 of file box2.h.
References BOX2< Vec >::m_Pos.
Referenced by ZONE_FILLER::buildThermalSpokes(), LTSPICE_SCH_PARSER::CreateKicadSYMBOLs(), SCH_SYMBOL::doGetBoundingBox(), KIGFX::SCH_PAINTER::draw(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), SCH_LABEL::GetBodyBoundingBox(), SCH_LABEL_BASE::GetBoundingBox(), SCH_PIN::GetBoundingBox(), EDA_TEXT::GetTextBox(), SCH_FIELD::HitTest(), SCH_LABEL_BASE::HitTest(), BOX2< Vec >::Offset(), and SCH_FIELD::Plot().
|
inline |
|
inline |
Mirror the rectangle from the X axis (negate Y pos and size).
Definition at line 690 of file box2.h.
References BOX2< Vec >::m_Pos, BOX2< Vec >::m_Size, and BOX2< Vec >::Normalize().
Referenced by KIGFX::SCH_PAINTER::boxText(), KIGFX::SCH_PAINTER::draw(), LIB_FIELD::GetBoundingBox(), LIB_SHAPE::GetBoundingBox(), LIB_TEXT::GetBoundingBox(), LIB_PIN::GetBoundingBox(), SCH_PIN::GetBoundingBox(), LIB_TEXT::HitTest(), LIB_FIELD::Plot(), LIB_TEXT::Plot(), and LIB_TEXT::print().
|
inline |
Definition at line 261 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::SetSize().
|
inline |
Definition at line 256 of file box2.h.
References BOX2< Vec >::SetEnd().
Referenced by PCB_GRID_HELPER::BestSnapAnchor(), PDF_PLOTTER::ClosePage(), AR_MATRIX::ComputeMatrixSize(), PCB_BASE_FRAME::GetBoardBoundingBox(), SCH_SHEET::GetBodyBoundingBox(), SCH_LABEL::GetBodyBoundingBox(), EDA_SHAPE::getBoundingBox(), LIB_FIELD::GetBoundingBox(), LIB_TEXT::GetBoundingBox(), SCH_BUS_ENTRY_BASE::GetBoundingBox(), SCH_FIELD::GetBoundingBox(), SCH_TEXT::GetBoundingBox(), GERBER_DRAW_ITEM::GetBoundingBox(), LIB_PIN::GetBoundingBox(), KIFONT::OUTLINE_FONT::getBoundingBox(), BOX2< Vec >::GetBoundingBoxRotated(), DXF_IMPORT_PLUGIN::GetImageBBox(), SVG_IMPORT_PLUGIN::GetImageBBox(), KIFONT::OUTLINE_FONT::GetTextAsGlyphs(), KIFONT::STROKE_FONT::GetTextAsGlyphs(), KIGFX::VIEW::GetViewport(), MARKER_BASE::MARKER_BASE(), BOX2< Vec >::Merge(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), BOX2< Vec >::SetEnd(), TRANSFORM::TransformCoordinate(), DS_PROXY_VIEW_ITEM::ViewBBox(), KIGFX::PREVIEW::SELECTION_AREA::ViewBBox(), and EDIT_POINTS::ViewBBox().
|
inline |
Definition at line 251 of file box2.h.
References BOX2< Vec >::m_Size, and BOX2< Vec >::SetSize().
Referenced by SCH_SYMBOL::doGetBoundingBox(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_DIM_CENTER::GetBoundingBox(), PCB_TARGET::GetBoundingBox(), DS_DRAW_ITEM_RECT::HitTest(), PARAM_VIEWPORT::jsonToViewports(), PNS_LOG_VIEWER_FRAME::SetBoard2(), and PNS_LOG_VIEWER_FRAME::SetLogFile().
|
inline |
Definition at line 64 of file box2.h.
References BOX2< Vec >::m_init, BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
Referenced by KIGFX::VIEW::Clear(), KIGFX::VIEW::clearGroupCache(), KIGFX::VIEW_RTREE::Query(), KIGFX::VIEW::RecacheAllItems(), KIGFX::VIEW::Redraw(), PNS::ROUTER::ROUTER(), EE_SELECTION_TOOL::SelectAll(), PCB_SELECTION_TOOL::SelectAll(), EE_SELECTION_TOOL::UnselectAll(), PCB_SELECTION_TOOL::UnselectAll(), KIGFX::VIEW::UpdateLayerColor(), DS_PROXY_VIEW_ITEM::ViewBBox(), KIGFX::ORIGIN_VIEWITEM::ViewBBox(), KIGFX::PREVIEW::ARC_ASSISTANT::ViewBBox(), KIGFX::PREVIEW::RULER_ITEM::ViewBBox(), KIGFX::PREVIEW::TWO_POINT_ASSISTANT::ViewBBox(), SELECTION::ViewBBox(), KIGFX::VIEW_GROUP::ViewBBox(), KIGFX::VIEW_OVERLAY::ViewBBox(), TUNING_STATUS_VIEW_ITEM::ViewBBox(), RATSNEST_VIEW_ITEM::ViewBBox(), and MY_DRAWING::ViewBBox().
|
inline |
Definition at line 203 of file box2.h.
References BOX2< Vec >::m_init, and BOX2< Vec >::m_Pos.
Referenced by LABEL_MANAGER::Add(), PCB_GRID_HELPER::BestSnapAnchor(), BOOST_AUTO_TEST_CASE(), PDF_PLOTTER::ClosePage(), BOX2< Vec >::Compute(), EDA_SHAPE::computeArcBBox(), AUTOPLACER::fitFieldsBetweenWires(), PCB_BASE_FRAME::GetBoardBoundingBox(), SCH_LABEL::GetBodyBoundingBox(), EDA_SHAPE::getBoundingBox(), LIB_FIELD::GetBoundingBox(), LIB_TEXT::GetBoundingBox(), SCH_FIELD::GetBoundingBox(), SCH_TEXT::GetBoundingBox(), GERBER_DRAW_ITEM::GetBoundingBox(), DS_DRAW_ITEM_BITMAP::GetBoundingBox(), LIB_PIN::GetBoundingBox(), KIFONT::OUTLINE_FONT::getBoundingBox(), BOX2< Vec >::GetBoundingBoxRotated(), DXF_IMPORT_PLUGIN::GetImageBBox(), SVG_IMPORT_PLUGIN::GetImageBBox(), SCH_SCREEN::GetItem(), AR_AUTOPLACER::getOptimalFPPlacement(), KIFONT::OUTLINE_FONT::GetTextAsGlyphs(), KIFONT::STROKE_FONT::GetTextAsGlyphs(), EDA_TEXT::GetTextBox(), KIGFX::VIEW::GetViewport(), KIGFX::GAL::GetVisibleWorldExtents(), BOX2< Vec >::Intersects(), MARKER_BASE::MARKER_BASE(), LTSPICE_SCH_PARSER::Parse(), KIGFX::PCB_VIEW::PCB_VIEW(), KIGFX::PCB_PAINTER::renderNetNameForSegment(), KIGFX::SCH_VIEW::ResizeSheetWorkingArea(), KIGFX::SCH_VIEW::SCH_VIEW(), PNS_LOG_VIEWER_FRAME::SetBoard2(), PNS_LOG_VIEWER_FRAME::SetLogFile(), BOX2< Vec >::SetOrigin(), BOX2< Vec >::SetX(), BOX2< Vec >::SetY(), SYMBOL_DIFF_FRAME::SYMBOL_DIFF_FRAME(), SYMBOL_EDIT_FRAME::SYMBOL_EDIT_FRAME(), SYMBOL_VIEWER_FRAME::SYMBOL_VIEWER_FRAME(), TRANSFORM::TransformCoordinate(), KIGFX::VIEW::VIEW(), DS_PROXY_VIEW_ITEM::ViewBBox(), KIGFX::PREVIEW::SELECTION_AREA::ViewBBox(), EDIT_POINTS::ViewBBox(), and DS_PROXY_VIEW_ITEM::ViewDraw().
|
inline |
Definition at line 209 of file box2.h.
References BOX2< Vec >::SetOrigin().
|
inline |
Definition at line 214 of file box2.h.
References BOX2< Vec >::m_init, and BOX2< Vec >::m_Size.
Referenced by LABEL_MANAGER::Add(), BOOST_AUTO_TEST_CASE(), BOX2< Vec >::Compute(), DS_DRAW_ITEM_BITMAP::GetBoundingBox(), EDA_TEXT::GetTextBox(), KIGFX::GAL::GetVisibleWorldExtents(), LTSPICE_SCH_PARSER::Parse(), KIGFX::PCB_VIEW::PCB_VIEW(), KIGFX::SCH_VIEW::ResizeSheetWorkingArea(), KIGFX::SCH_VIEW::SCH_VIEW(), BOX2< Vec >::SetEnd(), BOX2< Vec >::SetHeight(), BOX2< Vec >::SetSize(), BOX2< Vec >::SetWidth(), SYMBOL_DIFF_FRAME::SYMBOL_DIFF_FRAME(), SYMBOL_EDIT_FRAME::SYMBOL_EDIT_FRAME(), SYMBOL_VIEWER_FRAME::SYMBOL_VIEWER_FRAME(), and KIGFX::VIEW::VIEW().
|
inline |
Definition at line 220 of file box2.h.
References BOX2< Vec >::SetSize().
|
inline |
Definition at line 246 of file box2.h.
References BOX2< Vec >::m_Size, and BOX2< Vec >::SetSize().
Referenced by SCH_SYMBOL::doGetBoundingBox(), DS_DRAW_ITEM_TEXT::GetApproxBBox(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_DIM_CENTER::GetBoundingBox(), PCB_TARGET::GetBoundingBox(), DS_DRAW_ITEM_RECT::HitTest(), PARAM_VIEWPORT::jsonToViewports(), PNS_LOG_VIEWER_FRAME::SetBoard2(), and PNS_LOG_VIEWER_FRAME::SetLogFile().
|
inline |
Definition at line 236 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::SetOrigin().
Referenced by KIGFX::SCH_PAINTER::boxText(), AR_MATRIX::ComputeMatrixSize(), SCH_SYMBOL::doGetBoundingBox(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_DIM_CENTER::GetBoundingBox(), PCB_TARGET::GetBoundingBox(), EDA_TEXT::GetTextBox(), DS_DRAW_ITEM_RECT::HitTest(), and PARAM_VIEWPORT::jsonToViewports().
|
inline |
Definition at line 241 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::SetOrigin().
Referenced by KIGFX::SCH_PAINTER::boxText(), AR_MATRIX::ComputeMatrixSize(), SCH_SYMBOL::doGetBoundingBox(), PCB_DIMENSION_BASE::GetBoundingBox(), PCB_DIM_CENTER::GetBoundingBox(), PCB_TARGET::GetBoundingBox(), EDA_TEXT::GetTextBox(), DS_DRAW_ITEM_RECT::HitTest(), and PARAM_VIEWPORT::jsonToViewports().
|
inline |
Return the square of the minimum distance between self and box aBox.
aBox | is the other box. |
Definition at line 739 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
|
inline |
Definition at line 717 of file box2.h.
References BOX2< Vec >::m_Pos, and BOX2< Vec >::m_Size.
Referenced by BOX2< Vec >::Distance(), and SHAPE_INDEX_LIST< T, >::Query().
|
private |
Definition at line 849 of file box2.h.
Referenced by BOX2< Vec >::Intersects(), BOX2< Vec >::IntersectsCircle(), BOX2< Vec >::IntersectsCircleEdge(), BOX2< Vec >::IsValid(), BOX2< Vec >::Merge(), BOX2< Vec >::SetMaximum(), BOX2< Vec >::SetOrigin(), and BOX2< Vec >::SetSize().
|
private |
Definition at line 846 of file box2.h.
Referenced by BOX2< Vec >::Centre(), BOX2< Vec >::Contains(), BOX2< Vec >::Format(), BOX2< Vec >::GetBottom(), BOX2< Vec >::GetOrigin(), BOX2< Vec >::GetPosition(), BOX2< Vec >::GetRight(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), BOX2< Vec >::Inflate(), BOX2< Vec >::Intersect(), BOX2< Vec >::Intersects(), BOX2< Vec >::Merge(), BOX2< Vec >::Move(), BOX2< Vec >::Normalize(), BOX2< Vec >::Offset(), BOX2< Vec >::RevertYAxis(), BOX2< Vec >::SetEnd(), BOX2< Vec >::SetMaximum(), BOX2< Vec >::SetOrigin(), BOX2< Vec >::SetX(), BOX2< Vec >::SetY(), and BOX2< Vec >::SquaredDistance().
|
private |
Definition at line 847 of file box2.h.
Referenced by BOX2< Vec >::Centre(), BOX2< Vec >::Contains(), BOX2< Vec >::Diagonal(), BOX2< Vec >::Format(), BOX2< Vec >::GetBottom(), BOX2< Vec >::GetHeight(), BOX2< Vec >::GetRight(), BOX2< Vec >::GetSize(), BOX2< Vec >::GetSizeMax(), BOX2< Vec >::GetWidth(), BOX2< Vec >::Inflate(), BOX2< Vec >::Intersect(), BOX2< Vec >::Intersects(), BOX2< Vec >::Merge(), BOX2< Vec >::Normalize(), BOX2< Vec >::RevertYAxis(), BOX2< Vec >::SetHeight(), BOX2< Vec >::SetMaximum(), BOX2< Vec >::SetSize(), BOX2< Vec >::SetWidth(), and BOX2< Vec >::SquaredDistance().