KiCad PCB EDA Suite
|
#include <footprint.h>
Classes | |
struct | cmp_drawings |
struct | cmp_pads |
struct | cmp_zones |
Public Member Functions | |
FOOTPRINT (BOARD *parent) | |
FOOTPRINT (const FOOTPRINT &aFootprint) | |
FOOTPRINT (FOOTPRINT &&aFootprint) | |
~FOOTPRINT () | |
FOOTPRINT & | operator= (const FOOTPRINT &aOther) |
FOOTPRINT & | operator= (FOOTPRINT &&aOther) |
LSET | GetPrivateLayers () const |
void | SetPrivateLayers (LSET aLayers) |
Adds an item to the container. More... | |
void | Add (BOARD_ITEM *aItem, ADD_MODE aMode=ADD_MODE::INSERT, bool aSkipConnectivity=false) override |
Removes an item from the container. More... | |
void | Remove (BOARD_ITEM *aItem, REMOVE_MODE aMode=REMOVE_MODE::NORMAL) override |
Removes an item from the container. More... | |
void | ClearAllNets () |
Clear (i.e. More... | |
bool | FixUuids () |
Old footprints do not always have a valid UUID (some can be set to null uuid) However null UUIDs, having a special meaning in editor, create issues when editing a footprint So all null uuids a re replaced by a valid uuid. More... | |
BOX2I | GetFpPadsLocalBbox () const |
Return the bounding box containing pads when the footprint is on the front side, orientation 0, position 0,0. More... | |
SHAPE_POLY_SET | GetBoundingHull () const |
Return a bounding polygon for the shapes and pads in the footprint. More... | |
const BOX2I | GetBoundingBox () const override |
Return the orthogonal bounding box of this object for display purposes. More... | |
const BOX2I | GetBoundingBox (bool aIncludeText, bool aIncludeInvisibleText) const |
PADS & | Pads () |
const PADS & | Pads () const |
DRAWINGS & | GraphicalItems () |
const DRAWINGS & | GraphicalItems () const |
ZONES & | Zones () |
const ZONES & | Zones () const |
GROUPS & | Groups () |
const GROUPS & | Groups () const |
bool | HasThroughHolePads () const |
std::vector< FP_3DMODEL > & | Models () |
const std::vector< FP_3DMODEL > & | Models () const |
void | SetPosition (const VECTOR2I &aPos) override |
VECTOR2I | GetPosition () const override |
void | SetOrientation (const EDA_ANGLE &aNewAngle) |
EDA_ANGLE | GetOrientation () const |
void | SetLayerAndFlip (PCB_LAYER_ID aLayer) |
Used as Layer property setter – performs a flip if necessary to set the footprint layer. More... | |
PCB_LAYER_ID | GetLayer () const override |
Return the primary layer this item is on. More... | |
void | SetOrientationDegrees (double aOrientation) |
double | GetOrientationDegrees () const |
const LIB_ID & | GetFPID () const |
void | SetFPID (const LIB_ID &aFPID) |
wxString | GetFPIDAsString () const |
void | SetFPIDAsString (const wxString &aFPID) |
wxString | GetDescription () const |
void | SetDescription (const wxString &aDoc) |
wxString | GetKeywords () const |
void | SetKeywords (const wxString &aKeywords) |
const KIID_PATH & | GetPath () const |
void | SetPath (const KIID_PATH &aPath) |
int | GetLocalSolderMaskMargin () const |
void | SetLocalSolderMaskMargin (int aMargin) |
int | GetLocalClearance () const |
void | SetLocalClearance (int aClearance) |
int | GetLocalClearance (wxString *aSource) const |
int | GetLocalSolderPasteMargin () const |
void | SetLocalSolderPasteMargin (int aMargin) |
double | GetLocalSolderPasteMarginRatio () const |
void | SetLocalSolderPasteMarginRatio (double aRatio) |
void | SetZoneConnection (ZONE_CONNECTION aType) |
ZONE_CONNECTION | GetZoneConnection () const |
int | GetAttributes () const |
void | SetAttributes (int aAttributes) |
void | SetFlag (int aFlag) |
void | IncrementFlag () |
int | GetFlag () const |
bool | IsNetTie () const |
const std::vector< wxString > & | GetNetTiePadGroups () const |
void | ClearNetTiePadGroups () |
void | AddNetTiePadGroup (const wxString &aGroup) |
std::map< wxString, int > | MapPadNumbersToNetTieGroups () const |
std::vector< PAD * > | GetNetTiePads (PAD *aPad) const |
int | GetLikelyAttribute () const |
Returns the most likely attribute based on pads Either FP_THROUGH_HOLE/FP_SMD/OTHER(0) More... | |
void | Move (const VECTOR2I &aMoveVector) override |
Move this object. More... | |
void | Rotate (const VECTOR2I &aRotCentre, const EDA_ANGLE &aAngle) override |
Rotate this object. More... | |
void | Flip (const VECTOR2I &aCentre, bool aFlipLeftRight) override |
Flip this object, i.e. More... | |
void | MoveAnchorPosition (const VECTOR2I &aMoveVector) |
Move the reference point of the footprint. More... | |
bool | IsFlipped () const |
bool | IsOnLayer (PCB_LAYER_ID aLayer, bool aIncludeCourtyards=false) const override |
A special IsOnLayer for footprints: return true if the footprint contains only items on the given layer, even if that layer is not one of the valid footprint layers F_Cu and B_Cu. More... | |
bool | IsLocked () const override |
void | SetLocked (bool isLocked) override |
Set the #MODULE_is_LOCKED bit in the m_ModuleStatus. More... | |
bool | IsConflicting () const |
bool | IsPlaced () const |
void | SetIsPlaced (bool isPlaced) |
bool | NeedsPlaced () const |
void | SetNeedsPlaced (bool needsPlaced) |
bool | LegacyPadsLocked () const |
void | CheckFootprintAttributes (const std::function< void(const wxString &)> &aErrorHandler) |
Test if footprint attributes for type (SMD/Through hole/Other) match the expected type based on the pads in the footprint. More... | |
void | CheckPads (const std::function< void(const PAD *, int, const wxString &)> &aErrorHandler) |
Run non-board-specific DRC checks on footprint's pads. More... | |
void | CheckShortingPads (const std::function< void(const PAD *, const PAD *, const VECTOR2I &)> &aErrorHandler) |
Check for overlapping, different-numbered, non-net-tie pads. More... | |
void | CheckNetTies (const std::function< void(const BOARD_ITEM *aItem, const BOARD_ITEM *bItem, const BOARD_ITEM *cItem, const VECTOR2I &)> &aErrorHandler) |
Check for un-allowed shorting of pads in net-tie footprints. More... | |
void | CheckNetTiePadGroups (const std::function< void(const wxString &)> &aErrorHandler) |
Sanity check net-tie pad groups. More... | |
void | TransformPadsToPolySet (SHAPE_POLY_SET &aBuffer, PCB_LAYER_ID aLayer, int aClearance, int aMaxError, ERROR_LOC aErrorLoc, bool aSkipNPTHPadsWihNoCopper=false, bool aSkipPlatedPads=false, bool aSkipNonPlatedPads=false) const |
Generate pads shapes on layer aLayer as polygons and adds these polygons to aBuffer. More... | |
void | TransformFPShapesToPolySet (SHAPE_POLY_SET &aBuffer, PCB_LAYER_ID aLayer, int aClearance, int aError, ERROR_LOC aErrorLoc, bool aIncludeText=true, bool aIncludeShapes=true, bool aIncludePrivateItems=false) const |
Generate shapes of graphic items (outlines) on layer aLayer as polygons and adds these polygons to aBuffer. More... | |
void | TransformFPTextToPolySet (SHAPE_POLY_SET &aBuffer, PCB_LAYER_ID aLayer, int aClearance, int aError, ERROR_LOC aErrorLoc) const |
This function is the same as TransformFPShapesToPolySet but only generates text. More... | |
void | GetContextualTextVars (wxArrayString *aVars) const |
Return the list of system text vars for this footprint. More... | |
bool | ResolveTextVar (wxString *token, int aDepth=0) const |
Resolve any references to system tokens supported by the component. More... | |
void | GetMsgPanelInfo (EDA_DRAW_FRAME *aFrame, std::vector< MSG_PANEL_ITEM > &aList) override |
Populate aList of MSG_PANEL_ITEM objects with it's internal state for display purposes. More... | |
bool | HitTest (const VECTOR2I &aPosition, int aAccuracy=0) const override |
Test if aPosition is inside or on the boundary of this item. More... | |
bool | HitTestAccurate (const VECTOR2I &aPosition, int aAccuracy=0) const |
Test if a point is inside the bounding polygon of the footprint. More... | |
bool | HitTest (const BOX2I &aRect, bool aContained, int aAccuracy=0) const override |
Test if aRect intersects this item. More... | |
const wxString & | GetReference () const |
void | SetReference (const wxString &aReference) |
wxString | GetReferenceAsString () const |
void | IncrementReference (int aDelta) |
Bump the current reference by aDelta. More... | |
const wxString & | GetValue () const |
void | SetValue (const wxString &aValue) |
wxString | GetValueAsString () const |
PCB_TEXT & | Value () |
read/write accessors: More... | |
PCB_TEXT & | Reference () |
PCB_TEXT & | Value () const |
The const versions to keep the compiler happy. More... | |
PCB_TEXT & | Reference () const |
const std::map< wxString, wxString > & | GetProperties () const |
void | SetProperties (const std::map< wxString, wxString > &aProps) |
const wxString & | GetProperty (const wxString &aKey) |
bool | HasProperty (const wxString &aKey) |
void | SetProperty (const wxString &aKey, const wxString &aVal) |
bool | IsBoardOnly () const |
void | SetBoardOnly (bool aIsBoardOnly=true) |
bool | IsExcludedFromPosFiles () const |
void | SetExcludedFromPosFiles (bool aExclude=true) |
bool | IsExcludedFromBOM () const |
void | SetExcludedFromBOM (bool aExclude=true) |
bool | AllowMissingCourtyard () const |
void | SetAllowMissingCourtyard (bool aAllow=true) |
bool | IsDNP () const |
void | SetDNP (bool aDNP=true) |
void | SetFileFormatVersionAtLoad (int aVersion) |
int | GetFileFormatVersionAtLoad () const |
PAD * | FindPadByNumber (const wxString &aPadNumber, PAD *aSearchAfterMe=nullptr) const |
Return a PAD with a matching number. More... | |
PAD * | GetPad (const VECTOR2I &aPosition, LSET aLayerMask=LSET::AllLayersMask()) |
Get a pad at aPosition on aLayerMask in the footprint. More... | |
unsigned | GetPadCount (INCLUDE_NPTH_T aIncludeNPTH=INCLUDE_NPTH_T(INCLUDE_NPTH)) const |
Return the number of pads. More... | |
unsigned | GetUniquePadCount (INCLUDE_NPTH_T aIncludeNPTH=INCLUDE_NPTH_T(INCLUDE_NPTH)) const |
Return the number of unique non-blank pads. More... | |
wxString | GetNextPadNumber (const wxString &aLastPadName) const |
Return the next available pad number in the footprint. More... | |
wxString | GetTypeName () const |
Get the type of footprint. More... | |
double | GetArea (int aPadding=0) const |
KIID | GetLink () const |
void | SetLink (const KIID &aLink) |
BOARD_ITEM * | Duplicate () const override |
Create a copy of this BOARD_ITEM. More... | |
BOARD_ITEM * | DuplicateItem (const BOARD_ITEM *aItem, bool aAddToFootprint=false) |
Duplicate a given item within the footprint, optionally adding it to the board. More... | |
void | Add3DModel (FP_3DMODEL *a3DModel) |
Add a3DModel definition to the end of the 3D model list. More... | |
INSPECT_RESULT | Visit (INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &aScanTypes) override |
May be re-implemented for each derived class in order to handle all the types given by its member data. More... | |
wxString | GetClass () const override |
Return the class name. More... | |
wxString | GetItemDescription (UNITS_PROVIDER *aUnitsProvider) const override |
Return a user-visible description string of this item. More... | |
BITMAPS | GetMenuImage () const override |
Return a pointer to an image to be used in menus. More... | |
EDA_ITEM * | Clone () const override |
Create a duplicate of this item with linked list members set to NULL. More... | |
void | RunOnChildren (const std::function< void(BOARD_ITEM *)> &aFunction) const |
Invoke a function on all BOARD_ITEMs that belong to the footprint (pads, drawings, texts). More... | |
virtual void | ViewGetLayers (int aLayers[], int &aCount) const override |
Return the all the layers within the VIEW the object is painted on. More... | |
double | ViewGetLOD (int aLayer, KIGFX::VIEW *aView) const override |
Return the level of detail (LOD) of the item. More... | |
virtual const BOX2I | ViewBBox () const override |
Return the bounding box of the item covering all its layers. More... | |
bool | FootprintNeedsUpdate (const FOOTPRINT *aLibFootprint, REPORTER *aReporter=nullptr) |
Return true if a board footprint differs from the library version. More... | |
void | SetInitialComments (wxArrayString *aInitialComments) |
Take ownership of caller's heap allocated aInitialComments block. More... | |
double | CoverageRatio (const GENERAL_COLLECTOR &aCollector) const |
Calculate the ratio of total area of the footprint pads and graphical items to the area of the footprint. More... | |
const wxArrayString * | GetInitialComments () const |
Return the initial comments block or NULL if none, without transfer of ownership. More... | |
const SHAPE_POLY_SET & | GetCourtyard (PCB_LAYER_ID aLayer) const |
Used in DRC to test the courtyard area (a complex polygon). More... | |
void | BuildCourtyardCaches (OUTLINE_ERROR_HANDLER *aErrorHandler=nullptr) |
Build complex polygons of the courtyard areas from graphic items on the courtyard layers. More... | |
std::shared_ptr< SHAPE > | GetEffectiveShape (PCB_LAYER_ID aLayer=UNDEFINED_LAYER, FLASHING aFlash=FLASHING::DEFAULT) const override |
Some pad shapes can be complex (rounded/chamfered rectangle), even without considering custom shapes. More... | |
virtual void | Delete (BOARD_ITEM *aItem) |
Removes an item from the container and deletes it. More... | |
virtual const ZONE_SETTINGS & | GetZoneSettings () const |
Fetch the zone settings for this container. More... | |
virtual void | SetZoneSettings (const ZONE_SETTINGS &aSettings) |
Set the zone settings for this container. More... | |
void | SetParentGroup (PCB_GROUP *aGroup) |
PCB_GROUP * | GetParentGroup () const |
int | GetX () const |
int | GetY () const |
virtual VECTOR2I | GetCenter () const |
This defaults to the center of the bounding box if not overridden. More... | |
void | SetX (int aX) |
void | SetY (int aY) |
virtual bool | IsConnected () const |
Returns information if the object is derived from BOARD_CONNECTED_ITEM. More... | |
virtual bool | IsOnCopperLayer () const |
virtual bool | HasHole () const |
virtual bool | IsTented () const |
virtual std::shared_ptr< SHAPE_SEGMENT > | GetEffectiveHoleShape () const |
BOARD_ITEM_CONTAINER * | GetParent () const |
FOOTPRINT * | GetParentFootprint () const |
VECTOR2I | GetFPRelativePosition () const |
void | SetFPRelativePosition (const VECTOR2I &aPos) |
virtual bool | HasLineStroke () const |
Check if this item has line stoke properties. More... | |
virtual STROKE_PARAMS | GetStroke () const |
virtual void | SetStroke (const STROKE_PARAMS &aStroke) |
virtual LSET | GetLayerSet () const |
Return a std::bitset of all layers on which the item physically resides. More... | |
virtual void | SetLayerSet (LSET aLayers) |
virtual void | SetLayer (PCB_LAYER_ID aLayer) |
Set the layer this item is on. More... | |
void | SwapItemData (BOARD_ITEM *aImage) |
Swap data between aItem and aImage. More... | |
virtual bool | IsKnockout () const |
virtual void | SetIsKnockout (bool aKnockout) |
void | DeleteStructure () |
Delete this object after removing from its parent if it has one. More... | |
virtual const BOARD * | GetBoard () const |
Return the BOARD in which this BOARD_ITEM resides, or NULL if none. More... | |
virtual BOARD * | GetBoard () |
wxString | GetLayerName () const |
Return the name of the PCB layer on which the item resides. More... | |
virtual void | TransformShapeToPolygon (SHAPE_POLY_SET &aBuffer, PCB_LAYER_ID aLayer, int aClearance, int aError, ERROR_LOC aErrorLoc, bool ignoreLineWidth=false) const |
Convert the item shape to a closed polygon. More... | |
KICAD_T | Type () const |
Returns the type of object. More... | |
virtual void | SetParent (EDA_ITEM *aParent) |
bool | IsModified () const |
bool | IsNew () const |
bool | IsMoving () const |
bool | IsSelected () const |
bool | IsEntered () const |
bool | IsBrightened () const |
bool | IsRollover () const |
void | SetSelected () |
void | SetBrightened () |
void | ClearSelected () |
void | ClearBrightened () |
void | SetModified () |
void | SetFlags (EDA_ITEM_FLAGS aMask) |
void | XorFlags (EDA_ITEM_FLAGS aMask) |
void | ClearFlags (EDA_ITEM_FLAGS aMask=EDA_ITEM_ALL_FLAGS) |
EDA_ITEM_FLAGS | GetFlags () const |
bool | HasFlag (EDA_ITEM_FLAGS aFlag) const |
EDA_ITEM_FLAGS | GetEditFlags () const |
void | ClearTempFlags () |
void | ClearEditFlags () |
virtual bool | RenderAsBitmap (double aWorldScale) const |
void | SetIsShownAsBitmap (bool aBitmap) |
bool | IsShownAsBitmap () const |
virtual bool | IsType (const std::vector< KICAD_T > &aScanTypes) const |
Check whether the item is one of the listed types. More... | |
void | SetForceVisible (bool aEnable) |
Set and clear force visible flag used to force the item to be drawn even if it's draw attribute is set to not visible. More... | |
bool | IsForceVisible () const |
virtual wxString | GetFriendlyName () const |
virtual const VECTOR2I | GetFocusPosition () const |
Similar to GetPosition, but allows items to return their visual center rather than their anchor. More... | |
virtual VECTOR2I | GetSortPosition () const |
Return the coordinates that should be used for sorting this element visually compared to other elements. More... | |
wxString | GetTypeDesc () const |
Return a translated description of the type for this EDA_ITEM for display in user facing messages. More... | |
virtual bool | Matches (const EDA_SEARCH_DATA &aSearchData, void *aAuxData) const |
Compare the item against the search criteria in aSearchData. More... | |
virtual bool | Replace (const EDA_SEARCH_DATA &aSearchData, void *aAuxData=nullptr) |
Perform a text replace using the find and replace criteria in aSearchData on items that support text find and replace. More... | |
virtual bool | IsReplaceable () const |
Override this method in any derived object that supports test find and replace. More... | |
bool | operator< (const EDA_ITEM &aItem) const |
Test if another item is less than this object. More... | |
virtual void | ViewDraw (int aLayer, VIEW *aView) const |
Draw the parts of the object belonging to layer aLayer. More... | |
VIEW_ITEM_DATA * | viewPrivData () const |
void | SetForcedTransparency (double aForcedTransparency) |
double | GetForcedTransparency () const |
bool | Set (PROPERTY_BASE *aProperty, wxAny &aValue) |
template<typename T > | |
bool | Set (PROPERTY_BASE *aProperty, T aValue) |
template<typename T > | |
bool | Set (const wxString &aProperty, T aValue) |
wxAny | Get (PROPERTY_BASE *aProperty) const |
template<typename T > | |
T | Get (PROPERTY_BASE *aProperty) const |
template<typename T > | |
std::optional< T > | Get (const wxString &aProperty) const |
Static Public Member Functions | |
static bool | ClassOf (const EDA_ITEM *aItem) |
static bool | IsLibNameValid (const wxString &aName) |
Test for validity of a name of a footprint to be used in a footprint library ( no spaces, dir separators ... ). More... | |
static const wxChar * | StringLibNameInvalidChars (bool aUserReadable) |
Test for validity of the name in a library of the footprint ( no spaces, dir separators ... ). More... | |
static double | GetCoverageArea (const BOARD_ITEM *aItem, const GENERAL_COLLECTOR &aCollector) |
template<class T > | |
static INSPECT_RESULT | IterateForward (std::deque< T > &aList, INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &scanTypes) |
This changes first parameter to avoid the DList and use the main queue instead. More... | |
template<class T > | |
static INSPECT_RESULT | IterateForward (std::vector< T > &aList, INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &scanTypes) |
Change first parameter to avoid the DList and use std::vector instead. More... | |
static bool | Replace (const EDA_SEARCH_DATA &aSearchData, wxString &aText) |
Perform a text replace on aText using the find and replace criteria in aSearchData on items that support text find and replace. More... | |
static bool | Sort (const EDA_ITEM *aLeft, const EDA_ITEM *aRight) |
Helper function to be used by the C++ STL sort algorithm for sorting a STL container of EDA_ITEM pointers. More... | |
Public Attributes | |
const KIID | m_Uuid |
Static Public Attributes | |
static VECTOR2I | ZeroOffset |
A value of wxPoint(0,0) which can be passed to the Draw() functions. More... | |
Protected Member Functions | |
virtual void | swapData (BOARD_ITEM *aImage) override |
virtual wxString | layerMaskDescribe () const |
Return a string (to be shown to the user) describing a layer mask. More... | |
bool | Matches (const wxString &aText, const EDA_SEARCH_DATA &aSearchData) const |
Compare aText against search criteria in aSearchData. More... | |
Protected Attributes | |
PCB_LAYER_ID | m_layer |
bool | m_isKnockout |
bool | m_isLocked |
PCB_GROUP * | m_group |
EDA_ITEM * | m_parent |
Linked list: Link (parent struct) More... | |
bool | m_forceVisible |
EDA_ITEM_FLAGS | m_flags |
Definition at line 102 of file footprint.h.
FOOTPRINT::FOOTPRINT | ( | BOARD * | parent | ) |
Definition at line 56 of file footprint.cpp.
References ANGLE_0, F_Cu, FP_PADS_are_LOCKED, m_3D_Drawings, m_arflag, m_attributes, m_fileFormatVersionAtLoad, m_fpStatus, m_lastEditTime, BOARD_ITEM::m_layer, m_link, m_localClearance, m_localSolderMaskMargin, m_localSolderPasteMargin, m_localSolderPasteMarginRatio, m_orient, m_reference, m_value, m_zoneConnection, PCB_TEXT::TEXT_is_REFERENCE, and PCB_TEXT::TEXT_is_VALUE.
FOOTPRINT::FOOTPRINT | ( | const FOOTPRINT & | aFootprint | ) |
Definition at line 87 of file footprint.cpp.
References Add(), PCB_GROUP::AddItem(), PCB_GROUP::GetItems(), GraphicalItems(), group, Groups(), m_3D_Drawings, m_arflag, m_attributes, m_boundingBoxCacheTimeStamp, m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_doc, m_fileFormatVersionAtLoad, m_fpid, m_fpStatus, m_hullCacheTimeStamp, m_initial_comments, m_keywords, m_lastEditTime, m_link, m_localClearance, m_localSolderMaskMargin, m_localSolderPasteMargin, m_localSolderPasteMarginRatio, m_netTiePadGroups, m_orient, m_path, m_pos, m_privateLayers, m_properties, m_reference, m_textExcludedBBoxCacheTimeStamp, m_value, m_visibleBBoxCacheTimeStamp, m_zoneConnection, pad, Pads(), BOARD_CONNECTED_ITEM::SetNetCode(), EDA_ITEM::SetParent(), and Zones().
FOOTPRINT::FOOTPRINT | ( | FOOTPRINT && | aFootprint | ) |
Definition at line 193 of file footprint.cpp.
FOOTPRINT::~FOOTPRINT | ( | ) |
Definition at line 200 of file footprint.cpp.
References BOARD_ITEM::GetBoard(), group, m_drawings, m_groups, m_initial_comments, m_pads, m_reference, m_value, and m_zones.
|
overridevirtual |
Removes an item from the container.
Implements BOARD_ITEM_CONTAINER.
Definition at line 568 of file footprint.cpp.
References EDA_ITEM::ClearEditFlags(), KI_FALLTHROUGH, m_drawings, m_groups, m_pads, m_zones, PCB_BITMAP_T, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_GROUP_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_ZONE_T, EDA_ITEM::SetParent(), PCB_TEXT::TEXT_is_DIVERS, and EDA_ITEM::Type().
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCAD2KICAD::PCAD_ARC::AddToBoard(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), PCAD2KICAD::PCAD_PAD::AddToFootprint(), ALTIUM_PCB::ConvertArcs6ToFootprintItem(), ALTIUM_PCB::ConvertArcs6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertFills6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertPads6ToFootprintItemOnCopper(), ALTIUM_PCB::ConvertPads6ToFootprintItemOnNonCopper(), ALTIUM_PCB::ConvertShapeBasedRegions6ToFootprintItem(), ALTIUM_PCB::ConvertShapeBasedRegions6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertTexts6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertTracks6ToFootprintItem(), ALTIUM_PCB::ConvertTracks6ToFootprintItemOnLayer(), MICROWAVE_TOOL::createBaseFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), MICROWAVE_TOOL::createPolygonShape(), KI_TEST::DrawArc(), KI_TEST::DrawSegment(), DuplicateItem(), PCB_EDIT_FRAME::ExchangeFootprint(), FOOTPRINT(), PCB_BASE_FRAME::GetFootprintFromBoardByReference(), GROUP_TOOL::Group(), ALTIUM_PCB::HelperCreateAndAddShape(), ALTIUM_PCB::HelperPcpShapeAsFootprintKeepoutRegion(), EAGLE_PLUGIN::loadElements(), LEGACY_PLUGIN::loadFOOTPRINT(), FABMASTER::loadFootprints(), LEGACY_PLUGIN::loadFP_SHAPE(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryPads(), LEGACY_PLUGIN::loadPAD(), operator=(), EAGLE_PLUGIN::packageCircle(), EAGLE_PLUGIN::packageHole(), EAGLE_PLUGIN::packagePad(), EAGLE_PLUGIN::packagePolygon(), EAGLE_PLUGIN::packageRectangle(), EAGLE_PLUGIN::packageSMD(), EAGLE_PLUGIN::packageText(), EAGLE_PLUGIN::packageWire(), PCB_PARSER::resolveGroups(), CLIPBOARD_IO::SaveSelection(), FOOTPRINT_EDIT_FRAME::SelectFootprintFromBoard(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
void FOOTPRINT::Add3DModel | ( | FP_3DMODEL * | a3DModel | ) |
Add a3DModel definition to the end of the 3D model list.
a3DModel | A pointer to a FP_3DMODEL to add to the list. |
Definition at line 1273 of file footprint.cpp.
References m_3D_Drawings, and FP_3DMODEL::m_Filename.
|
inline |
Definition at line 281 of file footprint.h.
References m_netTiePadGroups.
Referenced by DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 612 of file footprint.h.
References FP_ALLOW_MISSING_COURTYARD, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
void FOOTPRINT::BuildCourtyardCaches | ( | OUTLINE_ERROR_HANDLER * | aErrorHandler = nullptr | ) |
Build complex polygons of the courtyard areas from graphic items on the courtyard layers.
Definition at line 2119 of file footprint.cpp.
References B_CrtYd, SHAPE_POLY_SET::CacheTriangulation(), SHAPE_POLY_SET::CHAMFER_ACUTE_CORNERS, EDA_ITEM::ClearFlags(), ConvertOutlineToPolygon(), F_CrtYd, BOARD_ITEM::GetBoard(), BOARD::GetTimeStamp(), GraphicalItems(), SHAPE_POLY_SET::Inflate(), m_courtyard_cache_back, m_courtyard_cache_front, m_courtyard_cache_timestamp, MALFORMED_B_COURTYARD, MALFORMED_COURTYARDS, MALFORMED_F_COURTYARD, EDA_IU_SCALE::mmToIU(), PCB_SHAPE_T, pcbIUScale, SHAPE_POLY_SET::RemoveAllContours(), and EDA_ITEM::SetFlags().
Referenced by AR_AUTOPLACER::buildFpAreas(), GetCourtyard(), BOARD_INSPECTION_TOOL::makeDRCEngine(), and DIALOG_FOOTPRINT_CHECKER::runChecks().
void FOOTPRINT::CheckFootprintAttributes | ( | const std::function< void(const wxString &)> & | aErrorHandler | ) |
Test if footprint attributes for type (SMD/Through hole/Other) match the expected type based on the pads in the footprint.
Footprints with plated through-hole pads should usually be marked through hole even if they also have SMD because they might not be auto-placed. Exceptions to this might be shielded connectors. Otherwise, footprints with SMD pads should be marked SMD. Footprints with no connecting pads should be marked "Other"
aErrorHandler | callback to handle the error messages generated |
Definition at line 2253 of file footprint.cpp.
References _, FP_SMD, FP_THROUGH_HOLE, GetAttributes(), GetLikelyAttribute(), and GetTypeName().
Referenced by DIALOG_FOOTPRINT_CHECKER::runChecks().
void FOOTPRINT::CheckNetTiePadGroups | ( | const std::function< void(const wxString &)> & | aErrorHandler | ) |
Sanity check net-tie pad groups.
Pads cannot be listed more than once, and pad numbers must correspond to a pad.
aErrorHandler | callback to handle the error messages generated |
Definition at line 2509 of file footprint.cpp.
References _, FindPadByNumber(), MapPadNumbersToNetTieGroups(), and pad.
Referenced by DIALOG_FOOTPRINT_CHECKER::runChecks().
void FOOTPRINT::CheckNetTies | ( | const std::function< void(const BOARD_ITEM *aItem, const BOARD_ITEM *bItem, const BOARD_ITEM *cItem, const VECTOR2I &)> & | aErrorHandler | ) |
Check for un-allowed shorting of pads in net-tie footprints.
If two pads are shorted, they must both appear in one of the allowed-shorting lists.
aErrorHandler | callback to handle the error messages generated |
Definition at line 2403 of file footprint.cpp.
References ARC_HIGH_DEF, B_Cu, ERROR_OUTSIDE, F_Cu, PAD::GetNumber(), PAD::GetPosition(), In1_Cu, BOARD_ITEM::IsOnCopperLayer(), m_drawings, m_pads, m_reference, m_value, m_zones, MapPadNumbersToNetTieGroups(), SHAPE_LINE_CHAIN::NearestPoint(), SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), pad, SHAPE_POLY_SET::PM_FAST, and SHAPE_POLY_SET::Simplify().
Referenced by DIALOG_FOOTPRINT_CHECKER::runChecks().
void FOOTPRINT::CheckPads | ( | const std::function< void(const PAD *, int, const wxString &)> & | aErrorHandler | ) |
Run non-board-specific DRC checks on footprint's pads.
These are the checks supported by both the PCB DRC and the Footprint Editor Footprint Checker.
aErrorHandler | callback to handle the error messages generated |
Definition at line 2278 of file footprint.cpp.
References _, LSET::AllCuMask(), ARC_HIGH_DEF, B_Cu, B_Mask, B_Paste, SHAPE_POLY_SET::BooleanSubtract(), DRCE_PAD_TH_WITH_NO_HOLE, DRCE_PADSTACK, ERROR_INSIDE, F_Cu, F_Mask, F_Paste, SHAPE_POLY_SET::IsEmpty(), pad, Pads(), SHAPE_POLY_SET::PM_FAST, LSET::Seq(), and TransformOvalToPolygon().
Referenced by DIALOG_FOOTPRINT_CHECKER::runChecks().
void FOOTPRINT::CheckShortingPads | ( | const std::function< void(const PAD *, const PAD *, const VECTOR2I &)> & | aErrorHandler | ) |
Check for overlapping, different-numbered, non-net-tie pads.
aErrorHandler | callback to handle the error messages generated |
Definition at line 2357 of file footprint.cpp.
References LSET::AllCuMask(), SHAPE::Collide(), alg::contains(), GetNetTiePads(), pad, and Pads().
Referenced by DIALOG_FOOTPRINT_CHECKER::runChecks().
|
inlinestatic |
Definition at line 117 of file footprint.h.
References PCB_FOOTPRINT_T, and EDA_ITEM::Type().
void FOOTPRINT::ClearAllNets | ( | ) |
Clear (i.e.
force the ORPHANED dummy net info) the net info which depends on a given board for all pads of the footprint.
This is needed when a footprint is copied between the fp editor and the board editor for instance, because net info become fully broken
Definition at line 559 of file footprint.cpp.
References m_pads, NETINFO_LIST::ORPHANED, and pad.
Referenced by PCB_BASE_FRAME::loadFootprint(), and FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard().
|
inlineinherited |
Definition at line 119 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::ClearFlags().
Referenced by FOOTPRINT_DIFF_WIDGET::DisplayDiff(), SCH_EDIT_FRAME::FocusOnItem(), PCB_BASE_FRAME::FocusOnItems(), EE_SELECTION_TOOL::unhighlight(), PL_SELECTION_TOOL::unhighlight(), and PCB_SELECTION_TOOL::unhighlightInternal().
|
inlineinherited |
Definition at line 142 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and EDA_ITEM::GetEditFlags().
Referenced by BOARD::Add(), Add(), SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), SCH_DRAWING_TOOLS::DrawShape(), SYMBOL_EDITOR_DRAWING_TOOLS::DrawShape(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), SYMBOL_EDITOR_MOVE_TOOL::Main(), PL_DRAWING_TOOLS::PlaceItem(), SCH_DRAWING_TOOLS::PlaceSymbol(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
|
inlineinherited |
Definition at line 125 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), PNS_KICAD_IFACE::AddItem(), SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), SCH_MOVE_TOOL::AlignElements(), SCH_EDIT_TOOL::BreakWire(), BuildCourtyardCaches(), EDA_ITEM::ClearBrightened(), EDA_ITEM::ClearEditFlags(), EDA_ITEM::ClearSelected(), EDA_ITEM::ClearTempFlags(), SCH_EDIT_FRAME::ConvertPart(), SYMBOL_EDITOR_EDIT_TOOL::Copy(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), SYMBOL_EDITOR_PIN_TOOL::CreateImagePins(), MICROWAVE_TOOL::createMicrowaveInductor(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), BOARD_COMMIT::dirtyIntersectingZones(), PCB_TOOL_BASE::doInteractiveItemPlacement(), KIGFX::SCH_PAINTER::draw(), SCH_ITEM::Duplicate(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_SELECTION_TOOL::ExitGroup(), SYMBOL_EDIT_FRAME::GetSymbolFromRedoList(), SYMBOL_EDIT_FRAME::GetSymbolFromUndoList(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), DRC_INTERACTIVE_COURTYARD_CLEARANCE::Init(), EE_COLLECTOR::Inspect(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), DIALOG_SYMBOL_PROPERTIES::OnUnitChoice(), FOOTPRINT_EDIT_FRAME::OpenProjectFiles(), PCB_BASE_FRAME::PlaceFootprint(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), BOARD_COMMIT::Push(), PCB_SELECTION_TOOL::RebuildSelection(), PAD_TOOL::RecombinePad(), SCH_EDIT_TOOL::RepeatDrawItem(), SYMBOL_EDIT_FRAME::RollbackSymbolFromUndo(), DRC_TEST_PROVIDER_DISALLOW::Run(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_SEXPR_PLUGIN_CACHE::savePin(), EE_SELECTION_TOOL::selectMultiple(), SCH_EDIT_FRAME::SelectUnit(), EDA_ITEM::SetIsShownAsBitmap(), SCHEMATIC_COMMIT::Stage(), BOARD_COMMIT::Stage(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), and EE_SELECTION_TOOL::unhighlight().
|
inline |
Definition at line 276 of file footprint.h.
References m_netTiePadGroups.
Referenced by DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inlineinherited |
Definition at line 118 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and SELECTED.
Referenced by PCB_POINT_EDITOR::addCorner(), FOOTPRINT_DIFF_WIDGET::DisplayDiff(), EDIT_TOOL::Duplicate(), ARRAY_CREATOR::Invoke(), LIB_SYMBOL::LIB_SYMBOL(), EE_TOOL_BASE< T >::saveCopyInUndoList(), SCH_DRAWING_TOOLS::TwoClickPlace(), EE_SELECTION_TOOL::unhighlight(), PL_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), and GERBVIEW_SELECTION_TOOL::unselectVisually().
|
inlineinherited |
Definition at line 137 of file eda_item.h.
References CANDIDATE, EDA_ITEM::ClearFlags(), IS_LINKED, SELECTED_BY_DRAG, and SKIP_STRUCT.
Referenced by PCB_EDIT_FRAME::OpenProjectFiles(), and SCH_EDIT_FRAME::PutDataInPreviousState().
|
overridevirtual |
Create a duplicate of this item with linked list members set to NULL.
The default version will return NULL in release builds and likely crash the program. In debug builds, a warning message indicating the derived class has not implemented cloning. This really should be a pure virtual function. Due to the fact that there are so many objects derived from EDA_ITEM, the decision was made to return NULL until all the objects derived from EDA_ITEM implement cloning. Once that happens, this function should be made pure.
Reimplemented from EDA_ITEM.
Definition at line 1386 of file footprint.cpp.
Referenced by FOOTPRINT_DIFF_WIDGET::DisplayDiff(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), PCB_PLUGIN::FootprintLoad(), FootprintNeedsUpdate(), PCB_PLUGIN::FootprintSave(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FOOTPRINT_EDIT_FRAME::ReloadFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), BOARD_NETLIST_UPDATER::updateComponentPadConnections(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
double FOOTPRINT::CoverageRatio | ( | const GENERAL_COLLECTOR & | aCollector | ) | const |
Calculate the ratio of total area of the footprint pads and graphical items to the area of the footprint.
Used by selection tool heuristics.
Definition at line 2010 of file footprint.cpp.
References SHAPE_POLY_SET::AddOutline(), ARC_LOW_DEF, ERROR_OUTSIDE, GetBoundingHull(), COLLECTOR::GetCount(), GENERAL_COLLECTOR::GetGuide(), BOARD_ITEM::GetParent(), KiROUND(), COLLECTORS_GUIDE::OnePixelInIU(), SHAPE_POLY_SET::Outline(), PCB_ARC_T, PCB_FOOTPRINT_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, polygonArea(), TransformFPShapesToPolySet(), TransformPadsToPolySet(), BOARD_ITEM::TransformShapeToPolygon(), EDA_ITEM::Type(), and UNDEFINED_LAYER.
|
inlinevirtualinherited |
Removes an item from the container and deletes it.
Definition at line 77 of file board_item_container.h.
References BOARD_ITEM_CONTAINER::Remove().
Referenced by DRC_ITEMS_PROVIDER::DeleteItem(), and BOARD_COMMIT::Push().
|
inherited |
Delete this object after removing from its parent if it has one.
Definition at line 151 of file board_item.cpp.
References BOARD_ITEM::GetParent(), and BOARD_ITEM_CONTAINER::Remove().
|
overridevirtual |
Create a copy of this BOARD_ITEM.
Reimplemented from BOARD_ITEM.
Definition at line 1757 of file footprint.cpp.
References BOARD_ITEM::Duplicate(), EDA_ITEM::m_Uuid, and RunOnChildren().
Referenced by FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), FOOTPRINT_PREVIEW_PANEL::DisplayFootprint(), GPCB_PLUGIN::FootprintLoad(), PCB_PLUGIN::FootprintLoad(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), and CADSTAR_PCB_ARCHIVE_LOADER::loadComponents().
BOARD_ITEM * FOOTPRINT::DuplicateItem | ( | const BOARD_ITEM * | aItem, |
bool | aAddToFootprint = false |
||
) |
Duplicate a given item within the footprint, optionally adding it to the board.
Definition at line 1770 of file footprint.cpp.
References Add(), BOARD_ITEM::Duplicate(), EDA_ITEM::GetClass(), PCB_TEXT::GetType(), m_pads, EDA_ITEM::m_Uuid, m_zones, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_FOOTPRINT_T, PCB_GROUP_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_ZONE_T, EDA_TEXT::SetText(), PCB_TEXT::SetType(), PCB_TEXT::TEXT_is_DIVERS, PCB_TEXT::TEXT_is_REFERENCE, PCB_TEXT::TEXT_is_VALUE, and EDA_ITEM::Type().
Referenced by EDIT_TOOL::Duplicate(), and ARRAY_CREATOR::Invoke().
PAD * FOOTPRINT::FindPadByNumber | ( | const wxString & | aPadNumber, |
PAD * | aSearchAfterMe = nullptr |
||
) | const |
Return a PAD with a matching number.
aPadNumber | the pad number to find. |
aSearchAfterMe | = not nullptr to find a pad living after aAfterMe |
Definition at line 1187 of file footprint.cpp.
Referenced by CheckNetTiePadGroups(), PCB_EDIT_FRAME::ExchangeFootprint(), BOARD_NETLIST_UPDATER::testConnectivity(), and DRC_TEST_PROVIDER_SCHEMATIC_PARITY::testNetlist().
bool FOOTPRINT::FixUuids | ( | ) |
Old footprints do not always have a valid UUID (some can be set to null uuid) However null UUIDs, having a special meaning in editor, create issues when editing a footprint So all null uuids a re replaced by a valid uuid.
Definition at line 239 of file footprint.cpp.
References group, m_drawings, m_groups, m_pads, m_reference, m_value, m_zones, niluuid, and pad.
Referenced by FOOTPRINT_EDIT_FRAME::ReloadFootprint().
|
overridevirtual |
Flip this object, i.e.
change the board side for this object.
aCentre | the rotation point. |
aFlipLeftRight | mirror across Y axis instead of X (the default). |
Mirror the Y position (around the X axis)
Reimplemented from BOARD_ITEM.
Definition at line 1596 of file footprint.cpp.
References ANGLE_0, ANGLE_180, PCB_TEXT::Flip(), FlipLayer(), GetLayer(), m_boundingBoxCacheTimeStamp, m_cachedHull, m_courtyard_cache_back, m_courtyard_cache_front, m_courtyard_cache_timestamp, m_drawings, m_orient, m_pads, m_pos, m_reference, m_textExcludedBBoxCacheTimeStamp, m_value, m_visibleBBoxCacheTimeStamp, m_zones, SHAPE_POLY_SET::Mirror(), MIRROR(), EDA_ANGLE::Normalize180(), pad, Rotate(), BOARD_ITEM::SetLayer(), SetPosition(), and VECTOR2< T >::y.
Referenced by PCB_BASE_FRAME::AddFootprintToBoard(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_PLUGIN::FootprintSave(), DSN::SPECCTRA_DB::FromSESSION(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FABMASTER::loadFootprints(), EAGLE_PLUGIN::orientFootprintAndText(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SetLayerAndFlip(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow().
bool FOOTPRINT::FootprintNeedsUpdate | ( | const FOOTPRINT * | aLibFootprint, |
REPORTER * | aReporter = nullptr |
||
) |
Return true if a board footprint differs from the library version.
Definition at line 451 of file drc_test_provider_library_parity.cpp.
References _, ANGLE_0, CHECKPOINT, Clone(), FP_ALLOW_MISSING_COURTYARD, FP_ALLOW_SOLDERMASK_BRIDGES, FP_SMD, FP_THROUGH_HOLE, GetAttributes(), GetDescription(), GetKeywords(), GetLocalClearance(), GetLocalSolderMaskMargin(), GetLocalSolderPasteMargin(), GetLocalSolderPasteMarginRatio(), GetNetTiePadGroups(), GetOrientation(), GetPosition(), GetZoneConnection(), GraphicalItems(), IsFlipped(), ITEM_DESC, modelNeedsUpdate(), Models(), padHasOverrides(), padNeedsUpdate(), Pads(), PCB_SHAPE_T, pcbIUScale, REPORT, shapeNeedsUpdate(), TEST, TEST_ATTR, TEST_D, zoneNeedsUpdate(), and Zones().
Referenced by BOARD_INSPECTION_TOOL::DiffFootprint(), and DIALOG_EXCHANGE_FOOTPRINTS::processFootprint().
|
inlineinherited |
Definition at line 104 of file inspectable.h.
References PROPERTY_BASE::get(), PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 84 of file inspectable.h.
References PROPERTY_BASE::getter(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
Referenced by BOOST_AUTO_TEST_CASE(), CLASS_D_DESC::CLASS_D_DESC(), EDA_SHAPE_DESC::EDA_SHAPE_DESC(), PROPERTIES_PANEL::getItemValue(), and PCB_EXPR_VAR_REF::GetValue().
|
inlineinherited |
Definition at line 92 of file inspectable.h.
References PROPERTY_BASE::get(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
double FOOTPRINT::GetArea | ( | int | aPadding = 0 | ) | const |
Definition at line 711 of file footprint.cpp.
References std::abs(), GetBoundingBox(), BOX2< Vec >::GetHeight(), and BOX2< Vec >::GetWidth().
Referenced by sortFootprintsByComplexity(), and sortFootprintsByRatsnestSize().
|
inline |
Definition at line 252 of file footprint.h.
References m_attributes.
Referenced by BOARD_NETLIST_UPDATER::addNewFootprint(), EXPORTER_STEP::buildFootprint3DShapes(), KI_TEST::CheckFootprint(), CheckFootprintAttributes(), DRC_TEST_PROVIDER_SOLDER_MASK::checkItemMask(), DRC_TEST_PROVIDER_SOLDER_MASK::checkMaskAperture(), EDIT_TOOL::doMoveSelection(), PCB_EDIT_FRAME::ExchangeFootprint(), FootprintNeedsUpdate(), FootprintWriteShape(), PCB_PLUGIN::format(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
virtualinherited |
Definition at line 58 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD_ITEM::GetParent(), PCB_T, and EDA_ITEM::Type().
|
virtualinherited |
Return the BOARD in which this BOARD_ITEM resides, or NULL if none.
Definition at line 44 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD_ITEM::GetParent(), PCB_T, and EDA_ITEM::Type().
Referenced by BOARD_ADAPTER::addShape(), BuildCourtyardCaches(), PAD::BuildEffectivePolygon(), PAD::BuildEffectiveShapes(), ZONE::BuildSmoothedPoly(), ZONE::CacheBoundingBox(), collidesWithArea(), BOARD_INSPECTION_TOOL::DiffFootprint(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), enclosedByAreaFunc(), existsOnLayerFunc(), PCB_VIA::FlashLayer(), PAD::FlashLayer(), PCB_DIMENSION_BASE::Flip(), PCB_SHAPE::Flip(), PCB_TARGET::Flip(), PCB_TEXT::Flip(), PCB_TEXTBOX::Flip(), PCB_TRACK::Flip(), PCB_ARC::Flip(), PCB_VIA::Flip(), ZONE::Flip(), PCB_PLUGIN::format(), fromToFunc(), BOARD_ITEM::GetBoard(), PCB_EXPR_CONTEXT::GetBoard(), NETINFO_ITEM::GetBoundingBox(), ZONE::GetBoundingBox(), GetBoundingBox(), GetBoundingHull(), PCB_BASE_EDIT_FRAME::GetContextualTextVars(), GetCourtyard(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), PCB_TEXT::GetEffectiveShape(), getFieldFunc(), ZONE::GetInteractingZones(), ZONE::GetItemDescription(), BOARD_ITEM::GetLayerName(), PCB_VIA::GetMinAnnulus(), NETINFO_ITEM::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfo(), ZONE::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfoBase_Common(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), BOARD_CONNECTED_ITEM::GetOwnClearance(), PAD::GetOwnClearance(), PCB_MARKER::GetSeverity(), PCB_TEXT::GetShownText(), PAD::GetSolderMaskExpansion(), PCB_VIA::GetSolderMaskExpansion(), PAD::GetSolderPasteMargin(), BOARD::GetTrackLength(), PCB_TRACK::GetWidthConstraint(), inDiffPairFunc(), ROUTER_TOOL::Init(), intersectsAreaFunc(), intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), intersectsFrontCourtyardFunc(), BOARD_ITEM::IsLocked(), PCB_VIA::IsTented(), BOARD_ITEM::layerMaskDescribe(), PCB_VIA::layerMaskDescribe(), PAD::MergePrimitivesAsPolygon(), ZONE::Move(), DIALOG_TEXTBOX_PROPERTIES::onBorderChecked(), EAGLE_PLUGIN::packageWire(), padNeedsUpdate(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), BOARD::ResolveDRCExclusions(), ResolveTextVar(), BOARD_CONNECTED_ITEM::SetNetCode(), PCB_DIMENSION_BASE::SetUnitsMode(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), ZONE::TransformSmoothedOutlineToPolygon(), BOARD::UpdateRatsnestExclusions(), ViewBBox(), PAD::ViewBBox(), PCB_TRACK::ViewBBox(), PAD::ViewGetLOD(), PCB_BITMAP::ViewGetLOD(), PCB_VIA::ViewGetLOD(), ~FOOTPRINT(), and ZONE::~ZONE().
|
overridevirtual |
Return the orthogonal bounding box of this object for display purposes.
This box should be an enclosing perimeter for visible components of this object, and the units should be in the pcb or schematic coordinate system. It is OK to overestimate the size by a few counts.
Reimplemented from EDA_ITEM.
Definition at line 806 of file footprint.cpp.
References GetBoundingBox().
Referenced by AR_AUTOPLACER::buildFpAreas(), PCB_GRID_HELPER::computeAnchors(), KIGFX::PCB_PAINTER::draw(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), GetArea(), GetBoundingBox(), GetBoundingBoxes(), FOOTPRINT_EDIT_FRAME::GetDocumentExtents(), AR_AUTOPLACER::getOptimalFPPlacement(), HitTest(), PCB_SELECTION_TOOL::hitTestDistance(), SpreadFootprints(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), AR_AUTOPLACER::testFootprintOnBoard(), and ViewBBox().
const BOX2I FOOTPRINT::GetBoundingBox | ( | bool | aIncludeText, |
bool | aIncludeInvisibleText | ||
) | const |
Definition at line 812 of file footprint.cpp.
References BaseType(), BOARD_ITEM::GetBoard(), PCB_TEXT::GetBoundingBox(), BOARD_ITEM::GetLayer(), BOARD::GetTimeStamp(), BOX2< Vec >::Inflate(), BOARD::IsElementVisible(), BOARD::IsFootprintHolder(), BOARD::IsLayerVisible(), EDA_TEXT::IsVisible(), LAYER_MOD_REFERENCES, LAYER_MOD_TEXT, LAYER_MOD_VALUES, m_boundingBoxCacheTimeStamp, m_cachedBoundingBox, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_drawings, m_pads, m_pos, m_privateLayers, m_reference, m_textExcludedBBoxCacheTimeStamp, m_value, m_visibleBBoxCacheTimeStamp, m_zones, BOX2< Vec >::Merge(), EDA_IU_SCALE::mmToIU(), pad, PCB_BITMAP_T, PCB_DIMENSION_T, PCB_TEXT_T, and pcbIUScale.
SHAPE_POLY_SET FOOTPRINT::GetBoundingHull | ( | ) | const |
Return a bounding polygon for the shapes and pads in the footprint.
This operation is slower but more accurate than calculating a bounding box.
Definition at line 941 of file footprint.cpp.
References SHAPE_POLY_SET::AddOutline(), SHAPE_POLY_SET::Append(), ARC_LOW_DEF, BuildConvexHull(), SHAPE_POLY_SET::COutline(), ERROR_OUTSIDE, BOARD_ITEM::GetBoard(), GetPosition(), BOARD::GetTimeStamp(), BOARD::IsFootprintHolder(), m_cachedHull, m_drawings, m_hullCacheTimeStamp, m_pads, m_privateLayers, m_zones, EDA_IU_SCALE::mmToIU(), SHAPE_POLY_SET::NewOutline(), SHAPE_POLY_SET::OutlineCount(), pad, PCB_BITMAP_T, PCB_TEXT_T, pcbIUScale, SHAPE_POLY_SET::RemoveAllContours(), and UNDEFINED_LAYER.
Referenced by CoverageRatio(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), GetCoverageArea(), HitTestAccurate(), and PCB_SELECTION_TOOL::hitTestDistance().
|
inlinevirtualinherited |
This defaults to the center of the bounding box if not overridden.
Reimplemented in PAD, PCB_MARKER, PCB_SHAPE, and PCB_ARC.
Definition at line 106 of file board_item.h.
References EDA_ITEM::GetBoundingBox(), and BOX2< Vec >::GetCenter().
Referenced by PCB_GRID_HELPER::computeAnchors(), and PCB_SELECTION_TOOL::FindItem().
|
inlineoverridevirtual |
Return the class name.
Implements EDA_ITEM.
Definition at line 713 of file footprint.h.
Referenced by Visit().
void FOOTPRINT::GetContextualTextVars | ( | wxArrayString * | aVars | ) | const |
Return the list of system text vars for this footprint.
Definition at line 481 of file footprint.cpp.
const SHAPE_POLY_SET & FOOTPRINT::GetCourtyard | ( | PCB_LAYER_ID | aLayer | ) | const |
Used in DRC to test the courtyard area (a complex polygon).
Definition at line 2107 of file footprint.cpp.
References BuildCourtyardCaches(), BOARD_ITEM::GetBoard(), IsBackLayer(), m_courtyard_cache_back, m_courtyard_cache_front, and m_courtyard_cache_timestamp.
Referenced by AR_AUTOPLACER::buildFpAreas(), collidesWithArea(), collidesWithCourtyard(), KIGFX::PCB_PAINTER::draw(), DRC_ENGINE::EvalRules(), GetEffectiveShape(), BOARD_INSPECTION_TOOL::InspectClearance(), IsOnLayer(), and DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances().
|
static |
Definition at line 1927 of file footprint.cpp.
References ARC_LOW_DEF, SHAPE_LINE_CHAIN::Area(), ERROR_INSIDE, ERROR_OUTSIDE, GetBoundingHull(), GetCoverageArea(), GENERAL_COLLECTOR::GetGuide(), PCB_GROUP::GetItems(), EDA_SHAPE::GetShape(), EDA_SHAPE::GetWidth(), EDA_SHAPE::IsFilled(), KI_FALLTHROUGH, KiROUND(), COLLECTORS_GUIDE::OnePixelInIU(), PCB_ARC_T, PCB_FOOTPRINT_T, PCB_GROUP_T, PCB_MARKER_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, polygonArea(), MARKER_BASE::ShapeToPolygon(), text, BOARD_ITEM::TransformShapeToPolygon(), PCB_SHAPE::TransformShapeToPolygon(), PCB_TEXTBOX::TransformTextToPolySet(), EDA_ITEM::Type(), and UNDEFINED_LAYER.
Referenced by GetCoverageArea(), and PCB_SELECTION_TOOL::GuessSelectionCandidates().
|
inline |
Definition at line 220 of file footprint.h.
References m_doc.
Referenced by BASIC_FOOTPRINT_INFO::BASIC_FOOTPRINT_INFO(), KI_TEST::CheckFootprint(), FOOTPRINT_DESC::FOOTPRINT_DESC(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), FOOTPRINT_INFO_GENERATOR::GenerateHtml(), GetMsgPanelInfo(), FP_TREE_SYNCHRONIZING_ADAPTER::GetValue(), FOOTPRINT_INFO_IMPL::load(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
inlineinherited |
Definition at line 129 of file eda_item.h.
References IS_BROKEN, IS_CHANGED, IS_MOVING, IS_NEW, IS_PASTED, EDA_ITEM::m_flags, and STRUCT_DELETED.
Referenced by SCH_EDIT_TOOL::ChangeTextType(), EDA_ITEM::ClearEditFlags(), SCH_EDIT_FRAME::DeleteJunction(), SCH_EDIT_TOOL::editFieldText(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), SCH_EDITOR_CONTROL::EditWithSymbolEditor(), SCH_SYMBOL::GetMsgPanelInfo(), SELECTION_CONDITIONS::Idle(), SELECTION_CONDITIONS::IdleSelection(), SYMBOL_EDITOR_MOVE_TOOL::Main(), PCB_POINT_EDITOR::OnSelectionChange(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), SCH_EDIT_FRAME::SelectUnit(), DIALOG_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), DIALOG_DIMENSION_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_TARGET_PROPERTIES::TransferDataFromWindow(), and DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow().
|
virtualinherited |
Reimplemented in PAD, and PCB_VIA.
Definition at line 230 of file board_item.cpp.
References EDA_ITEM::GetClass(), and UNIMPLEMENTED_FOR.
Referenced by collidesWithArea(), DRAWING_TOOL::DrawVia(), DRC_RTREE::Insert(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), and PCB_CONTROL::UpdateMessagePanel().
|
overridevirtual |
Some pad shapes can be complex (rounded/chamfered rectangle), even without considering custom shapes.
This routine returns a COMPOUND shape (set of simple shapes which make up the pad for use with routing, collision determination, etc).
aLayer | in case of items spanning multiple layers, only the shapes belonging to aLayer will be returned. Pass UNDEFINED_LAYER to return shapes for all layers. |
aFlash | optional parameter allowing a caller to force the pad to be flashed (or not flashed) on the current layer (default is to honour the pad's setting and the current connections for the given layer). |
Reimplemented from BOARD_ITEM.
Definition at line 2071 of file footprint.cpp.
References B_CrtYd, SHAPE_POLY_SET::COutline(), F_CrtYd, GetCourtyard(), GraphicalItems(), SHAPE_POLY_SET::OutlineCount(), pad, Pads(), and PCB_SHAPE_T.
|
inline |
Definition at line 631 of file footprint.h.
References m_fileFormatVersionAtLoad.
|
inline |
Definition at line 257 of file footprint.h.
References m_arflag.
Referenced by KI_TEST::CheckFootprint(), AR_AUTOPLACER::pickFootprint(), and sortFootprintsByRatsnestSize().
|
inlineinherited |
Definition at line 126 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by BACK_ANNOTATE::applyChangelist(), BuildBoardPolygonOutlines(), collidesWithArea(), ConvertOutlineToPolygon(), SCH_EDIT_FRAME::ConvertPart(), BOARD_COMMIT::dirtyIntersectingZones(), PL_EDIT_TOOL::DoDelete(), PCB_TOOL_BASE::doInteractiveItemPlacement(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), DRC_ENGINE::EvalRules(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), LIB_PIN::GetMsgPanelInfo(), LIB_SYMBOL::LIB_SYMBOL(), BOARD_INSPECTION_TOOL::makeDRCEngine(), CONVERT_TOOL::makePolysFromChainedSegs(), DIALOG_DRC::OnDRCItemSelected(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), DIALOG_SYMBOL_PROPERTIES::OnUnitChoice(), LIB_SYMBOL::operator=(), BOARD_COMMIT::Push(), PAD_TOOL::RecombinePad(), BOARD::Remove(), Remove(), SCH_EDIT_FRAME::SaveCopyInUndoList(), SCH_EDIT_FRAME::SelectUnit(), DS_DATA_ITEM::SyncDrawItems(), DS_DATA_ITEM_POLYGONS::SyncDrawItems(), DS_DATA_ITEM_BITMAP::SyncDrawItems(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), and DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow().
|
inlinevirtualinherited |
Similar to GetPosition, but allows items to return their visual center rather than their anchor.
Reimplemented in BOARD, PCB_SHAPE, and PCB_TRACK.
Definition at line 239 of file eda_item.h.
References EDA_ITEM::GetPosition().
Referenced by SCH_EDIT_FRAME::FocusOnItem().
|
inlineinherited |
Definition at line 150 of file view_item.h.
References KIGFX::VIEW_ITEM::m_forcedTransparency.
Referenced by EDA_ITEM::EDA_ITEM(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), and EDA_ITEM::operator=().
|
inline |
Definition at line 214 of file footprint.h.
References m_fpid.
Referenced by BASIC_FOOTPRINT_INFO::BASIC_FOOTPRINT_INFO(), EXPORTER_STEP::buildFootprint3DShapes(), FOOTPRINT_EDIT_FRAME::canCloseWindow(), FOOTPRINT_EDIT_FRAME::ClearModify(), CreateDevicesSection(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), DIALOG_EXCHANGE_FOOTPRINTS::DIALOG_EXCHANGE_FOOTPRINTS(), BOARD_INSPECTION_TOOL::DiffFootprint(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), doPushPadProperties(), FOOTPRINT_EDITOR_CONTROL::DuplicateFootprint(), FOOTPRINT_EDIT_FRAME::DuplicateFootprint(), FOOTPRINT_EDIT_FRAME::editFootprintProperties(), BOARD_EDITOR_CONTROL::EditFpInFpEditor(), PCB_EDIT_FRAME::ExchangeFootprint(), FOOTPRINT_EDIT_FRAME::ExportFootprint(), BOARD_EDITOR_CONTROL::ExportNetlist(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), PCB_PLUGIN::FootprintSave(), FP_LIB_TABLE::FootprintSave(), PCB_PLUGIN::format(), PLACE_FILE_EXPORTER::GenPositionData(), FOOTPRINT_EDIT_FRAME::GetLoadedFPID(), GetMsgPanelInfo(), FP_TREE_SYNCHRONIZING_ADAPTER::GetValue(), idf_export_footprint(), DIALOG_EXCHANGE_FOOTPRINTS::isMatch(), PCBNEW_JOBS_HANDLER::JobExportFpSvg(), LEGACY_PLUGIN::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), PCB_EDIT_FRAME::LoadFootprints(), LEGACY_PLUGIN::loadFP_SHAPE(), LEGACY_PLUGIN::loadPAD(), DSN::SPECCTRA_DB::makeIMAGE(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), EAGLE_PLUGIN::packageText(), DIALOG_EXCHANGE_FOOTPRINTS::processFootprint(), DIALOG_EXCHANGE_FOOTPRINTS::processMatchingFootprints(), FOOTPRINT_EDIT_FRAME::ReloadFootprint(), FOOTPRINT_VIEWER_FRAME::ReloadFootprint(), BOARD_NETLIST_UPDATER::replaceFootprint(), FOOTPRINT_EDITOR_CONTROL::SaveAs(), FOOTPRINT_EDIT_FRAME::SaveFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), FOOTPRINT_EDIT_FRAME::SaveFootprintInLibrary(), PCB_BASE_FRAME::setFPWatcher(), setLibNickname(), PCB_EDIT_FRAME::ShowFootprintPropertiesDialog(), BOARD_NETLIST_UPDATER::testConnectivity(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), FOOTPRINT_EDIT_FRAME::UpdateTitle(), and PANEL_FP_PROPERTIES_3D_MODEL::validateModelExists().
|
inline |
Definition at line 217 of file footprint.h.
References LIB_ID::Format(), and m_fpid.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
BOX2I FOOTPRINT::GetFpPadsLocalBbox | ( | ) | const |
Return the bounding box containing pads when the footprint is on the front side, orientation 0, position 0,0.
Mainly used in Gerber place file to draw a footprint outline when the courtyard is missing or broken.
Definition at line 783 of file footprint.cpp.
References ANGLE_0, dummy, BOX2< Vec >::Merge(), and pad.
|
inherited |
Definition at line 254 of file board_item.cpp.
References BOARD_ITEM::GetParentFootprint(), EDA_ITEM::GetPosition(), and RotatePoint().
Referenced by PCB_PLUGIN::format(), DIALOG_PAD_PROPERTIES::initValues(), FOOTPRINT::cmp_pads::operator()(), padNeedsUpdate(), and textNeedsUpdate().
|
virtualinherited |
Reimplemented in PCB_SHAPE, PCB_TRACK, and ZONE.
Definition at line 310 of file eda_item.cpp.
References EDA_ITEM::GetTypeDesc().
Referenced by PROPERTIES_PANEL::rebuildProperties().
|
inline |
Return the initial comments block or NULL if none, without transfer of ownership.
Definition at line 795 of file footprint.h.
References m_initial_comments.
Referenced by PCB_PLUGIN::format().
|
overridevirtual |
Return a user-visible description string of this item.
This description is used in disambiguation menus, the message panel, ERC/DRC reports, etc.
The default version of this function raises an assertion in the debug mode and returns a string to indicate that it was not overridden to provide the object specific text.
Reimplemented from EDA_ITEM.
Definition at line 1369 of file footprint.cpp.
References _, and GetReference().
Referenced by DRC_ENGINE::EvalRules().
|
inline |
Definition at line 223 of file footprint.h.
References m_keywords.
Referenced by BASIC_FOOTPRINT_INFO::BASIC_FOOTPRINT_INFO(), KI_TEST::CheckFootprint(), FOOTPRINT_DESC::FOOTPRINT_DESC(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), FOOTPRINT_INFO_GENERATOR::GenerateHtml(), GetMsgPanelInfo(), FOOTPRINT_INFO_IMPL::load(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
inlineoverridevirtual |
Return the primary layer this item is on.
Reimplemented from BOARD_ITEM.
Definition at line 202 of file footprint.h.
References BOARD_ITEM::GetLayer().
Referenced by EXPORTER_STEP::buildFootprint3DShapes(), AR_AUTOPLACER::buildFpAreas(), MICROWAVE_TOOL::createMicrowaveInductor(), PCB_EDIT_FRAME::ExchangeFootprint(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), Flip(), FOOTPRINT_DESC::FOOTPRINT_DESC(), PCB_PLUGIN::FootprintSave(), PCB_PLUGIN::format(), DSN::SPECCTRA_DB::FromSESSION(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), AR_AUTOPLACER::getOptimalFPPlacement(), idf_export_footprint(), GENERAL_COLLECTOR::Inspect(), IsFlipped(), PAD::IsFlipped(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), EAGLE_PLUGIN::packagePad(), PCB_TEXT::PCB_TEXT(), SetLayerAndFlip(), AR_AUTOPLACER::testFootprintOnBoard(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow().
|
inherited |
Return the name of the PCB layer on which the item resides.
Definition at line 95 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD::GetLayerName(), BOARD::GetStandardLayerName(), and BOARD_ITEM::m_layer.
Referenced by PCB_DIMENSION_BASE::GetItemDescription(), PCB_SHAPE::GetItemDescription(), PCB_TEXT::GetItemDescription(), PCB_TEXTBOX::GetItemDescription(), PCB_TRACK::GetItemDescription(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_DIM_LEADER::GetMsgPanelInfo(), PCB_SHAPE::GetMsgPanelInfo(), PCB_TARGET::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), FOOTPRINT_SEARCH_HANDLER::GetResultCell(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), and ResolveTextVar().
|
inlinevirtualinherited |
Return a std::bitset of all layers on which the item physically resides.
Reimplemented in PCB_GROUP, PAD, PCB_VIA, and ZONE.
Definition at line 201 of file board_item.h.
References BOARD_ITEM::m_layer, and UNDEFINED_LAYER.
Referenced by PCB_GRID_HELPER::BestSnapAnchor(), KI_TEST::CheckFpShape(), collidesWithArea(), BOARD_COMMIT::dirtyIntersectingZones(), APPEARANCE_CONTROLS::doApplyLayerPreset(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), DRAWING_TOOL::DrawVia(), DRC_ENGINE::EvalRules(), existsOnLayerFunc(), extractDiffPairCoupledItems(), PCB_TEXT::Flip(), PCB_TEXTBOX::Flip(), hash_board_item(), BOARD_INSPECTION_TOOL::InspectClearance(), PNS_KICAD_IFACE::IsItemVisible(), isMaskAperture(), BOARD_ITEM::layerMaskDescribe(), FABMASTER::loadZone(), PCB_DIMENSION_BASE::Mirror(), PCB_GRID_HELPER::nearestAnchor(), PCB_POINT_EDITOR::OnSelectionChange(), DIALOG_CLEANUP_GRAPHICS::OnSelectItem(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), CN_VISITOR::operator()(), BOARD_ITEM::ptr_cmp::operator()(), KI_TEST::kitest_cmp_drawings::operator()(), DRC_ENGINE::ProcessAssertions(), EDIT_TOOL::Properties(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), PCB_SELECTION_CONDITIONS::sameLayerFunc(), PCB_SELECTION_TOOL::selectAllConnectedTracks(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), and PCB_CONTROL::UpdateMessagePanel().
int FOOTPRINT::GetLikelyAttribute | ( | ) | const |
Returns the most likely attribute based on pads Either FP_THROUGH_HOLE/FP_SMD/OTHER(0)
Definition at line 721 of file footprint.cpp.
References FP_SMD, FP_THROUGH_HOLE, m_pads, and pad.
Referenced by CheckFootprintAttributes().
|
inline |
Definition at line 691 of file footprint.h.
References m_link.
Referenced by footprintIsFromBoard(), FOOTPRINT_EDIT_FRAME::IsCurrentFPFromBoard(), FOOTPRINT_EDIT_FRAME::OnUpdateSaveFootprintToBoard(), FOOTPRINT_EDIT_FRAME::SaveFootprint(), and FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard().
|
inline |
Definition at line 232 of file footprint.h.
References m_localClearance.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), PAD::GetLocalClearanceOverrides(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
inline |
Definition at line 235 of file footprint.h.
References _, GetReference(), and m_localClearance.
|
inline |
Definition at line 229 of file footprint.h.
References m_localSolderMaskMargin.
Referenced by FootprintNeedsUpdate(), PCB_PLUGIN::format(), PAD::GetSolderMaskExpansion(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
inline |
Definition at line 243 of file footprint.h.
References m_localSolderPasteMargin.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), PAD::GetSolderPasteMargin(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
inline |
Definition at line 246 of file footprint.h.
References m_localSolderPasteMarginRatio.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), PAD::GetSolderPasteMargin(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
overridevirtual |
Return a pointer to an image to be used in menus.
The default version returns the right arrow image. Override this function to provide object specific menu images.
Reimplemented from EDA_ITEM.
Definition at line 1380 of file footprint.cpp.
|
overridevirtual |
Populate aList of MSG_PANEL_ITEM objects with it's internal state for display purposes.
aFrame | is the EDA_DRAW_FRAME that displays the message panel |
aList | is the list to populate. |
Reimplemented from EDA_ITEM.
Definition at line 1023 of file footprint.cpp.
References _, DO_NOT_INCLUDE_NPTH, FP_BOARD_ONLY, FP_DNP, FP_EXCLUDE_FROM_BOM, FP_EXCLUDE_FROM_POS_FILES, FP_is_PLACED, FRAME_FOOTPRINT_EDITOR, FRAME_FOOTPRINT_VIEWER, FRAME_FOOTPRINT_VIEWER_MODAL, GetDescription(), GetFPID(), GetKeywords(), GetOrientation(), GetPadCount(), EDA_TEXT::GetText(), LIB_ID::GetUniStringLibId(), IsFlipped(), IsLocked(), EDA_BASE_FRAME::IsType(), m_3D_Drawings, m_attributes, m_doc, m_fpid, m_fpStatus, m_keywords, m_reference, m_value, and UnescapeString().
Referenced by PCB_CONTROL::UpdateMessagePanel(), DISPLAY_FOOTPRINTS_FRAME::UpdateMsgPanel(), FOOTPRINT_EDIT_FRAME::UpdateMsgPanel(), and FOOTPRINT_VIEWER_FRAME::UpdateMsgPanel().
|
inline |
Definition at line 274 of file footprint.h.
References m_netTiePadGroups.
Referenced by FootprintNeedsUpdate(), PCB_PLUGIN::format(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
Definition at line 2231 of file footprint.cpp.
References PAD::GetNumber(), m_pads, MapPadNumbersToNetTieGroups(), and pad.
Referenced by CheckShortingPads().
wxString FOOTPRINT::GetNextPadNumber | ( | const wxString & | aLastPadName | ) | const |
Return the next available pad number in the footprint.
aFillSequenceGaps | true if the numbering should "fill in" gaps in the sequence, else return the highest value + 1 |
Definition at line 1880 of file footprint.cpp.
References UTIL::GetRefDesPrefix(), GetTrailingInt(), m_pads, and pad.
Referenced by EDIT_TOOL::Duplicate().
|
inline |
Definition at line 193 of file footprint.h.
References m_orient.
Referenced by PCAD2KICAD::PCAD_ARC::AddToBoard(), PCAD2KICAD::PCAD_LINE::AddToBoard(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), PCAD2KICAD::PCAD_PAD::AddToFootprint(), EXPORTER_STEP::buildFootprint3DShapes(), KI_TEST::CheckFootprint(), doPushPadProperties(), KI_TEST::DrawArc(), KI_TEST::DrawSegment(), PCB_EDIT_FRAME::ExchangeFootprint(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), FootprintNeedsUpdate(), FootprintWriteShape(), PCB_PLUGIN::format(), formatInternalUnits(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), GetMsgPanelInfo(), PAD::GetMsgPanelInfo(), hash_fp_item(), idf_export_footprint(), PAD::ImportSettingsFrom(), FABMASTER::loadFootprints(), LEGACY_PLUGIN::loadFP_SHAPE(), DSN::SPECCTRA_DB::makeIMAGE(), DSN::mapPt(), MoveAnchorPosition(), EAGLE_PLUGIN::orientFPText(), EAGLE_PLUGIN::packageCircle(), EAGLE_PLUGIN::packagePolygon(), EAGLE_PLUGIN::packageRectangle(), EAGLE_PLUGIN::packageWire(), padNeedsUpdate(), ALTIUM_PCB::ParseComponentsBodies6Data(), PCB_PARSER::parsePCB_TEXT(), pasteFootprintItemsToFootprintEditor(), Rotate(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and EAGLE_PLUGIN::transferPad().
|
inline |
Definition at line 209 of file footprint.h.
References EDA_ANGLE::AsDegrees(), and m_orient.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
PAD * FOOTPRINT::GetPad | ( | const VECTOR2I & | aPosition, |
LSET | aLayerMask = LSET::AllLayersMask() |
||
) |
Get a pad at aPosition on aLayerMask in the footprint.
aPosition | A VECTOR2I object containing the position to hit test. |
aLayerMask | A layer or layers to mask the hit test. |
Definition at line 1207 of file footprint.cpp.
unsigned FOOTPRINT::GetPadCount | ( | INCLUDE_NPTH_T | aIncludeNPTH = INCLUDE_NPTH_T(INCLUDE_NPTH) | ) | const |
Return the number of pads.
aIncludeNPTH | includes non-plated through holes when true. Does not include non-plated through holes when false. |
Definition at line 1223 of file footprint.cpp.
Referenced by BASIC_FOOTPRINT_INFO::BASIC_FOOTPRINT_INFO(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), GetMsgPanelInfo(), FOOTPRINT_INFO_IMPL::load(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), sortFootprintsByComplexity(), and AR_AUTOPLACER::testFootprintOnBoard().
|
inlineinherited |
Definition at line 176 of file board_item.h.
References EDA_ITEM::m_parent.
Referenced by ALIGN_DISTRIBUTE_TOOL::AlignBottom(), ALIGN_DISTRIBUTE_TOOL::AlignCenterX(), ALIGN_DISTRIBUTE_TOOL::AlignCenterY(), ALIGN_DISTRIBUTE_TOOL::AlignTop(), CoverageRatio(), BOARD_ITEM::DeleteStructure(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersVertically(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsVertically(), EDIT_TOOL::DragArcTrack(), KIGFX::PCB_PAINTER::draw(), PCB_SELECTION_TOOL::FilterCollectorForFreePads(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), BOARD_ITEM::GetBoard(), getClosestGroup(), BOARD_ITEM::GetParentFootprint(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), PCB_TEXTBOX::GetShownText(), GENERAL_COLLECTOR::Inspect(), PCB_SELECTION_TOOL::itemPassesFilter(), memberOfGroupFunc(), EDIT_TOOL::MoveExact(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), PCB_SELECTION_TOOL::Selectable(), BOARD_ITEM::SwapItemData(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), and DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem().
|
inherited |
Definition at line 240 of file board_item.cpp.
References BOARD_ITEM::GetParent(), PCB_FOOTPRINT_T, PCB_GROUP_T, and EDA_ITEM::Type().
Referenced by CN_CONNECTIVITY_ALGO::Add(), GRAPHICS_IMPORTER_PCBNEW::AddPolygon(), DRC_TEST_PROVIDER_SOLDER_MASK::checkItemMask(), DRC_TEST_PROVIDER_SOLDER_MASK::checkMaskAperture(), CONVERT_TOOL::CreatePolys(), EDIT_TOOL::DeleteItems(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXTBOX_PROPERTIES::DIALOG_TEXTBOX_PROPERTIES(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), EDIT_TOOL::Duplicate(), PCB_PLUGIN::format(), PCB_BASE_EDIT_FRAME::GetContextualTextVars(), PCB_TEXT::GetDrawRotation(), PAD::GetFPRelativeOrientation(), BOARD_ITEM::GetFPRelativePosition(), PCB_TEXT::GetItemDescription(), PCB_SHAPE::GetMenuImage(), PCB_SHAPE::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXT::GetShownText(), GROUP_TOOL::Group(), hash_fp_item(), GENERAL_COLLECTOR::Inspect(), ARRAY_CREATOR::Invoke(), PNS_PCBNEW_RULE_RESOLVER::IsInNetTie(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), PNS_PCBNEW_RULE_RESOLVER::IsNetTieExclusion(), DRC_ENGINE::IsNetTieExclusion(), PCB_SELECTION_TOOL::itemPassesFilter(), memberOfFootprintFunc(), BOARD::Move(), BOARD_COMMIT::parentObject(), BRDITEMS_PLOTTER::PlotPcbShape(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), BOARD_COMMIT::Push(), PAD_TOOL::RecombinePad(), PCB_PARSER::resolveGroups(), PAD::SameLogicalPadAs(), CLIPBOARD_IO::SaveSelection(), PCB_SELECTION_TOOL::Selectable(), PAD::SetFPRelativeOrientation(), BOARD_ITEM::SetFPRelativePosition(), PAD::SharesNetTieGroup(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DIALOG_PAD_PROPERTIES::TransferDataFromWindow(), PCB_POINT_EDITOR::updateItem(), PCB_TEXT::ViewGetLayers(), PCB_SHAPE::ViewGetLOD(), PCB_TEXT::ViewGetLOD(), ZONE::ViewGetLOD(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), and ZONE::ZONE().
|
inlineinherited |
Definition at line 85 of file board_item.h.
References BOARD_ITEM::m_group.
Referenced by PCB_GROUP::AddItem(), EDIT_TOOL::DeleteItems(), BOARD_ITEM::Duplicate(), PCB_EDIT_FRAME::ExchangeFootprint(), DSN::SPECCTRA_DB::FromSESSION(), getClosestGroup(), BOARD::GroupLegalOps(), BOARD_ITEM::IsLocked(), memberOfGroupFunc(), BOARD::Move(), PCB_CONTROL::Paste(), PCB_CONTROL::placeBoardItems(), BOARD_COMMIT::Push(), BOARD::Remove(), Remove(), GROUP_TOOL::RemoveFromGroup(), BOARD_ITEM::SwapItemData(), DIALOG_GROUP_PROPERTIES::TransferDataFromWindow(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem(), and PCB_GROUP::WithinScope().
|
inline |
Definition at line 226 of file footprint.h.
References m_path.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint(), BOARD_EDITOR_CONTROL::ExportNetlist(), PCB_PLUGIN::format(), PCB_SELECTION_TOOL::selectSameSheet(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inlineoverridevirtual |
Reimplemented from EDA_ITEM.
Definition at line 190 of file footprint.h.
References m_pos.
Referenced by PCB_BASE_FRAME::AddFootprintToBoard(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), PCAD2KICAD::PCAD_ARC::AddToBoard(), PCAD2KICAD::PCAD_LINE::AddToBoard(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), PCAD2KICAD::PCAD_PAD::AddToFootprint(), EXPORTER_STEP::buildFootprint3DShapes(), KI_TEST::CheckFootprint(), PNS_KICAD_IFACE::Commit(), PCB_GRID_HELPER::computeAnchors(), MICROWAVE_TOOL::createBaseFootprint(), KIGFX::PCB_PAINTER::draw(), KI_TEST::DrawArc(), KI_TEST::DrawSegment(), PCB_EDIT_FRAME::ExchangeFootprint(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), FootprintNeedsUpdate(), PCB_PLUGIN::FootprintSave(), FootprintWriteShape(), PCB_PLUGIN::format(), formatInternalUnits(), DSN::SPECCTRA_DB::FromSESSION(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), GetBoundingHull(), AR_AUTOPLACER::getOptimalFPPlacement(), hash_fp_item(), idf_export_footprint(), ROUTER_TOOL::InlineDrag(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FABMASTER::loadFootprints(), LEGACY_PLUGIN::loadFP_SHAPE(), DSN::SPECCTRA_DB::makeIMAGE(), DSN::mapPt(), EAGLE_PLUGIN::orientFootprintAndText(), EAGLE_PLUGIN::packageCircle(), EAGLE_PLUGIN::packageHole(), EAGLE_PLUGIN::packagePolygon(), EAGLE_PLUGIN::packageRectangle(), EAGLE_PLUGIN::packageWire(), PAD::PAD(), ALTIUM_PCB::ParseComponentsBodies6Data(), PCB_PARSER::parsePCB_TEXT(), PCB_TEXT::PCB_TEXT(), BOARD_EDITOR_CONTROL::PlaceFootprint(), CLIPBOARD_IO::SaveSelection(), DRAWING_TOOL::SetAnchor(), SetLayerAndFlip(), SetOrientation(), DRC_TEST_PROVIDER_SCHEMATIC_PARITY::testNetlist(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and EAGLE_PLUGIN::transferPad().
|
inline |
Definition at line 122 of file footprint.h.
References m_privateLayers.
Referenced by KIGFX::PCB_PAINTER::Draw(), PCB_PLUGIN::format(), BRDITEMS_PLOTTER::PlotFootprintGraphicItems(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), and TransformFPShapesToPolySet().
|
inline |
Definition at line 576 of file footprint.h.
References m_properties.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint(), PCB_PLUGIN::format(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
|
inline |
Definition at line 521 of file footprint.h.
References EDA_TEXT::GetText(), and m_reference.
Referenced by AR_AUTOPLACER::AutoplaceFootprints(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildFootprint3DShapes(), FOOTPRINT_EDIT_FRAME::CanCloseFPFromBoard(), FOOTPRINT_EDIT_FRAME::canCloseWindow(), KI_TEST::CheckFootprint(), collectItemsForSyncParts(), CollisionMatchesExpected(), compareFootprintsbyRef(), DIALOG_TRACK_VIA_PROPERTIES::confirmPadChange(), ALTIUM_PCB::ConvertPads6ToFootprintItemOnCopper(), PCB_BASE_FRAME::CreateNewFootprint(), DIALOG_EXCHANGE_FOOTPRINTS::DIALOG_EXCHANGE_FOOTPRINTS(), EDIT_TOOL::doMoveSelection(), BOARD_EDITOR_CONTROL::ExportNetlist(), FormatProbeItem(), GetItemDescription(), GetLocalClearance(), PAD::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), DIALOG_BOARD_REANNOTATE::GetNewRefDes(), CADSTAR_PCB_ARCHIVE_LOADER::getPadReference(), GetReferenceAsString(), FOOTPRINT_SEARCH_HANDLER::GetResultCell(), getShapeName(), IncrementReference(), GENERAL_COLLECTOR::Inspect(), InvalidMatchesExpected(), DIALOG_EXCHANGE_FOOTPRINTS::isMatch(), EAGLE_PLUGIN::loadElements(), CADSTAR_PCB_ARCHIVE_LOADER::loadNets(), EDA_3D_CANVAS::OnMouseMove(), EAGLE_PLUGIN::packageText(), BRDITEMS_PLOTTER::PlotPad(), BRDITEMS_PLOTTER::PlotPcbShape(), DIALOG_EXCHANGE_FOOTPRINTS::processFootprint(), FOOTPRINT_EDIT_FRAME::ReloadFootprint(), BOARD_NETLIST_UPDATER::replaceFootprint(), CLIPBOARD_IO::SaveSelection(), DRC_TEST_PROVIDER_SCHEMATIC_PARITY::testNetlist(), BOARD_NETLIST_UPDATER::updateComponentPadConnections(), BOARD_NETLIST_UPDATER::updateFootprintParameters(), and FOOTPRINT_EDIT_FRAME::UpdateTitle().
|
inline |
Definition at line 536 of file footprint.h.
References GetReference().
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inlinevirtualinherited |
Return the coordinates that should be used for sorting this element visually compared to other elements.
For instance, for lines the midpoint might be a better sorting point than either end.
Reimplemented in SCH_LINE.
Definition at line 248 of file eda_item.h.
References EDA_ITEM::GetPosition().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 83 of file board_item.cpp.
References DEFAULT_LINE_WIDTH, EDA_IU_SCALE::mmToIU(), and pcbIUScale.
Referenced by CONVERT_TOOL::CreatePolys().
|
inherited |
Return a translated description of the type for this EDA_ITEM for display in user facing messages.
Definition at line 301 of file eda_item.cpp.
References ENUM_MAP< T >::Instance(), and EDA_ITEM::Type().
Referenced by PCB_GROUP::AddItem(), EDIT_TOOL::doMoveSelection(), and EDA_ITEM::GetFriendlyName().
wxString FOOTPRINT::GetTypeName | ( | ) | const |
Get the type of footprint.
Definition at line 771 of file footprint.cpp.
References _, FP_SMD, FP_THROUGH_HOLE, and m_attributes.
Referenced by KI_TEST::CheckFootprint(), and CheckFootprintAttributes().
unsigned FOOTPRINT::GetUniquePadCount | ( | INCLUDE_NPTH_T | aIncludeNPTH = INCLUDE_NPTH_T(INCLUDE_NPTH) | ) | const |
Return the number of unique non-blank pads.
A complex pad can be built with many pads having the same pad name to create a complex shape or fragmented solder paste areas.
aIncludeNPTH | includes non-plated through holes when true. Does not include non-plated through holes when false. |
Definition at line 1242 of file footprint.cpp.
References LSET::AllCuMask(), m_pads, and pad.
Referenced by BASIC_FOOTPRINT_INFO::BASIC_FOOTPRINT_INFO(), and FOOTPRINT_INFO_IMPL::load().
|
inline |
Definition at line 549 of file footprint.h.
References EDA_TEXT::GetText(), and m_value.
Referenced by BOOST_AUTO_TEST_CASE(), KI_TEST::CheckFootprint(), CreateDevicesSection(), PCB_BASE_FRAME::CreateNewFootprint(), DIALOG_EXCHANGE_FOOTPRINTS::DIALOG_EXCHANGE_FOOTPRINTS(), FOOTPRINT_EDIT_FRAME::DuplicateFootprint(), PCB_EDIT_FRAME::ExchangeFootprint(), BOARD_EDITOR_CONTROL::ExportNetlist(), FOOTPRINT_SEARCH_HANDLER::GetResultCell(), GetValueAsString(), DIALOG_EXCHANGE_FOOTPRINTS::isMatch(), EAGLE_PLUGIN::loadElements(), EAGLE_PLUGIN::packageText(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), CLIPBOARD_IO::SaveSelection(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 563 of file footprint.h.
References GetValue().
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inlineinherited |
Definition at line 89 of file board_item.h.
References EDA_ITEM::GetPosition(), and VECTOR2< T >::x.
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsHorizontally(), FOOTPRINT_SEARCH_HANDLER::GetResultCell(), ZONE_SEARCH_HANDLER::GetResultCell(), BOARD_ITEM::SetY(), TRACK_VIA_DESC::TRACK_VIA_DESC(), and ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 95 of file board_item.h.
References EDA_ITEM::GetPosition(), and VECTOR2< T >::y.
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsVertically(), FOOTPRINT_SEARCH_HANDLER::GetResultCell(), ZONE_SEARCH_HANDLER::GetResultCell(), BOARD_ITEM::SetX(), TRACK_VIA_DESC::TRACK_VIA_DESC(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 250 of file footprint.h.
References m_zoneConnection.
Referenced by DRC_ENGINE::EvalRules(), FOOTPRINT_DESC::FOOTPRINT_DESC(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
inlinevirtualinherited |
Fetch the zone settings for this container.
Reimplemented in BOARD.
Definition at line 86 of file board_item_container.h.
References BOARD_ITEM_CONTAINER::m_zoneSettings.
Referenced by ZONE::ZONE().
|
inline |
Definition at line 175 of file footprint.h.
References m_drawings.
Referenced by BOARD_ADAPTER::addFootprintShapes(), BuildCourtyardCaches(), KI_TEST::CheckFootprint(), PCB_BASE_FRAME::CreateNewFootprint(), DIALOG_CLEANUP_GRAPHICS::doCleanup(), KIGFX::PCB_PAINTER::draw(), PCB_EDIT_FRAME::ExchangeFootprint(), FOOTPRINT(), FootprintNeedsUpdate(), FootprintWriteShape(), PCB_PLUGIN::format(), FOOTPRINT_EDIT_FRAME::GetDocumentExtents(), GetEffectiveShape(), hash_fp_item(), hashFootprint(), ROUTER_TOOL::InlineDrag(), MoveAnchorPosition(), operator=(), pasteFootprintItemsToFootprintEditor(), PCB_CONTROL::placeBoardItems(), BRDITEMS_PLOTTER::PlotFootprintGraphicItems(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), PCB_CONTROL::pruneItemLayers(), PAD_TOOL::RecombinePad(), BOARD_EDITOR_CONTROL::RepairBoard(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), PCB_SELECTION_TOOL::Selectable(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), BOARD_ADAPTER::transformFPShapesToPolySet(), and TransformFPShapesToPolySet().
|
inline |
Definition at line 176 of file footprint.h.
References m_drawings.
|
inline |
Definition at line 181 of file footprint.h.
References m_groups.
Referenced by KI_TEST::CheckFootprint(), FOOTPRINT(), PCB_PLUGIN::format(), operator=(), pasteFootprintItemsToFootprintEditor(), BOARD_EDITOR_CONTROL::RepairBoard(), and FOOTPRINT_EDITOR_CONTROL::RepairFootprint().
|
inline |
Definition at line 182 of file footprint.h.
References m_groups.
|
inlineinherited |
Definition at line 127 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by GRAPHICS_CLEANER::cleanupShapes(), SCH_EDIT_TOOL::DoDelete(), KIGFX::SCH_PAINTER::draw(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), IsConflicting(), ZONE::IsConflicting(), SCH_MOVE_TOOL::Main(), SCH_SCREEN::MarkConnections(), SCH_MOVE_TOOL::moveItem(), SCH_MOVE_TOOL::orthoLineDrag(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), BOARD_COMMIT::Push(), SCHEMATIC_COMMIT::pushLibEdit(), SCH_EDIT_TOOL::Rotate(), EE_TOOL_BASE< T >::saveCopyInUndoList(), and EE_SELECTION_TOOL::selectMultiple().
|
inlinevirtualinherited |
Reimplemented in PAD, and PCB_VIA.
Definition at line 141 of file board_item.h.
Referenced by DRAWING_TOOL::DrawVia(), hasDrilledHole(), DRC_RTREE::Insert(), BOARD_INSPECTION_TOOL::InspectClearance(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackAgainstItem(), and PCB_CONTROL::UpdateMessagePanel().
|
inlinevirtualinherited |
Check if this item has line stoke properties.
Reimplemented in PCB_SHAPE.
Definition at line 188 of file board_item.h.
|
inline |
bool FOOTPRINT::HasThroughHolePads | ( | ) | const |
Definition at line 2542 of file footprint.cpp.
|
overridevirtual |
Test if aRect intersects this item.
aRect | A reference to a BOX2I object containing the rectangle to test. |
aContained | Set to true to test for containment instead of an intersection. |
aAccuracy | Increase aRect by this amount. |
Reimplemented from EDA_ITEM.
Definition at line 1138 of file footprint.cpp.
References BOX2< Vec >::Contains(), GetBoundingBox(), BOX2< Vec >::Inflate(), BOX2< Vec >::Intersects(), m_drawings, m_pads, m_zones, pad, and PCB_TEXT_T.
|
overridevirtual |
Test if aPosition is inside or on the boundary of this item.
aPosition | A reference to a VECTOR2I object containing the coordinates to test. |
aAccuracy | Increase the item bounding box by this amount. |
Reimplemented from EDA_ITEM.
Definition at line 1125 of file footprint.cpp.
References BOX2< Vec >::Contains(), GetBoundingBox(), and BOX2< Vec >::Inflate().
Referenced by GENERAL_COLLECTOR::Inspect().
bool FOOTPRINT::HitTestAccurate | ( | const VECTOR2I & | aPosition, |
int | aAccuracy = 0 |
||
) | const |
Test if a point is inside the bounding polygon of the footprint.
The other hit test methods are just checking the bounding box, which can be quite inaccurate for rotated or oddly-shaped footprints.
aPosition | is the point to test |
Definition at line 1132 of file footprint.cpp.
References SHAPE_POLY_SET::Collide(), and GetBoundingHull().
Referenced by GENERAL_COLLECTOR::Inspect().
|
inline |
Definition at line 256 of file footprint.h.
References m_arflag.
void FOOTPRINT::IncrementReference | ( | int | aDelta | ) |
Bump the current reference by aDelta.
Definition at line 1900 of file footprint.cpp.
References UTIL::GetRefDesPrefix(), GetReference(), GetTrailingInt(), and SetReference().
|
inline |
Definition at line 585 of file footprint.h.
References FP_BOARD_ONLY, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inlineinherited |
Definition at line 108 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::m_flags.
Referenced by KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::GERBVIEW_PAINTER::draw(), SCH_FIND_REPLACE_TOOL::FindNext(), SCH_EDIT_FRAME::FocusOnItem(), KIGFX::DS_RENDER_SETTINGS::GetColor(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), KIGFX::SCH_PAINTER::getLineWidth(), KIGFX::SCH_PAINTER::setDeviceColors(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
bool FOOTPRINT::IsConflicting | ( | ) | const |
Definition at line 475 of file footprint.cpp.
References COURTYARD_CONFLICT, and EDA_ITEM::HasFlag().
Referenced by ViewGetLayers(), and ViewGetLOD().
|
inlinevirtualinherited |
Returns information if the object is derived from BOARD_CONNECTED_ITEM.
Reimplemented in BOARD_CONNECTED_ITEM, and ZONE.
Definition at line 128 of file board_item.h.
Referenced by PNS_PCBNEW_RULE_RESOLVER::DpNetPair(), DRC_ENGINE::EvalRules(), PNS::NODE::FindItemByParent(), BOARD_INSPECTION_TOOL::getItemDescription(), inDiffPairFunc(), BOARD_INSPECTION_TOOL::InspectClearance(), CONNECTIVITY_DATA::MarkItemNetAsDirty(), CN_CONNECTIVITY_ALGO::markItemNetAsDirty(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), and DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones().
|
inline |
Definition at line 621 of file footprint.h.
References FP_DNP, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inlineinherited |
Definition at line 107 of file eda_item.h.
References ENTERED, and EDA_ITEM::m_flags.
Referenced by KIGFX::PCB_PAINTER::draw().
|
inline |
Definition at line 603 of file footprint.h.
References FP_EXCLUDE_FROM_BOM, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 594 of file footprint.h.
References FP_EXCLUDE_FROM_POS_FILES, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 326 of file footprint.h.
References B_Cu, and GetLayer().
Referenced by PCB_BASE_FRAME::AddFootprintToBoard(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), FootprintNeedsUpdate(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), GetMsgPanelInfo(), ALTIUM_PCB::ParseComponentsBodies6Data(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PCB_CONTROL::pruneItemLayers(), PCB_SELECTION_TOOL::Selectable(), and DIALOG_PAD_PROPERTIES::TransferDataFromWindow().
|
inlineinherited |
Definition at line 184 of file eda_item.h.
References EDA_ITEM::m_forceVisible.
Referenced by KIGFX::SCH_PAINTER::draw(), and SCH_FIELD::Print().
|
inlinevirtualinherited |
Definition at line 266 of file board_item.h.
References BOARD_ITEM::m_isKnockout.
Referenced by BOARD_ADAPTER::addText(), KIGFX::PCB_PAINTER::draw(), PCB_PLUGIN::format(), PCB_TEXT::GetBoundingBox(), PCB_TEXT::GetEffectiveShape(), PCB_TEXT_DESC::PCB_TEXT_DESC(), BRDITEMS_PLOTTER::PlotFootprintGraphicItems(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), BRDITEMS_PLOTTER::PlotPcbGraphicItem(), PCB_TEXT::TextHitTest(), and PCB_TEXT::TransformTextToPolySet().
|
static |
Test for validity of a name of a footprint to be used in a footprint library ( no spaces, dir separators ... ).
aName | is the name in library to validate. |
Definition at line 1526 of file footprint.cpp.
References StringLibNameInvalidChars().
Referenced by DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::checkFootprintName().
|
inlineoverridevirtual |
Reimplemented from BOARD_ITEM.
Definition at line 342 of file footprint.h.
References FP_is_LOCKED, and m_fpStatus.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint(), PCB_PLUGIN::format(), GetMsgPanelInfo(), itemIsIncludedByFilter(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and ViewGetLayers().
|
inlineinherited |
Definition at line 102 of file eda_item.h.
References IS_CHANGED, and EDA_ITEM::m_flags.
Referenced by PCB_EDIT_FRAME::OpenProjectFiles().
|
inlineinherited |
Definition at line 104 of file eda_item.h.
References IS_MOVING, and EDA_ITEM::m_flags.
Referenced by SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), SCH_EDIT_TOOL::AutoplaceFields(), LIB_PIN::CalcEdit(), KIGFX::SCH_PAINTER::draw(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), PCB_BASE_FRAME::PlaceFootprint(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDITOR_EDIT_TOOL::Rotate(), and SCH_EDIT_TOOL::Swap().
|
inline |
Definition at line 259 of file footprint.h.
References group, and m_netTiePadGroups.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::checkItemMask(), PCB_PLUGIN::format(), PNS_PCBNEW_RULE_RESOLVER::IsInNetTie(), PNS_PCBNEW_RULE_RESOLVER::IsNetTieExclusion(), DRC_ENGINE::IsNetTieExclusion(), DIALOG_FOOTPRINT_CHECKER::runChecks(), and PAD::SharesNetTieGroup().
|
inlineinherited |
Definition at line 103 of file eda_item.h.
References IS_NEW, and EDA_ITEM::m_flags.
Referenced by SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), SCH_EDIT_TOOL::ChangeTextType(), SCH_EDIT_TOOL::ConvertDeMorgan(), EDIT_TOOL::DragArcTrack(), KIGFX::SCH_PAINTER::draw(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), SCH_MOVE_TOOL::getConnectedDragItems(), DIALOG_PIN_PROPERTIES::getSyncPinsMessage(), SYMBOL_EDITOR_DRAWING_TOOLS::Init(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), EE_POINT_EDITOR::Main(), SCH_MOVE_TOOL::Main(), SYMBOL_EDITOR_MOVE_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_POINT_EDITOR::Main(), EDIT_TOOL::MoveExact(), PCB_BASE_FRAME::PlaceFootprint(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_SHAPE_PROPERTIES::TransferDataFromWindow(), DIALOG_SHEET_PIN_PROPERTIES::TransferDataFromWindow(), DIALOG_SHEET_PROPERTIES::TransferDataFromWindow(), and DIALOG_SHEET_PROPERTIES::TransferDataToWindow().
|
inlinevirtualinherited |
Reimplemented in PAD, PCB_TRACK, and ZONE.
Definition at line 136 of file board_item.h.
References BOARD_ITEM::GetLayer(), and IsCopperLayer().
Referenced by CN_CONNECTIVITY_ALGO::Add(), CheckNetTies(), DRC_ENGINE::EvalRules(), BOARD_INSPECTION_TOOL::InspectClearance(), isCopper(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), BOARD_CONNECTED_ITEM::SetNetCode(), and PCB_CONTROL::UpdateMessagePanel().
|
overridevirtual |
A special IsOnLayer for footprints: return true if the footprint contains only items on the given layer, even if that layer is not one of the valid footprint layers F_Cu and B_Cu.
This allows selection of "graphic" footprints that contain only silkscreen, for example.
Reimplemented from BOARD_ITEM.
Definition at line 1097 of file footprint.cpp.
References B_CrtYd, F_CrtYd, GetCourtyard(), SHAPE_POLY_SET::IsEmpty(), m_drawings, BOARD_ITEM::m_layer, m_pads, and m_zones.
|
inline |
Definition at line 365 of file footprint.h.
References FP_is_PLACED, and m_fpStatus.
Referenced by PCB_PLUGIN::format().
|
inlinevirtualinherited |
Override this method in any derived object that supports test find and replace.
Reimplemented in LIB_TEXTBOX, SCH_FIELD, SCH_LABEL, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TEXT, and SCH_TEXTBOX.
Definition at line 403 of file eda_item.h.
Referenced by EDA_ITEM::Matches().
|
inlineinherited |
Definition at line 110 of file eda_item.h.
References IS_MOVING, IS_ROLLOVER, and EDA_ITEM::m_flags.
Referenced by KIGFX::SCH_PAINTER::draw().
|
inlineinherited |
Definition at line 106 of file eda_item.h.
References EDA_ITEM::m_flags, and SELECTED.
Referenced by ALIGN_DISTRIBUTE_TOOL::AlignBottom(), ALIGN_DISTRIBUTE_TOOL::AlignCenterX(), ALIGN_DISTRIBUTE_TOOL::AlignCenterY(), ALIGN_DISTRIBUTE_TOOL::AlignTop(), SCH_EDIT_TOOL::ChangeTextType(), SCH_EDIT_FRAME::ConvertPart(), DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersVertically(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsVertically(), EDIT_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), DS_PROXY_UNDO_ITEM::DS_PROXY_UNDO_ITEM(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), KIGFX::GERBVIEW_RENDER_SETTINGS::GetColor(), KIGFX::DS_RENDER_SETTINGS::GetColor(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), SCH_MOVE_TOOL::getConnectedDragItems(), KIGFX::SCH_PAINTER::getLineWidth(), DIALOG_EXCHANGE_FOOTPRINTS::isMatch(), DIALOG_CHANGE_SYMBOLS::isMatch(), SCH_SCREEN::MarkConnections(), SCH_LINE::MergeOverlap(), SCH_EDIT_TOOL::Mirror(), EDIT_TOOL::MoveExact(), SCH_MOVE_TOOL::moveItem(), KIGFX::SCH_PAINTER::nonCached(), SCH_MOVE_TOOL::orthoLineDrag(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), BOARD_COMMIT::Push(), SCHEMATIC_COMMIT::pushLibEdit(), SCHEMATIC_COMMIT::pushSchEdit(), EE_SELECTION_TOOL::RebuildSelection(), PCB_SELECTION_TOOL::RebuildSelection(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), SCH_EDIT_TOOL::Rotate(), EE_TOOL_BASE< T >::saveCopyInUndoList(), GERBVIEW_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::select(), EE_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), GERBVIEW_SELECTION_TOOL::selectPoint(), KIGFX::SCH_PAINTER::setDeviceColors(), GERBVIEW_SELECTION_TOOL::unselect(), SCH_FIND_REPLACE_TOOL::UpdateFind(), HIERARCHY_PANE::UpdateHierarchySelection(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), and DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem().
|
inlineinherited |
Definition at line 157 of file eda_item.h.
References IS_SHOWN_AS_BITMAP, and EDA_ITEM::m_flags.
|
inlinevirtualinherited |
Reimplemented in PCB_VIA.
Definition at line 146 of file board_item.h.
Referenced by BOARD_INSPECTION_TOOL::InspectClearance(), and DRC_TEST_PROVIDER_SILK_CLEARANCE::Run().
|
inlinevirtualinherited |
Check whether the item is one of the listed types.
aScanTypes | List of item types |
Reimplemented in SCH_FIELD, SCH_ITEM, SCH_LABEL_BASE, SCH_LINE, PAD, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, and PCB_VIA.
Definition at line 165 of file eda_item.h.
References EDA_ITEM::m_structType, and SCH_LOCATE_ANY_T.
Referenced by SCH_EDIT_TOOL::AutoplaceFields(), ROUTER_TOOL::CanInlineDrag(), DIALOG_SCH_FIELD_PROPERTIES::DIALOG_SCH_FIELD_PROPERTIES(), SCH_FIELD::GetCanonicalName(), KIGFX::SCH_PAINTER::getLineWidth(), SCH_FIELD::GetName(), KIGFX::SCH_PAINTER::getRenderColor(), SCH_FIELD::GetShownText(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingBus(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLine(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingWire(), SCH_ITEM::IsType(), PAD::IsType(), PCB_SHAPE::IsType(), PCB_TEXT::IsType(), PCB_TEXTBOX::IsType(), PCB_VIA::IsType(), EE_POINT_EDITOR::Main(), PL_POINT_EDITOR::Main(), CONVERT_TOOL::makePolysFromChainedSegs(), EE_SELECTION_TOOL::RequestSelection(), SCH_FIELD::SetId(), SCHEMATIC_COMMIT::Stage(), SCH_BASE_FRAME::UpdateItem(), and EDA_ITEM::Visit().
|
inlinestaticinherited |
This changes first parameter to avoid the DList and use the main queue instead.
Definition at line 285 of file eda_item.h.
References EDA_ITEM::Visit().
Referenced by GERBER_FILE_IMAGE::Visit().
|
inlinestaticinherited |
Change first parameter to avoid the DList and use std::vector instead.
Definition at line 305 of file eda_item.h.
References EDA_ITEM::Visit().
|
protectedvirtualinherited |
Return a string (to be shown to the user) describing a layer mask.
Reimplemented in PCB_VIA.
Definition at line 107 of file board_item.cpp.
References _, LSET::AllCuMask(), LSET::AllTechMask(), BOARD_ITEM::GetBoard(), BOARD::GetCopperLayerCount(), BOARD::GetEnabledLayers(), BOARD::GetLayerName(), BOARD_ITEM::GetLayerSet(), PCB_LAYER_ID_COUNT, and PCBNEW_LAYER_ID_START.
Referenced by PAD::GetItemDescription(), PAD::GetMsgPanelInfo(), and PCB_TRACK::GetMsgPanelInfo().
|
inline |
Definition at line 383 of file footprint.h.
References FP_PADS_are_LOCKED, and m_fpStatus.
std::map< wxString, int > FOOTPRINT::MapPadNumbersToNetTieGroups | ( | ) | const |
Definition at line 2176 of file footprint.cpp.
References group, m_netTiePadGroups, m_pads, and pad.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::checkItemMask(), CheckNetTiePadGroups(), CheckNetTies(), GetNetTiePads(), DRC_ENGINE::IsNetTieExclusion(), GRAPHICS_CLEANER::mergePads(), PAD::SharesNetTieGroup(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem().
|
inlinevirtualinherited |
Compare the item against the search criteria in aSearchData.
The base class returns false since many of the objects derived from EDA_ITEM do not have any text to search.
aSearchData | A reference to a wxFindReplaceData object containing the search criteria. |
aAuxData | A pointer to optional data required for the search or NULL if not used. |
Reimplemented in SCH_MARKER, LIB_TEXTBOX, SCH_FIELD, SCH_LABEL_BASE, SCH_PIN, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TEXT, SCH_TEXTBOX, NETINFO_ITEM, PCB_MARKER, PCB_TEXT, PCB_TEXTBOX, and ZONE.
Definition at line 365 of file eda_item.h.
Referenced by SCH_DRAWING_TOOLS::DrawShape(), SYMBOL_EDITOR_DRAWING_TOOLS::DrawShape(), SCH_FIND_REPLACE_TOOL::HasMatch(), SCH_MARKER::Matches(), LIB_TEXTBOX::Matches(), SCH_FIELD::Matches(), SCH_LABEL_BASE::Matches(), SCH_PIN::Matches(), SCH_SHEET_PIN::Matches(), SCH_TEXT::Matches(), SCH_TEXTBOX::Matches(), NETINFO_ITEM::Matches(), PCB_MARKER::Matches(), PCB_TEXT::Matches(), PCB_TEXTBOX::Matches(), ZONE::Matches(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
|
protectedinherited |
Compare aText against search criteria in aSearchData.
This is a helper function for simplify derived class logic.
aText | A reference to a wxString object containing the string to test. |
aSearchData | The criteria to search against. |
Definition at line 116 of file eda_item.cpp.
References EDA_SEARCH_DATA::findString, EDA_ITEM::IsReplaceable(), EDA_SEARCH_DATA::matchCase, EDA_SEARCH_DATA::matchMode, next(), EDA_SEARCH_DATA::searchAndReplace, and text.
|
inline |
Definition at line 186 of file footprint.h.
References m_3D_Drawings.
Referenced by EXPORTER_STEP::buildFootprint3DShapes(), KI_TEST::CheckFootprint(), PCB_EDIT_FRAME::ExchangeFootprint(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), idf_export_footprint(), LEGACY_PLUGIN::load3D(), MoveAnchorPosition(), ALTIUM_PCB::ParseComponentsBodies6Data(), PANEL_FP_PROPERTIES_3D_MODEL::ReloadModelsFromFootprint(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), and PANEL_PREVIEW_3D_MODEL::UpdateDummyFootprint().
|
inline |
Definition at line 187 of file footprint.h.
References m_3D_Drawings.
|
overridevirtual |
Move this object.
aMoveVector | the move vector for this object. |
Reimplemented from BOARD_ITEM.
Definition at line 1554 of file footprint.cpp.
References m_pos, and SetPosition().
Referenced by ROUTER_TOOL::InlineDrag(), CLIPBOARD_IO::SaveSelection(), and SpreadFootprints().
void FOOTPRINT::MoveAnchorPosition | ( | const VECTOR2I & | aMoveVector | ) |
Move the reference point of the footprint.
It looks like a move footprint: the footprints elements (pads, outlines, edges .. ) are moved However:
Definition at line 1683 of file footprint.cpp.
References GetOrientation(), GraphicalItems(), EDA_IU_SCALE::IUTomm(), m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_pads, m_reference, m_value, Models(), BOX2< Vec >::Move(), PCB_TEXT::Move(), SHAPE_POLY_SET::Move(), pad, pcbIUScale, RotatePoint(), VECTOR2< T >::x, VECTOR2< T >::y, and Zones().
Referenced by CLIPBOARD_IO::SaveSelection(), and DRAWING_TOOL::SetAnchor().
|
inline |
Definition at line 374 of file footprint.h.
References FP_to_PLACE, and m_fpStatus.
Referenced by AR_AUTOPLACER::pickFootprint().
|
inherited |
Test if another item is less than this object.
aItem | - Item to compare against. |
Definition at line 230 of file eda_item.cpp.
References EDA_ITEM::GetClass().
Definition at line 374 of file footprint.cpp.
References Add(), PCB_GROUP::AddItem(), PCB_GROUP::GetItems(), GraphicalItems(), group, Groups(), m_3D_Drawings, m_attributes, m_boundingBoxCacheTimeStamp, m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_doc, m_drawings, m_fpid, m_fpStatus, m_groups, m_hullCacheTimeStamp, m_initial_comments, m_keywords, m_lastEditTime, m_link, m_localClearance, m_localSolderMaskMargin, m_localSolderPasteMargin, m_localSolderPasteMarginRatio, m_netTiePadGroups, m_orient, m_pads, m_path, m_pos, m_privateLayers, m_properties, m_reference, m_textExcludedBBoxCacheTimeStamp, m_value, m_visibleBBoxCacheTimeStamp, m_zoneConnection, m_zones, EDA_ITEM::operator=(), pad, Pads(), BOARD_CONNECTED_ITEM::SetNetCode(), EDA_ITEM::SetParent(), and Zones().
Definition at line 277 of file footprint.cpp.
References Add(), group, m_3D_Drawings, m_attributes, m_boundingBoxCacheTimeStamp, m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_doc, m_drawings, m_fpid, m_fpStatus, m_groups, m_hullCacheTimeStamp, m_initial_comments, m_keywords, m_lastEditTime, m_link, m_localClearance, m_localSolderMaskMargin, m_localSolderPasteMargin, m_localSolderPasteMarginRatio, m_netTiePadGroups, m_orient, m_pads, m_path, m_pos, m_privateLayers, m_properties, m_reference, m_textExcludedBBoxCacheTimeStamp, m_value, m_visibleBBoxCacheTimeStamp, m_zoneConnection, m_zones, EDA_ITEM::operator=(), pad, and EDA_ITEM::SetParent().
|
inline |
Definition at line 172 of file footprint.h.
References m_pads.
Referenced by FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), BOARD_NETLIST_UPDATER::addNewFootprint(), BOARD_ADAPTER::addPads(), ARRAY_PAD_NUMBER_PROVIDER::ARRAY_PAD_NUMBER_PROVIDER(), EXPORTER_STEP::buildFootprint3DShapes(), AR_AUTOPLACER::buildFpAreas(), BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), KI_TEST::CheckFootprint(), CheckPads(), CheckShortingPads(), PCB_GRID_HELPER::computeAnchors(), AR_AUTOPLACER::computePlacementRatsnestCost(), MICROWAVE_TOOL::createFootprint(), MICROWAVE_TOOL::createPolygonShape(), FOOTPRINT_VIEWER_FRAME::displayFootprint(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), EDIT_TOOL::doMoveSelection(), PAD_TOOL::EnumeratePads(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_SELECTION_TOOL::expandConnection(), BOARD_EDITOR_CONTROL::ExportNetlist(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), PLACEFILE_GERBER_WRITER::findPads1(), FOOTPRINT(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), FOOTPRINT_EDIT_FRAME::GetDocumentExtents(), GetEffectiveShape(), AR_AUTOPLACER::getOptimalFPPlacement(), CADSTAR_PCB_ARCHIVE_LOADER::getPadReference(), CONNECTIVITY_DATA::GetRatsnestForComponent(), CONNECTIVITY_DATA::GetRatsnestForItems(), hash_fp_item(), hashFootprint(), HasThroughHolePads(), idf_export_footprint(), DISPLAY_FOOTPRINTS_FRAME::InitDisplay(), ROUTER_TOOL::InlineDrag(), BOARD_INSPECTION_TOOL::InspectClearance(), isCopperOutside(), DRC_ENGINE::IsNetTieExclusion(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), EAGLE_PLUGIN::loadElements(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadNets(), CN_CONNECTIVITY_ALGO::markItemNetAsDirty(), GRAPHICS_CLEANER::mergePads(), operator=(), pasteFootprintItemsToFootprintEditor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PCB_CONTROL::pruneItemLayers(), BOARD_COMMIT::Push(), DISPLAY_FOOTPRINTS_FRAME::ReloadFootprint(), BOARD_EDITOR_CONTROL::RepairBoard(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), ResolveTextVar(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), CLIPBOARD_IO::SaveSelection(), PCB_SELECTION_TOOL::Selectable(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_SCHEMATIC_PARITY::testNetlist(), BOARD_NETLIST_UPDATER::updateComponentPadConnections(), PCB_POINT_EDITOR::updateItem(), and DIALOG_UNUSED_PAD_LAYERS::updatePadsAndVias().
|
inline |
Definition at line 173 of file footprint.h.
References m_pads.
|
inline |
Definition at line 570 of file footprint.h.
References m_reference.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), BOARD_ADAPTER::addFootprintShapes(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), ALTIUM_PCB::ConvertTexts6ToFootprintItemOnLayer(), MICROWAVE_TOOL::createBaseFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), PCB_BASE_FRAME::CreateNewFootprint(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_PLUGIN::format(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadNet(), idf_export_footprint(), ROUTER_TOOL::InlineDrag(), EAGLE_PLUGIN::loadElements(), LEGACY_PLUGIN::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), FABMASTER::loadFootprints(), EAGLE_PLUGIN::loadPlain(), EAGLE_PLUGIN::orientFootprintAndText(), EAGLE_PLUGIN::packageText(), ALTIUM_PCB::ParseComponents6Data(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), PCB_CONTROL::pruneItemLayers(), BOARD_EDITOR_CONTROL::RepairBoard(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), and TransformFPShapesToPolySet().
|
inline |
Definition at line 574 of file footprint.h.
References m_reference.
|
overridevirtual |
Removes an item from the container.
Implements BOARD_ITEM_CONTAINER.
Definition at line 628 of file footprint.cpp.
References EDA_ITEM::GetFlags(), BOARD_ITEM::GetParentGroup(), KI_FALLTHROUGH, m_drawings, m_groups, m_pads, m_zones, PCB_BITMAP_T, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_GROUP_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_ZONE_T, PCB_GROUP::RemoveItem(), EDA_ITEM::SetFlags(), STRUCT_DELETED, PCB_TEXT::TEXT_is_DIVERS, and EDA_ITEM::Type().
Referenced by EDIT_TOOL::DeleteItems(), PCB_CONTROL::pruneItemLayers(), BOARD_COMMIT::Push(), and GROUP_TOOL::Ungroup().
|
inlinevirtualinherited |
Reimplemented in SCH_ITEM.
Definition at line 147 of file eda_item.h.
|
inlinevirtualinherited |
Perform a text replace using the find and replace criteria in aSearchData on items that support text find and replace.
This function must be overridden for items that support text replace.
aSearchData | A reference to a wxFindReplaceData object containing the search and replace criteria. |
aAuxData | A pointer to optional data required for the search or NULL if not used. |
Reimplemented in LIB_TEXTBOX, SCH_LABEL_BASE, SCH_PIN, SCH_TEXT, SCH_TEXTBOX, SCH_FIELD, and SCH_SHEET_PIN.
Definition at line 392 of file eda_item.h.
|
staticinherited |
Perform a text replace on aText using the find and replace criteria in aSearchData on items that support text find and replace.
aSearchData | A reference to a wxFindReplaceData object containing the search and replace criteria. |
aText | A reference to a wxString object containing the text to be replaced. |
Definition at line 167 of file eda_item.cpp.
References EDA_SEARCH_DATA::findString, EDA_SEARCH_DATA::matchCase, EDA_SEARCH_DATA::matchMode, next(), EDA_SEARCH_DATA::replaceString, and text.
Referenced by EDA_TEXT::Replace(), SCH_FIELD::Replace(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), and SCH_FIND_REPLACE_TOOL::ReplaceAndFindNext().
bool FOOTPRINT::ResolveTextVar | ( | wxString * | token, |
int | aDepth = 0 |
||
) | const |
Resolve any references to system tokens supported by the component.
aDepth | a counter to limit recursion and circular references. |
Definition at line 494 of file footprint.cpp.
References BOARD_ITEM::GetBoard(), BOARD_ITEM::GetLayerName(), LIB_ID::GetLibItemName(), LIB_ID::GetLibNickname(), PCB_TEXT::GetShownText(), m_fpid, m_properties, m_reference, m_value, pad, Pads(), and ResolveTextVar().
Referenced by PCB_TEXT::GetShownText(), BOARD::ResolveTextVar(), and ResolveTextVar().
Rotate this object.
aRotCentre | the rotation center point. |
Reimplemented from BOARD_ITEM.
Definition at line 1561 of file footprint.cpp.
References GetOrientation(), PCB_TEXT::KeepUpright(), m_boundingBoxCacheTimeStamp, m_courtyard_cache_timestamp, m_drawings, m_hullCacheTimeStamp, m_pos, m_reference, m_textExcludedBBoxCacheTimeStamp, m_value, m_visibleBBoxCacheTimeStamp, PCB_TEXT_T, RotatePoint(), SetOrientation(), and SetPosition().
Referenced by Flip(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow().
void FOOTPRINT::RunOnChildren | ( | const std::function< void(BOARD_ITEM *)> & | aFunction | ) | const |
Invoke a function on all BOARD_ITEMs that belong to the footprint (pads, drawings, texts).
aFunction | is the function to be invoked. |
Definition at line 1392 of file footprint.cpp.
References group, m_drawings, m_groups, m_pads, m_reference, m_value, m_zones, and pad.
Referenced by KIGFX::PCB_VIEW::Add(), PCB_BASE_FRAME::CreateNewFootprint(), PCB_TOOL_BASE::doInteractiveItemPlacement(), Duplicate(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), KIGFX::PCB_VIEW::Remove(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), BOARD_COMMIT::Stage(), KIGFX::PCB_VIEW::Update(), and PCB_SELECTION::updateDrawList().
|
inlineinherited |
Definition at line 66 of file inspectable.h.
References PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 54 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 42 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_BASE::setter(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
Referenced by PCB_PROPERTIES_PANEL::valueChanged().
|
inline |
Definition at line 613 of file footprint.h.
References FP_ALLOW_MISSING_COURTYARD, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 253 of file footprint.h.
References m_attributes.
Referenced by BOARD_NETLIST_UPDATER::addNewFootprint(), MICROWAVE_TOOL::createBaseFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), PCB_BASE_FRAME::CreateNewFootprint(), EDIT_TOOL::doMoveSelection(), PCB_EDIT_FRAME::ExchangeFootprint(), LEGACY_PLUGIN::loadFOOTPRINT(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 586 of file footprint.h.
References FP_BOARD_ONLY, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inlineinherited |
Definition at line 116 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::SetFlags().
Referenced by KIGFX::SCH_PAINTER::draw(), SCH_EDIT_FRAME::FocusOnItem(), PCB_BASE_FRAME::FocusOnItems(), EE_SELECTION_TOOL::highlight(), PL_SELECTION_TOOL::highlight(), and PCB_SELECTION_TOOL::highlightInternal().
|
inline |
Definition at line 221 of file footprint.h.
References m_doc.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), LEGACY_PLUGIN::loadFOOTPRINT(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 622 of file footprint.h.
References FP_DNP, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 604 of file footprint.h.
References FP_EXCLUDE_FROM_BOM, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 595 of file footprint.h.
References FP_EXCLUDE_FROM_POS_FILES, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 630 of file footprint.h.
References m_fileFormatVersionAtLoad.
|
inline |
Definition at line 255 of file footprint.h.
References m_arflag.
Referenced by AR_AUTOPLACER::pickFootprint().
|
inlineinherited |
Definition at line 123 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by SCH_EAGLE_PLUGIN::addBusEntries(), PCB_BASE_FRAME::AddFootprintToBoard(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), SCH_ALTIUM_PLUGIN::AddTextBox(), SCH_MOVE_TOOL::AlignElements(), PCB_CONTROL::AppendBoard(), SCH_EDIT_FRAME::BreakSegment(), SCH_EDIT_TOOL::BreakWire(), BuildCourtyardCaches(), SCH_EDIT_TOOL::ChangeTextType(), GRAPHICS_CLEANER::cleanupShapes(), ConvertOutlineToPolygon(), SCH_EDIT_FRAME::ConvertPart(), SCH_DRAWING_TOOLS::createNewText(), SCH_DRAWING_TOOLS::createSheetPin(), SCH_EDIT_TOOL::DoDelete(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), PCB_TOOL_BASE::doInteractiveItemPlacement(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), EDIT_TOOL::DragArcTrack(), KIGFX::SCH_PAINTER::draw(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawLine(), DRAWING_TOOL::DrawRectangle(), SCH_DRAWING_TOOLS::DrawShape(), SYMBOL_EDITOR_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), PCB_SELECTION_TOOL::EnterGroup(), PAD_TOOL::explodePad(), SCH_MOVE_TOOL::getConnectedDragItems(), SYMBOL_EDIT_FRAME::GetSymbolFromRedoList(), SYMBOL_EDIT_FRAME::GetSymbolFromUndoList(), EE_COLLECTOR::Inspect(), CONVERT_TOOL::makePolysFromChainedSegs(), CONVERT_TOOL::makePolysFromClosedGraphics(), CONVERT_TOOL::makePolysFromOpenGraphics(), SCH_SCREEN::MarkConnections(), TRACKS_CLEANER::mergeCollinearSegments(), SCH_MOVE_TOOL::moveItem(), SYMBOL_EDITOR_MOVE_TOOL::moveItem(), DIALOG_SYMBOL_PROPERTIES::OnUnitChoice(), KIGFX::ORIGIN_VIEWITEM::ORIGIN_VIEWITEM(), SCH_MOVE_TOOL::orthoLineDrag(), SCH_ALTIUM_PLUGIN::ParseBezier(), SCH_ALTIUM_PLUGIN::ParseBus(), SCH_ALTIUM_PLUGIN::ParseBusEntry(), SCH_ALTIUM_PLUGIN::ParseHarnessPort(), SCH_ALTIUM_PLUGIN::ParseJunction(), SCH_ALTIUM_PLUGIN::ParseLabel(), SCH_ALTIUM_PLUGIN::ParseLine(), SCH_ALTIUM_PLUGIN::ParseNetLabel(), SCH_ALTIUM_PLUGIN::ParseNoERC(), SCH_ALTIUM_PLUGIN::ParsePolygon(), SCH_ALTIUM_PLUGIN::ParsePolyline(), SCH_ALTIUM_PLUGIN::ParsePort(), SCH_ALTIUM_PLUGIN::ParseRectangle(), SCH_ALTIUM_PLUGIN::ParseRoundRectangle(), SCH_ALTIUM_PLUGIN::ParseSheetSymbol(), SCH_ALTIUM_PLUGIN::ParseSignalHarness(), SCH_ALTIUM_PLUGIN::ParseWire(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PL_DRAWING_TOOLS::PlaceItem(), SCH_SYMBOL::Plot(), BACK_ANNOTATE::processNetNameChange(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_SELECTION_TOOL::RebuildSelection(), BOARD::Remove(), Remove(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDIT_FRAME::SaveCopyInUndoList(), EE_SELECTION_TOOL::SelectAll(), EE_SELECTION_TOOL::selectMultiple(), SCH_EDIT_FRAME::SelectUnit(), EDA_ITEM::SetBrightened(), EDA_ITEM::SetIsShownAsBitmap(), EDA_ITEM::SetModified(), EDA_ITEM::SetSelected(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCHEMATIC_COMMIT::Stage(), BOARD_COMMIT::Stage(), SCH_LINE_WIRE_BUS_TOOL::startSegments(), DS_DATA_ITEM::SyncDrawItems(), DS_DATA_ITEM_BITMAP::SyncDrawItems(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_DIMENSION_PROPERTIES::TransferDataFromWindow(), DIALOG_TARGET_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
|
inlineinherited |
Definition at line 145 of file view_item.h.
References KIGFX::VIEW_ITEM::m_forcedTransparency.
Referenced by EDA_ITEM::EDA_ITEM(), SYMBOL_DIFF_WIDGET::onSlider(), FOOTPRINT_DIFF_WIDGET::onSlider(), and EDA_ITEM::operator=().
|
inlineinherited |
Set and clear force visible flag used to force the item to be drawn even if it's draw attribute is set to not visible.
aEnable | True forces the item to be drawn. False uses the item's visibility setting to determine if the item is to be drawn. |
Definition at line 183 of file eda_item.h.
References EDA_ITEM::m_forceVisible.
Referenced by SCH_FIND_REPLACE_TOOL::FindNext(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
|
inline |
Definition at line 215 of file footprint.h.
References m_fpid.
Referenced by PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), PCB_BASE_FRAME::CreateNewFootprint(), FOOTPRINT_EDIT_FRAME::DuplicateFootprint(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), FOOTPRINT_EDIT_FRAME::ImportFootprint(), GPCB_FPL_CACHE::Load(), FP_CACHE::Load(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponentLibrary(), FABMASTER::loadFootprints(), LP_CACHE::LoadModules(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), ALTIUM_PCB::ParseComponents6Data(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), FOOTPRINT_EDIT_FRAME::SaveFootprintInLibrary(), CLIPBOARD_IO::SaveSelection(), COMPONENT::SetFootprint(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 218 of file footprint.h.
References m_fpid, and LIB_ID::Parse().
|
inherited |
Definition at line 268 of file board_item.cpp.
References BOARD_ITEM::GetParentFootprint(), RotatePoint(), and EDA_ITEM::SetPosition().
Referenced by PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), LEGACY_PLUGIN::loadMODULE_TEXT(), and DIALOG_PAD_PROPERTIES::TransferDataFromWindow().
|
inline |
Take ownership of caller's heap allocated aInitialComments block.
The comments are single line strings already containing the s-expression comments with optional leading whitespace and then a '#' character followed by optional single line text (text with no line endings, not even one). This block of single line comments will be output upfront of any generated s-expression text in the PCBIO::Format() function.
aInitialComments | is a heap allocated wxArrayString or NULL, which the caller gives up ownership of over to this FOOTPRINT. |
Definition at line 778 of file footprint.h.
References m_initial_comments.
|
inlinevirtualinherited |
Definition at line 267 of file board_item.h.
References BOARD_ITEM::m_isKnockout.
Referenced by PCB_TEXT_DESC::PCB_TEXT_DESC().
|
inline |
Definition at line 366 of file footprint.h.
References FP_is_PLACED, and m_fpStatus.
Referenced by AR_AUTOPLACER::AutoplaceFootprints(), and LEGACY_PLUGIN::loadFOOTPRINT().
|
inlineinherited |
Definition at line 149 of file eda_item.h.
References EDA_ITEM::ClearFlags(), IS_SHOWN_AS_BITMAP, and EDA_ITEM::SetFlags().
|
inline |
Definition at line 224 of file footprint.h.
References m_keywords.
Referenced by LEGACY_PLUGIN::loadFOOTPRINT(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inlinevirtualinherited |
Set the layer this item is on.
This method is virtual because some items (in fact: class DIMENSION) have a slightly different initialization.
aLayer | The layer number. |
Reimplemented in PCB_GROUP, and ZONE.
Definition at line 230 of file board_item.h.
References BOARD_ITEM::m_layer.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PNS_KICAD_IFACE::AddItem(), PCAD2KICAD::PCAD_ARC::AddToBoard(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCAD2KICAD::PCAD_LINE::AddToBoard(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), PCAD2KICAD::PCAD_TEXT::AddToBoard(), CADSTAR_PCB_ARCHIVE_LOADER::applyDimensionSettings(), BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), BOOST_AUTO_TEST_CASE(), ZONE_CREATE_HELPER::commitZone(), ALTIUM_PCB::ConvertArcs6ToBoardItem(), ALTIUM_PCB::ConvertArcs6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertArcs6ToFootprintItem(), ALTIUM_PCB::ConvertArcs6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertFills6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertFills6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertShapeBasedRegions6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertShapeBasedRegions6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertTexts6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertTexts6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertTracks6ToBoardItem(), ALTIUM_PCB::ConvertTracks6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertTracks6ToFootprintItem(), ALTIUM_PCB::ConvertTracks6ToFootprintItemOnLayer(), MICROWAVE_TOOL::createMicrowaveInductor(), PCB_BASE_FRAME::CreateNewFootprint(), MICROWAVE_TOOL::createPolygonShape(), CONVERT_TOOL::CreatePolys(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::drawArc(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarShape(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::drawShape(), PAD_TOOL::explodePad(), EDIT_TOOL::FilletTracks(), Flip(), PCB_DIMENSION_BASE::Flip(), PCB_SHAPE::Flip(), PCB_TARGET::Flip(), PCB_TEXT::Flip(), PCB_TEXTBOX::Flip(), PCB_TRACK::Flip(), PCB_ARC::Flip(), GENDRILL_WRITER_BASE::genDrillMapFile(), ALTIUM_PCB::HelperCreateBoardOutline(), ALTIUM_PCB::HelperParseDimensions6Center(), ALTIUM_PCB::HelperParseDimensions6Datum(), ALTIUM_PCB::HelperParseDimensions6Leader(), ALTIUM_PCB::HelperParseDimensions6Linear(), ALTIUM_PCB::HelperParseDimensions6Radial(), ALTIUM_PCB::HelperParsePad6NonCopper(), initTextTable(), FABMASTER::loadEtch(), LEGACY_PLUGIN::loadFOOTPRINT(), FABMASTER::loadFootprints(), FABMASTER::loadGraphics(), LEGACY_PLUGIN::loadMODULE_TEXT(), CADSTAR_PCB_ARCHIVE_LOADER::loadNetTracks(), FABMASTER::loadOutline(), LEGACY_PLUGIN::loadPCB_TEXT(), EAGLE_PLUGIN::loadPlain(), FABMASTER::loadPolygon(), EAGLE_PLUGIN::loadSignals(), LEGACY_PLUGIN::loadTrackList(), main(), DSN::SPECCTRA_DB::makeTRACK(), CADSTAR_PCB_ARCHIVE_LOADER::makeTracksFromShapes(), GRAPHICS_CLEANER::mergeRects(), DIALOG_FOOTPRINT_PROPERTIES::OnAddField(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnAddField(), EAGLE_PLUGIN::packageCircle(), EAGLE_PLUGIN::packagePolygon(), EAGLE_PLUGIN::packageRectangle(), EAGLE_PLUGIN::packageText(), EAGLE_PLUGIN::packageWire(), ALTIUM_PCB::ParseComponents6Data(), GPCB_FPL_CACHE::parseFOOTPRINT(), PCB_MARKER::PCB_MARKER(), PCB_SHAPE_DESC::PCB_SHAPE_DESC(), PCB_TEXT::PCB_TEXT(), DRAWING_TOOL::PlaceCharacteristics(), DRAWING_TOOL::PlaceStackup(), BRDITEMS_PLOTTER::PlotDimension(), BRDITEMS_PLOTTER::PlotPcbTarget(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::processItem(), PCB_CONTROL::pruneItemLayers(), PNS_PCBNEW_RULE_RESOLVER::QueryConstraint(), DIALOG_PAD_PROPERTIES::redraw(), BOARD_ITEM::SetLayerSet(), GLOBAL_EDIT_TOOL::swapBoardItem(), TRACK_VIA_DESC::TRACK_VIA_DESC(), DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow(), DIALOG_TRACK_VIA_PROPERTIES::TransferDataFromWindow(), DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog(), and ROUTER_TOOL::updateSizesAfterLayerSwitch().
void FOOTPRINT::SetLayerAndFlip | ( | PCB_LAYER_ID | aLayer | ) |
Used as Layer property setter – performs a flip if necessary to set the footprint layer.
aLayer | is the target layer (F_Cu or B_Cu) |
Definition at line 1587 of file footprint.cpp.
References B_Cu, F_Cu, Flip(), GetLayer(), and GetPosition().
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inlinevirtualinherited |
Reimplemented in PAD, PCB_VIA, and ZONE.
Definition at line 209 of file board_item.h.
References LSET::Seq(), and BOARD_ITEM::SetLayer().
Referenced by PANEL_SETUP_LAYERS::TransferDataFromWindow().
|
inline |
Definition at line 692 of file footprint.h.
References m_link.
Referenced by FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), BOARD_EDITOR_CONTROL::PlaceFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), and FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard().
|
inline |
Definition at line 233 of file footprint.h.
References m_localClearance.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), LEGACY_PLUGIN::loadFOOTPRINT(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 230 of file footprint.h.
References m_localSolderMaskMargin.
Referenced by LEGACY_PLUGIN::loadFOOTPRINT(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 244 of file footprint.h.
References m_localSolderPasteMargin.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), LEGACY_PLUGIN::loadFOOTPRINT(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 247 of file footprint.h.
References m_localSolderPasteMarginRatio.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), LEGACY_PLUGIN::loadFOOTPRINT(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inlineoverridevirtual |
Set the #MODULE_is_LOCKED bit in the m_ModuleStatus.
isLocked | true means turn on locked status, else unlock |
Reimplemented from BOARD_ITEM.
Definition at line 352 of file footprint.h.
References FP_is_LOCKED, and m_fpStatus.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint(), LEGACY_PLUGIN::loadFOOTPRINT(), ALTIUM_PCB::ParseComponents6Data(), CLIPBOARD_IO::SaveSelection(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow().
|
inherited |
Definition at line 63 of file eda_item.cpp.
References IS_CHANGED, EDA_ITEM::m_parent, EDA_ITEM::SetFlags(), and EDA_ITEM::SetModified().
Referenced by SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), LEGACY_PLUGIN::loadZONE_CONTAINER(), SCH_LINE::Move(), SCH_SYMBOL::Move(), SCH_LINE::MoveEnd(), SCH_LINE::MoveStart(), LIB_PIN::MoveTo(), PCB_EDIT_FRAME::OpenProjectFiles(), ALTIUM_PCB::Parse(), SCH_ALTIUM_PLUGIN::ParseFileHeader(), PCB_PARSER::parseZONE(), LIB_SYMBOL::RemoveDrawItem(), SCH_SYMBOL::SetConvert(), SCH_SYMBOL::SetLibId(), EDA_ITEM::SetModified(), LIB_FIELD::SetName(), SCH_SYMBOL::SetTransform(), and SCH_SYMBOL::SetUnit().
|
inline |
Definition at line 375 of file footprint.h.
References FP_to_PLACE, and m_fpStatus.
Referenced by AR_AUTOPLACER::AutoplaceFootprints().
void FOOTPRINT::SetOrientation | ( | const EDA_ANGLE & | aNewAngle | ) |
Definition at line 1728 of file footprint.cpp.
References GetPosition(), m_boundingBoxCacheTimeStamp, m_cachedHull, m_courtyard_cache_timestamp, m_drawings, m_orient, m_pads, m_reference, m_textExcludedBBoxCacheTimeStamp, m_value, m_visibleBBoxCacheTimeStamp, m_zones, EDA_ANGLE::Normalize180(), pad, SHAPE_POLY_SET::Rotate(), and PCB_TEXT::Rotate().
Referenced by PCB_BASE_FRAME::AddFootprintToBoard(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_PLUGIN::FootprintSave(), DSN::SPECCTRA_DB::FromSESSION(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), LEGACY_PLUGIN::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), EAGLE_PLUGIN::orientFootprintAndText(), BOARD_EDITOR_CONTROL::PlaceFootprint(), Rotate(), and SetOrientationDegrees().
|
inline |
Definition at line 205 of file footprint.h.
References DEGREES_T, and SetOrientation().
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), FABMASTER::loadFootprints(), and ALTIUM_PCB::ParseComponents6Data().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL.
Definition at line 100 of file eda_item.h.
References EDA_ITEM::m_parent.
Referenced by BOARD::Add(), Add(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), BOARD_NETLIST_UPDATER::addNewFootprint(), SCH_SHEET::AddPin(), PAD::AddPrimitive(), PAD::AddPrimitiveAnnotationBox(), PAD::AddPrimitiveArc(), PAD::AddPrimitiveCircle(), PAD::AddPrimitiveCurve(), PAD::AddPrimitivePoly(), PAD::AddPrimitiveRect(), PAD::AddPrimitiveSegment(), SYMBOL_EDITOR_CONTROL::AddSymbolToSchematic(), SCH_SCREEN::Append(), LIB_FIELD::Copy(), CADSTAR_SCH_ARCHIVE_LOADER::copySymbolItems(), SYMBOL_EDIT_FRAME::CreateNewSymbol(), SCH_DRAWING_TOOLS::createNewText(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_PIN_PROPERTIES::DIALOG_PIN_PROPERTIES(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), SCH_DRAWING_TOOLS::DrawShape(), SYMBOL_EDITOR_DRAWING_TOOLS::DrawShape(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), PCB_EDIT_FRAME::ExchangeFootprint(), LIB_SYMBOL::Flatten(), FOOTPRINT(), PCB_PLUGIN::FootprintSave(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), CADSTAR_SCH_ARCHIVE_LOADER::getKiCadSchText(), LIB_SYMBOL::LIB_SYMBOL(), LTSPICE_SCHEMATIC::Load(), SCH_LEGACY_PLUGIN_CACHE::loadAliases(), CADSTAR_SCH_ARCHIVE_LOADER::loadChildSheets(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), SCH_SEXPR_PLUGIN::loadHierarchy(), SCH_LEGACY_PLUGIN::loadHierarchy(), KI_TEST::LoadHierarchy(), LIB_SYMBOL::operator=(), operator=(), SCH_SEXPR_PARSER::ParseSchematic(), SCH_SEXPR_PARSER::ParseSymbol(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), PCB_CONTROL::Paste(), pasteFootprintItemsToFootprintEditor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), BACK_ANNOTATE::processNetNameChange(), BOARD_COMMIT::Push(), SCHEMATIC_COMMIT::pushLibEdit(), SCH_LIB_PLUGIN_CACHE::removeSymbol(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), SaveCopyOfZones(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), CLIPBOARD_IO::SaveSelection(), SCH_SHEET_PIN::SCH_SHEET_PIN(), LIB_SYMBOL::SetFields(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_LINE_WIRE_BUS_TOOL::startSegments(), SCH_LABEL_BASE::SwapData(), SCH_SHEET::SwapData(), SCH_SYMBOL::SwapData(), BOARD_ITEM::SwapItemData(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), and SCH_DRAWING_TOOLS::TwoClickPlace().
|
inlineinherited |
Definition at line 84 of file board_item.h.
References BOARD_ITEM::m_group.
Referenced by PCB_GROUP::AddItem(), EDIT_TOOL::DragArcTrack(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), BOARD_COMMIT::makeImage(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_GROUP::RemoveItem(), BOARD_COMMIT::Revert(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), SaveCopyOfZones(), BOARD_ITEM::SwapItemData(), and TEST_BOARD_ITEM_FIXTURE::~TEST_BOARD_ITEM_FIXTURE().
|
inline |
Definition at line 227 of file footprint.h.
References m_path.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint(), LEGACY_PLUGIN::loadFOOTPRINT(), PCB_CONTROL::placeBoardItems(), COMPONENT::SetFootprint(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
overridevirtual |
Reimplemented from EDA_ITEM.
Definition at line 1656 of file footprint.cpp.
References delta, m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_courtyard_cache_back, m_courtyard_cache_front, m_drawings, m_pads, m_pos, m_reference, m_value, m_zones, BOX2< Vec >::Move(), SHAPE_POLY_SET::Move(), and pad.
Referenced by PCB_BASE_FRAME::AddFootprintToBoard(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), BOARD_NETLIST_UPDATER::addNewFootprint(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCAD2KICAD::PCAD_PAD::AddToBoard(), PNS_KICAD_IFACE::Commit(), ALTIUM_PCB::ConvertPads6ToBoardItem(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), PCB_EDIT_FRAME::ExchangeFootprint(), Flip(), DSN::SPECCTRA_DB::FromSESSION(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), FOOTPRINT_EDIT_FRAME::ImportFootprint(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponentLibrary(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), EAGLE_PLUGIN::loadElements(), LEGACY_PLUGIN::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FABMASTER::loadFootprints(), Move(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), EAGLE_PLUGIN::packageHole(), ALTIUM_PCB::ParseComponents6Data(), BOARD_EDITOR_CONTROL::PlaceFootprint(), AR_AUTOPLACER::placeFootprint(), PCB_BASE_FRAME::PlaceFootprint(), FOOTPRINT_WIZARD_FRAME::ReloadFootprint(), Rotate(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), CLIPBOARD_IO::SaveSelection(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow().
|
inline |
Adds an item to the container.
aMode | decides whether the item is added in the beginning or at the end of the list. |
aSkipConnectivity | skip connectivity update (useful for file loading, when the connectivity is updated after end of loading). |
Definition at line 123 of file footprint.h.
References m_privateLayers.
Referenced by DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 577 of file footprint.h.
References m_properties.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint(), COMPONENT::SetFootprint(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 583 of file footprint.h.
References m_properties.
|
inline |
aReference | A reference to a wxString object containing the reference designator text. |
Definition at line 530 of file footprint.h.
References m_reference, and EDA_TEXT::SetText().
Referenced by PCB_BASE_FRAME::CreateNewFootprint(), FOOTPRINT_DESC::FOOTPRINT_DESC(), IncrementReference(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponentLibrary(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), EAGLE_PLUGIN::loadElements(), FABMASTER::loadFootprints(), EAGLE_PLUGIN::loadPlain(), ALTIUM_PCB::ParseComponents6Data(), PCB_CONTROL::Paste(), COMPONENT::SetFootprint(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inlineinherited |
Definition at line 115 of file eda_item.h.
References SELECTED, and EDA_ITEM::SetFlags().
Referenced by PANEL_EESCHEMA_COLOR_SETTINGS::createPreviewItems(), KIGFX::SCH_PAINTER::draw(), EE_SELECTION_TOOL::highlight(), PL_SELECTION_TOOL::highlight(), PCB_SELECTION_TOOL::highlightInternal(), SCH_LINE::MergeOverlap(), DS_PROXY_UNDO_ITEM::Restore(), EE_TOOL_BASE< T >::saveCopyInUndoList(), and GERBVIEW_SELECTION_TOOL::selectVisually().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 89 of file board_item.cpp.
|
inline |
aValue | A reference to a wxString object containing the value text. |
Definition at line 557 of file footprint.h.
References m_value, and EDA_TEXT::SetText().
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCB_BASE_FRAME::CreateNewFootprint(), FOOTPRINT_EDIT_FRAME::DuplicateFootprint(), FOOTPRINT_DESC::FOOTPRINT_DESC(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponentLibrary(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), EAGLE_PLUGIN::loadElements(), FABMASTER::loadFootprints(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), COMPONENT::SetFootprint(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inlineinherited |
Definition at line 111 of file board_item.h.
References BOARD_ITEM::GetY(), and EDA_ITEM::SetPosition().
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), and TRACK_VIA_DESC::TRACK_VIA_DESC().
|
inlineinherited |
Definition at line 117 of file board_item.h.
References BOARD_ITEM::GetX(), and EDA_ITEM::SetPosition().
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), and TRACK_VIA_DESC::TRACK_VIA_DESC().
|
inline |
Definition at line 249 of file footprint.h.
References m_zoneConnection.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), LEGACY_PLUGIN::loadFOOTPRINT(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inlinevirtualinherited |
Set the zone settings for this container.
aSettings | new Zone settings for this container |
Reimplemented in BOARD.
Definition at line 95 of file board_item_container.h.
References BOARD_ITEM_CONTAINER::m_zoneSettings.
|
inlinestaticinherited |
Helper function to be used by the C++ STL sort algorithm for sorting a STL container of EDA_ITEM pointers.
aLeft | The left hand item to compare. |
aRight | The right hand item to compare. |
Definition at line 421 of file eda_item.h.
|
static |
Test for validity of the name in a library of the footprint ( no spaces, dir separators ... ).
aUserReadable | set to false to get the list of invalid characters or true to get a readable form (i.e ' ' = 'space' '\t'= 'tab'). |
Definition at line 1537 of file footprint.cpp.
Referenced by FOOTPRINT_EDIT_FRAME::buildSaveAsDialog(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::checkFootprintName(), and IsLibNameValid().
|
overrideprotectedvirtual |
Reimplemented from BOARD_ITEM.
Definition at line 2534 of file footprint.cpp.
References PCB_FOOTPRINT_T, and EDA_ITEM::Type().
|
inherited |
Swap data between aItem and aImage.
aItem and aImage should have the same type.
Used in undo and redo commands to swap values between an item and its copy. Only values like layer, size .. which are modified by editing are swapped.
aImage | the item image which contains data to swap. |
Definition at line 167 of file board_item.cpp.
References BOARD_ITEM::GetParent(), BOARD_ITEM::GetParentGroup(), group, EDA_ITEM::SetParent(), BOARD_ITEM::SetParentGroup(), and BOARD_ITEM::swapData().
Referenced by EDIT_TOOL::DragArcTrack(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), BOARD_COMMIT::Revert(), and UpdateCopyOfZonesList().
void FOOTPRINT::TransformFPShapesToPolySet | ( | SHAPE_POLY_SET & | aBuffer, |
PCB_LAYER_ID | aLayer, | ||
int | aClearance, | ||
int | aError, | ||
ERROR_LOC | aErrorLoc, | ||
bool | aIncludeText = true , |
||
bool | aIncludeShapes = true , |
||
bool | aIncludePrivateItems = false |
||
) | const |
Generate shapes of graphic items (outlines) on layer aLayer as polygons and adds these polygons to aBuffer.
Useful to generate a polygonal representation of a footprint in 3D view and plot functions, when a full polygonal approach is needed.
aLayer | is the layer to consider, or UNDEFINED_LAYER to consider all. |
aBuffer | is the buffer to store polygons. |
aClearance | is a value to inflate shapes. |
aError | is the maximum error between true arc and polygon approximation. |
aIncludeText | set to true to transform text shapes. |
aIncludeShapes | set to true to transform footprint shapes. |
Definition at line 2707 of file footprint.cpp.
References BOARD_ITEM::GetLayer(), GetPrivateLayers(), GraphicalItems(), EDA_TEXT::IsVisible(), PCB_TEXTBOX::IsVisible(), PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, Reference(), text, PCB_SHAPE::TransformShapeToPolygon(), PCB_TEXTBOX::TransformShapeToPolygon(), UNDEFINED_LAYER, and Value().
Referenced by EXPORTER_STEP::buildFootprint3DShapes(), CoverageRatio(), and TransformFPTextToPolySet().
|
inline |
This function is the same as TransformFPShapesToPolySet but only generates text.
Definition at line 482 of file footprint.h.
References TransformFPShapesToPolySet().
void FOOTPRINT::TransformPadsToPolySet | ( | SHAPE_POLY_SET & | aBuffer, |
PCB_LAYER_ID | aLayer, | ||
int | aClearance, | ||
int | aMaxError, | ||
ERROR_LOC | aErrorLoc, | ||
bool | aSkipNPTHPadsWihNoCopper = false , |
||
bool | aSkipPlatedPads = false , |
||
bool | aSkipNonPlatedPads = false |
||
) | const |
Generate pads shapes on layer aLayer as polygons and adds these polygons to aBuffer.
Useful to generate a polygonal representation of a footprint in 3D view and plot functions, when a full polygonal approach is needed.
aLayer | is the layer to consider, or UNDEFINED_LAYER to consider all layers. |
aBuffer | i the buffer to store polygons. |
aClearance | is an additional size to add to pad shapes. |
aMaxError | is the maximum deviation from true for arcs. |
aSkipNPTHPadsWihNoCopper | if true, do not add a NPTH pad shape, if the shape has same size and position as the hole. Usually, these pads are not drawn on copper layers, because there is actually no copper Due to diff between layers and holes, these pads must be skipped to be sure there is no copper left on the board (for instance when creating Gerber Files or 3D shapes). Defaults to false. |
aSkipPlatedPads | is used on 3D-Viewer to extract plated and non-plated pads. |
aSkipNonPlatedPads | is used on 3D-Viewer to extract plated and plated pads. |
Definition at line 2634 of file footprint.cpp.
References B_Cu, B_Mask, B_Paste, dummy, F_Cu, F_Mask, F_Paste, m_pads, pad, VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by CoverageRatio().
|
virtualinherited |
Convert the item shape to a closed polygon.
Circles and arcs are approximated by segments.
aBuffer | a buffer to store the polygon. |
aClearance | the clearance around the pad. |
aError | the maximum deviation from true circle. |
aErrorLoc | should the approximation error be placed outside or inside the polygon? |
ignoreLineWidth | used for edge cut items where the line width is only for visualization. |
Reimplemented in PCB_DIMENSION_BASE, PCB_SHAPE, PCB_TARGET, PCB_TRACK, ZONE, PCB_TEXT, PCB_TEXTBOX, and PAD.
Definition at line 197 of file board_item.cpp.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), ZONE_FILLER::addKnockout(), CoverageRatio(), enclosedByAreaFunc(), GetCoverageArea(), process(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), and DRC_TEST_PROVIDER_SLIVER_CHECKER::Run().
|
inlineinherited |
Returns the type of object.
This attribute should never be changed after a ctor sets it, so there is no public "setter" method.
Definition at line 97 of file eda_item.h.
References EDA_ITEM::m_structType.
Referenced by CN_CONNECTIVITY_ALGO::Add(), BOARD::Add(), Add(), CN_CLUSTER::Add(), KIGFX::PCB_VIEW::Add(), PCB_POINT_EDITOR::addCorner(), PCB_GROUP::AddItem(), CONNECTION_SUBGRAPH::AddItem(), DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), ZONE_FILLER::addKnockout(), SCH_SHEET::AddPin(), ALIGN_DISTRIBUTE_TOOL::AlignBottom(), ALIGN_DISTRIBUTE_TOOL::AlignCenterX(), ALIGN_DISTRIBUTE_TOOL::AlignCenterY(), SCH_MOVE_TOOL::AlignElements(), ALIGN_DISTRIBUTE_TOOL::AlignTop(), CN_ITEM::AnchorCount(), SCH_SCREEN::Append(), CADSTAR_SCH_ARCHIVE_LOADER::applyTextSettings(), TEARDROP_MANAGER::areItemsInSameZone(), PNS::TOPOLOGY::AssembleTuningPath(), SCH_LABEL_BASE::AutoplaceFields(), EE_SELECTION_TOOL::autostartEvent(), DIALOG_NET_INSPECTOR::buildNewItem(), SCH_SCREENS::buildScreenList(), EXPORTER_STEP::buildTrack3DShape(), BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), PCB_POINT_EDITOR::canAddCorner(), SCH_BUS_WIRE_ENTRY::CanConnect(), SCH_BUS_BUS_ENTRY::CanConnect(), SCH_JUNCTION::CanConnect(), SCH_LABEL_BASE::CanConnect(), SCH_LINE::CanConnect(), SCH_NO_CONNECT::CanConnect(), SCH_SHEET::CanConnect(), SCH_SYMBOL::CanConnect(), SCH_EDIT_TOOL::ChangeTextType(), KI_TEST::CheckFootprint(), KI_TEST::CheckFpShape(), KI_TEST::CheckFpZone(), DRC_TEST_PROVIDER_SOLDER_MASK::checkMaskAperture(), CN_VISITOR::checkZoneItemConnection(), LIB_FIELD::ClassOf(), LIB_ITEM::ClassOf(), LIB_PIN::ClassOf(), LIB_SHAPE::ClassOf(), LIB_SYMBOL::ClassOf(), LIB_TEXT::ClassOf(), LIB_TEXTBOX::ClassOf(), SCH_BITMAP::ClassOf(), SCH_BUS_WIRE_ENTRY::ClassOf(), SCH_BUS_BUS_ENTRY::ClassOf(), SCH_FIELD::ClassOf(), SCH_JUNCTION::ClassOf(), SCH_LABEL::ClassOf(), SCH_DIRECTIVE_LABEL::ClassOf(), SCH_GLOBALLABEL::ClassOf(), SCH_HIERLABEL::ClassOf(), SCH_LINE::ClassOf(), SCH_MARKER::ClassOf(), SCH_NO_CONNECT::ClassOf(), SCH_PIN::ClassOf(), SCH_SCREEN::ClassOf(), SCH_SHEET::ClassOf(), SCH_SHEET_PIN::ClassOf(), SCH_SYMBOL::ClassOf(), SCH_TEXT::ClassOf(), SCH_TEXTBOX::ClassOf(), PCB_GROUP::ClassOf(), BOARD::ClassOf(), BOARD_CONNECTED_ITEM::ClassOf(), ClassOf(), NETINFO_ITEM::ClassOf(), PAD::ClassOf(), PCB_BITMAP::ClassOf(), PCB_DIM_ALIGNED::ClassOf(), PCB_DIM_ORTHOGONAL::ClassOf(), PCB_DIM_RADIAL::ClassOf(), PCB_DIM_LEADER::ClassOf(), PCB_DIM_CENTER::ClassOf(), PCB_MARKER::ClassOf(), PCB_SHAPE::ClassOf(), PCB_TARGET::ClassOf(), PCB_TEXT::ClassOf(), PCB_TEXTBOX::ClassOf(), PCB_TRACK::ClassOf(), PCB_ARC::ClassOf(), PCB_VIA::ClassOf(), ZONE::ClassOf(), CONNECTION_GRAPH::collectAllDriverValues(), collidesWithArea(), LIB_ITEM::compare(), LIB_FIELD::compare(), LIB_PIN::compare(), LIB_TEXT::compare(), LIB_TEXTBOX::compare(), PCB_GRID_HELPER::computeAnchors(), EE_GRID_HELPER::computeAnchors(), SCH_BUS_WIRE_ENTRY::ConnectionPropagatesTo(), SCH_LINE::ConnectionPropagatesTo(), EE_RTREE::contains(), BOARD::ConvertKIIDsToCrossReferences(), SCHEMATIC::ConvertKIIDsToRefs(), PAD_TOOL::copyPadSettings(), CoverageRatio(), BOARD_ADAPTER::createLayers(), PCB_BASE_FRAME::CreateNewFootprint(), SCH_DRAWING_TOOLS::createNewText(), ZONE_CREATE_HELPER::createNewZone(), BOARD_ADAPTER::createTrack(), EE_INSPECTION_TOOL::CrossProbe(), DRC_TOOL::CrossProbe(), SCH_SCREEN::DeleteItem(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_LABEL_PROPERTIES::DIALOG_LABEL_PROPERTIES(), DIALOG_SCH_FIELD_PROPERTIES::DIALOG_SCH_FIELD_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), BOARD_COMMIT::dirtyIntersectingZones(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), SCH_EDIT_TOOL::DoDelete(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersVertically(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsVertically(), APPEARANCE_CONTROLS::doesBoardItemNeedRebuild(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::DragArcTrack(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), DRAWING_TOOL::DrawDimension(), SCH_DRAWING_TOOLS::DrawSheet(), DRAWING_TOOL::DrawVia(), CONNECTION_SUBGRAPH::driverName(), CN_ITEM::Dump(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), EDIT_TOOL::Duplicate(), DuplicateItem(), EDA_ITEM_DESC::EDA_ITEM_DESC(), SCH_EDIT_TOOL::EditField(), SCH_EDIT_TOOL::editFieldText(), SYMBOL_EDITOR_EDIT_TOOL::editTextBoxProperties(), SYMBOL_EDITOR_EDIT_TOOL::editTextProperties(), CONNECTION_GRAPH::ercCheckBusToBusConflicts(), CONNECTION_GRAPH::ercCheckBusToBusEntryConflicts(), CONNECTION_GRAPH::ercCheckBusToNetConflicts(), CONNECTION_GRAPH::ercCheckFloatingWires(), CONNECTION_GRAPH::ercCheckLabels(), CONNECTION_GRAPH::ercCheckMultipleDrivers(), CONNECTION_GRAPH::ercCheckNoConnects(), DRC_ENGINE::EvalRules(), DRC_ENGINE::EvalZoneConnection(), EDIT_TOOL::FilletTracks(), PCB_SELECTION_TOOL::FilterCollectorForFreePads(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), PCB_SELECTION_TOOL::FilterCollectorForMarkers(), TEARDROP_MANAGER::findAnchorPointsOnTrack(), PCB_SELECTION_TOOL::FindItem(), NETLIST_EXPORTER_BASE::findNextSymbol(), CADSTAR_ARCHIVE_PARSER::FixTextPositionNoAlignment(), PCB_BASE_FRAME::FocusOnItems(), EDIT_TOOL::FootprintFilter(), PCB_PLUGIN::Format(), PCB_PLUGIN::format(), SCH_SEXPR_PLUGIN::Format(), SCH_LEGACY_PLUGIN::Format(), FormatProbeItem(), PCB_POINT_EDITOR::get45DegConstrainer(), CN_ITEM::GetAnchor(), BOARD_ITEM::GetBoard(), SCH_FIELD::GetBoundingBox(), SCH_LABEL_BASE::GetBoundingBox(), PCB_TRACK::GetBoundingBox(), SCH_FIELD::GetCanonicalName(), getClosestGroup(), KIGFX::GERBVIEW_RENDER_SETTINGS::GetColor(), KIGFX::DS_RENDER_SETTINGS::GetColor(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), CONNECTIVITY_DATA::GetConnectedPadsAndVias(), GetCoverageArea(), CONNECTION_GRAPH::getDefaultConnection(), SCH_FIELD::GetDrawRotation(), getDrilledHoleShape(), CONNECTION_SUBGRAPH::GetDriverPriority(), getFieldFunc(), PCB_TRACK::GetFriendlyName(), getInferredSymbols(), PCB_TRACK::GetItemDescription(), PL_EDITOR_FRAME::GetLayoutFromRedoList(), PL_EDITOR_FRAME::GetLayoutFromUndoList(), SCH_FIELD::GetMenuImage(), getMinDist(), SCH_LABEL_BASE::GetMsgPanelInfo(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfo(), SCH_FIELD::GetName(), SCH_SCREEN::GetNeededJunctions(), CONNECTION_SUBGRAPH::GetNetclassForDriver(), CONNECTIVITY_DATA::GetNetItems(), BOARD_ITEM::GetParentFootprint(), SCH_SYMBOL::GetPinPhysicalPosition(), SCH_FIELD::GetPosition(), KIGFX::SCH_PAINTER::getRenderColor(), TEXT_SEARCH_HANDLER::GetResultCell(), LABEL_SEARCH_HANDLER::GetResultCell(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), SCH_FIELD::GetShownText(), CONVERT_TOOL::getStartEndPoints(), KIGFX::SCH_PAINTER::getTextThickness(), EDA_ITEM::GetTypeDesc(), PCB_EXPR_TYPE_REF::GetValue(), TEARDROP_MANAGER::GetWidth(), PCB_SELECTION_TOOL::grabUnconnected(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), hasDrilledHole(), hash_fp_item(), EE_SELECTION_TOOL::highlight(), PCB_SELECTION_TOOL::highlightInternal(), BOARD_INSPECTION_TOOL::HighlightItem(), BOARD_INSPECTION_TOOL::highlightNet(), highlightNet(), SCH_FIELD::HitTest(), SCH_LABEL_BASE::HitTest(), PCB_SELECTION_TOOL::hitTestDistance(), SCH_EDIT_TOOL::Init(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), DRC_RTREE::Insert(), EE_RTREE::insert(), EE_COLLECTOR::Inspect(), GENERAL_COLLECTOR::Inspect(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectConstraints(), BOARD_INSPECTION_TOOL::InspectDRCError(), ARRAY_CREATOR::Invoke(), CONNECTIVITY_DATA::IsConnectedOnLayer(), isCopper(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), PNS_KICAD_IFACE_BASE::IsFlashedOnLayer(), CADSTAR_PCB_ARCHIVE_LOADER::isFootprint(), SCH_FIELD::IsHypertext(), isKeepoutZone(), isMaskAperture(), isNPTHPad(), PCB_TRACK::IsNull(), isNullAperture(), SCH_LINE::IsParallel(), isPlatedFunc(), SCH_FIELD::IsReplaceable(), TEARDROP_MANAGER::IsRound(), PNS::ROUTER::isStartingPointRoutable(), SCH_ITEM::IsType(), itemIsIncludedByFilter(), PCB_SELECTION_TOOL::itemPassesFilter(), CLIPBOARD_IO::Load(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), CADSTAR_SCH_ARCHIVE_LOADER::loadHierarchicalSheetPins(), CADSTAR_SCH_ARCHIVE_LOADER::loadNets(), EE_SELECTION_TOOL::Main(), SCH_MOVE_TOOL::Main(), SYMBOL_EDITOR_MOVE_TOOL::Main(), EDIT_POINTS_FACTORY::Make(), PCB_POINT_EDITOR::makePoints(), CONVERT_TOOL::makePolysFromChainedSegs(), SCH_SCREEN::MarkConnections(), CONNECTIVITY_DATA::MarkItemNetAsDirty(), CN_CONNECTIVITY_ALGO::markItemNetAsDirty(), SCH_FIELD::Matches(), memberOfGroupFunc(), SCH_LINE::MergeOverlap(), SCH_EDIT_TOOL::Mirror(), EDIT_TOOL::MoveExact(), SCH_MOVE_TOOL::moveItem(), DIALOG_DRC::OnDRCItemSelected(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), PCB_EDIT_FRAME::OnEditItemRequest(), EDA_3D_CANVAS::OnMouseMove(), CN_VISITOR::operator()(), BOARD_ITEM::ptr_cmp::operator()(), BOARD::cmp_items::operator()(), BOARD::cmp_drawings::operator()(), PCB_SHAPE::cmp_drawings::operator()(), FOOTPRINT::cmp_drawings::operator()(), KI_TEST::kitest_cmp_drawings::operator()(), PCB_TRACK::cmp_tracks::operator()(), LIB_ITEM::operator<(), SCH_ITEM::operator<(), SCH_BUS_ENTRY_BASE::operator<(), SCH_FIELD::operator<(), SCH_JUNCTION::operator<(), SCH_LINE::operator<(), SCH_SHEET::operator<(), SCH_SYMBOL::operator<(), SCH_TEXT::operator<(), SCH_TEXTBOX::operator<(), PCB_BITMAP::operator=(), SCH_BITMAP::operator=(), SCH_SYMBOL::operator=(), SCH_SHEET::operator=(), LIB_ITEM::operator==(), PAD::PAD(), EDIT_TOOL::PadFilter(), PCB_PARSER::parsePCB_SHAPE(), SCH_SEXPR_PARSER::parseSchField(), SCH_EDITOR_CONTROL::Paste(), PCB_CONTROL::Paste(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), BRDITEMS_PLOTTER::PlotPcbGraphicItem(), SCH_FIELD::Print(), DIALOG_GLOBAL_EDIT_TEARDROPS::processItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::processItem(), BACK_ANNOTATE::processNetNameChange(), CONNECTION_GRAPH::processSubGraphs(), SCH_EDIT_TOOL::Properties(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), BOARD_COMMIT::Push(), SCHEMATIC_COMMIT::pushLibEdit(), SCHEMATIC_COMMIT::pushSchEdit(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_GRID_HELPER::queryVisible(), BOARD_REANNOTATE_TOOL::ReannotateDuplicates(), SCH_CONNECTION::recacheName(), SCH_EDIT_FRAME::RecalculateConnections(), SCH_BASE_FRAME::RefreshZoomDependentItems(), BOARD::Remove(), CN_CONNECTIVITY_ALGO::Remove(), Remove(), EE_RTREE::remove(), SCH_SCREEN::Remove(), KIGFX::PCB_VIEW::Remove(), PCB_POINT_EDITOR::removeCorner(), PCB_POINT_EDITOR::removeCornerCondition(), LIB_SYMBOL::RemoveDrawItem(), SCH_SHEET::RemovePin(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_FIELD::Replace(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), PCB_SELECTION_TOOL::RequestSelection(), CONNECTION_GRAPH::resolveAllDrivers(), SCHEMATIC::ResolveCrossReference(), PCB_PARSER::resolveGroups(), SCH_LABEL_BASE::ResolveTextVar(), BOARD::ResolveTextVar(), DS_PROXY_UNDO_ITEM::Restore(), SCHEMATIC_COMMIT::Revert(), BOARD_COMMIT::Revert(), PL_EDITOR_FRAME::RollbackFromUndo(), SCH_EDIT_TOOL::Rotate(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), EE_TOOL_BASE< T >::saveCopyInUndoList(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), SCH_LEGACY_PLUGIN_CACHE::saveField(), SCH_SEXPR_PLUGIN_CACHE::saveField(), SCH_LEGACY_PLUGIN_CACHE::savePin(), SCH_SEXPR_PLUGIN_CACHE::savePin(), CLIPBOARD_IO::SaveSelection(), SCH_SEXPR_PLUGIN_CACHE::saveSymbolDrawItem(), SCH_LEGACY_PLUGIN_CACHE::saveText(), SCH_SEXPR_PLUGIN_CACHE::saveText(), SCH_SEXPR_PLUGIN::saveText(), SCH_SEXPR_PLUGIN_CACHE::saveTextBox(), SCH_ITEM::Schematic(), SCH_SCREEN::Schematic(), SYMBOL_SEARCH_HANDLER::Search(), TEXT_SEARCH_HANDLER::Search(), LABEL_SEARCH_HANDLER::Search(), PCB_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::Selectable(), EE_SELECTION_TOOL::Selectable(), PCB_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectSameSheet(), PCB_SELECTION_TOOL::selectUnconnected(), PCB_EDIT_FRAME::SetActiveLayer(), PCB_POINT_EDITOR::setAltConstraint(), SCH_FIELD::SetId(), ITEM_PICKER::SetItem(), SCH_FIELD::SetPosition(), PCB_EDIT_FRAME::SetTrackSegmentWidth(), PCB_EDIT_FRAME::ShowFindDialog(), SCH_EDIT_FRAME::ShowFindReplaceDialog(), SCH_EDITOR_CONTROL::SimProbe(), BOARD_COMMIT::Stage(), PNS::LINE_PLACER::Start(), SCH_EDIT_TOOL::Swap(), PCB_GROUP::swapData(), swapData(), PAD::swapData(), PCB_DIM_ALIGNED::swapData(), PCB_DIM_ORTHOGONAL::swapData(), PCB_DIM_RADIAL::swapData(), PCB_DIM_LEADER::swapData(), PCB_DIM_CENTER::swapData(), PCB_TARGET::swapData(), PCB_TEXT::swapData(), PCB_TEXTBOX::swapData(), PCB_TRACK::swapData(), PCB_ARC::swapData(), PCB_VIA::swapData(), ZONE::swapData(), PCB_BITMAP::swapData(), SCH_BITMAP::SwapData(), SCH_FIELD::SwapData(), SCH_JUNCTION::SwapData(), SCH_NO_CONNECT::SwapData(), SCH_SHEET::SwapData(), SCH_SHEET_PIN::SwapData(), SCH_SYMBOL::SwapData(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), DIALOG_LABEL_PROPERTIES::TransferDataToWindow(), DIALOG_SYMBOL_FIELDS_TABLE::TransferDataToWindow(), DIALOG_TEXT_PROPERTIES::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), PCB_TRACK::TransformShapeToPolygon(), SCH_LINE_WIRE_BUS_TOOL::TrimOverLappingWires(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), EE_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), KIGFX::PCB_VIEW::Update(), SCH_SHEET_PATH::UpdateAllScreenReferences(), DIALOG_SCH_FIELD_PROPERTIES::UpdateField(), PL_POINT_EDITOR::updateItem(), PCB_POINT_EDITOR::updateItem(), EE_TOOL_BASE< T >::updateItem(), SCH_BASE_FRAME::UpdateItem(), PCB_CONTROL::UpdateMessagePanel(), EE_POINT_EDITOR::updateParentItem(), EE_POINT_EDITOR::updatePoints(), PL_POINT_EDITOR::updatePoints(), PCB_POINT_EDITOR::updatePoints(), SCH_BUS_ENTRY_BASE::ViewGetLayers(), PCB_GROUP::Visit(), SCH_SHEET::Visit(), GERBER_DRAW_ITEM::Visit(), PCB_TRACK::Visit(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), and DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem().
|
inline |
read/write accessors:
Definition at line 569 of file footprint.h.
References m_value.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), BOARD_ADAPTER::addFootprintShapes(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), ALTIUM_PCB::ConvertTexts6ToFootprintItemOnLayer(), MICROWAVE_TOOL::createBaseFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), PCB_BASE_FRAME::CreateNewFootprint(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_PLUGIN::format(), idf_export_footprint(), ROUTER_TOOL::InlineDrag(), EAGLE_PLUGIN::loadElements(), LEGACY_PLUGIN::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), FABMASTER::loadFootprints(), EAGLE_PLUGIN::orientFootprintAndText(), EAGLE_PLUGIN::packageText(), ALTIUM_PCB::ParseComponents6Data(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), PCB_CONTROL::pruneItemLayers(), BOARD_EDITOR_CONTROL::RepairBoard(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), and TransformFPShapesToPolySet().
|
inline |
The const versions to keep the compiler happy.
Definition at line 573 of file footprint.h.
References m_value.
|
overridevirtual |
Return the bounding box of the item covering all its layers.
Reimplemented from EDA_ITEM.
Definition at line 1511 of file footprint.cpp.
References BOARD_ITEM::GetBoard(), GetBoundingBox(), and BOX2< Vec >::Inflate().
|
inlinevirtualinherited |
Draw the parts of the object belonging to layer aLayer.
An alternative way for drawing objects if there is no #PAINTER assigned for the view or if the PAINTER doesn't know how to paint this particular implementation of VIEW_ITEM. The preferred way of drawing is to design an appropriate PAINTER object, the method below is intended only for quick hacks and debugging purposes.
aLayer | is the current drawing layer. |
aView | is a pointer to the VIEW device we are drawing on. |
Reimplemented in DS_PROXY_VIEW_ITEM, KIGFX::PREVIEW::SIMPLE_OVERLAY_ITEM, EDIT_POINTS, RATSNEST_VIEW_ITEM, ROUTER_PREVIEW_ITEM, MY_DRAWING, KIGFX::PREVIEW::ARC_ASSISTANT, KIGFX::PREVIEW::RULER_ITEM, KIGFX::PREVIEW::SELECTION_AREA, KIGFX::PREVIEW::TWO_POINT_ASSISTANT, KIGFX::ORIGIN_VIEWITEM, KIGFX::VIEW_GROUP, and KIGFX::VIEW_OVERLAY.
Definition at line 108 of file view_item.h.
Referenced by KIGFX::VIEW::draw(), and KIGFX::VIEW::updateItemGeometry().
|
overridevirtual |
Return the all the layers within the VIEW the object is painted on.
For instance, a PAD spans zero or more copper layers and a few technical layers. ViewDraw() or PAINTER::Draw() is repeatedly called for each of the layers returned by ViewGetLayers(), depending on the rendering order.
aLayers[] | is the output layer index array. |
aCount | is the number of layer indices in aLayers[]. |
Reimplemented from BOARD_ITEM.
Definition at line 1418 of file footprint.cpp.
References B_Cu, B_SilkS, F_Cu, F_SilkS, IsConflicting(), IsLocked(), KI_FALLTHROUGH, LAYER_ANCHOR, LAYER_CONFLICTS_SHADOW, LAYER_LOCKED_ITEM_SHADOW, LAYER_MOD_BK, LAYER_MOD_FR, m_drawings, BOARD_ITEM::m_layer, and m_pads.
|
overridevirtual |
Return the level of detail (LOD) of the item.
A level of detail is the minimal VIEW scale that is sufficient for an item to be shown on a given layer.
aLayer | is the current drawing layer. |
aView | is a pointer to the VIEW device we are drawing on. |
Reimplemented from KIGFX::VIEW_ITEM.
Definition at line 1470 of file footprint.cpp.
References B_Cu, F_Cu, IsConflicting(), KIGFX::VIEW::IsLayerVisible(), LAYER_ANCHOR, LAYER_CONFLICTS_SHADOW, LAYER_LOCKED_ITEM_SHADOW, LAYER_MOD_BK, LAYER_MOD_FR, BOARD_ITEM::m_layer, and MINIMAL_ZOOM_LEVEL_FOR_VISIBILITY.
|
inlineinherited |
Definition at line 140 of file view_item.h.
References KIGFX::VIEW_ITEM::m_viewPrivData.
Referenced by KIGFX::VIEW::Add(), KIGFX::VIEW::draw(), KIGFX::VIEW::HasItem(), KIGFX::VIEW::Hide(), KIGFX::VIEW::invalidateItem(), KIGFX::VIEW::IsVisible(), KIGFX::QUERY_VISITOR< CONTAINER >::operator()(), KIGFX::VIEW::UPDATE_COLOR_VISITOR::operator()(), KIGFX::VIEW::UPDATE_DEPTH_VISITOR::operator()(), KIGFX::VIEW::DRAW_ITEM_VISITOR::operator()(), KIGFX::VIEW::RECACHE_ITEM_VISITOR::operator()(), KIGFX::VIEW::CLEAR_LAYER_CACHE_VISITOR::operator()(), KIGFX::VIEW::SetVisible(), KIGFX::VIEW::Update(), KIGFX::VIEW::updateItemColor(), KIGFX::VIEW::updateItemGeometry(), and KIGFX::VIEW::updateLayers().
|
overridevirtual |
May be re-implemented for each derived class in order to handle all the types given by its member data.
Implementations should call inspector->Inspect() on types in aScanTypes, and may use IterateForward() to do so on lists of such data.
inspector | An INSPECTOR instance to use in the inspection. |
testData | Arbitrary data used by the inspector. |
aScanTypes | Which KICAD_T types are of interest and the order in which they should be processed. |
Reimplemented from EDA_ITEM.
Definition at line 1284 of file footprint.cpp.
References GetClass(), KI_FALLTHROUGH, m_drawings, m_groups, m_pads, m_reference, m_value, m_zones, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_FOOTPRINT_T, PCB_GROUP_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, and PCB_ZONE_T.
|
inlineinherited |
Definition at line 124 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by EE_SELECTION_TOOL::selectMultiple().
|
inline |
Definition at line 178 of file footprint.h.
References m_zones.
Referenced by KI_TEST::CheckFootprint(), FOOTPRINT(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), FOOTPRINT_EDIT_FRAME::GetDocumentExtents(), ROUTER_TOOL::InlineDrag(), BOARD_INSPECTION_TOOL::makeDRCEngine(), DSN::SPECCTRA_DB::makeIMAGE(), MoveAnchorPosition(), operator=(), pasteFootprintItemsToFootprintEditor(), PCB_CONTROL::pruneItemLayers(), BOARD_EDITOR_CONTROL::RepairBoard(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), and PCB_SELECTION_TOOL::Selectable().
|
inline |
Definition at line 179 of file footprint.h.
References m_zones.
|
private |
Definition at line 890 of file footprint.h.
Referenced by Add3DModel(), FOOTPRINT(), GetMsgPanelInfo(), Models(), and operator=().
|
private |
Definition at line 886 of file footprint.h.
Referenced by FOOTPRINT(), GetFlag(), IncrementFlag(), and SetFlag().
|
private |
Definition at line 849 of file footprint.h.
Referenced by AllowMissingCourtyard(), FOOTPRINT(), GetAttributes(), GetMsgPanelInfo(), GetTypeName(), IsBoardOnly(), IsDNP(), IsExcludedFromBOM(), IsExcludedFromPosFiles(), operator=(), SetAllowMissingCourtyard(), SetAttributes(), SetBoardOnly(), SetDNP(), SetExcludedFromBOM(), and SetExcludedFromPosFiles().
|
mutableprivate |
Definition at line 864 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingBox(), operator=(), Rotate(), and SetOrientation().
|
mutableprivate |
Definition at line 863 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingBox(), MoveAnchorPosition(), operator=(), and SetPosition().
|
mutableprivate |
Definition at line 869 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingHull(), MoveAnchorPosition(), operator=(), SetOrientation(), and SetPosition().
|
mutableprivate |
Definition at line 867 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingBox(), MoveAnchorPosition(), operator=(), and SetPosition().
|
mutableprivate |
Definition at line 865 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingBox(), MoveAnchorPosition(), operator=(), and SetPosition().
|
private |
Definition at line 896 of file footprint.h.
Referenced by BuildCourtyardCaches(), Flip(), GetCourtyard(), and SetPosition().
|
private |
Definition at line 895 of file footprint.h.
Referenced by BuildCourtyardCaches(), Flip(), GetCourtyard(), and SetPosition().
|
mutableprivate |
Definition at line 897 of file footprint.h.
Referenced by BuildCourtyardCaches(), Flip(), GetCourtyard(), Rotate(), and SetOrientation().
|
private |
Definition at line 882 of file footprint.h.
Referenced by FOOTPRINT(), GetDescription(), GetMsgPanelInfo(), operator=(), and SetDescription().
|
private |
Definition at line 839 of file footprint.h.
Referenced by Add(), CheckNetTies(), FixUuids(), Flip(), GetBoundingBox(), GetBoundingHull(), GraphicalItems(), HitTest(), IsOnLayer(), operator=(), Remove(), Rotate(), RunOnChildren(), SetOrientation(), SetPosition(), ViewGetLayers(), Visit(), and ~FOOTPRINT().
|
private |
Definition at line 851 of file footprint.h.
Referenced by FOOTPRINT(), GetFileFormatVersionAtLoad(), and SetFileFormatVersionAtLoad().
|
protectedinherited |
Definition at line 480 of file eda_item.h.
Referenced by EDA_ITEM::ClearFlags(), LIB_TEXT::Clone(), DS_DRAW_ITEM_BASE::DS_DRAW_ITEM_BASE(), EDA_ITEM::GetEditFlags(), EDA_ITEM::GetFlags(), PCB_TRACK::GetMsgPanelInfoBase_Common(), SCH_LINE::GetSelectedPoints(), EDA_ITEM::HasFlag(), LIB_ITEM::HitTest(), LIB_SHAPE::HitTest(), LIB_TEXT::HitTest(), SCH_JUNCTION::HitTest(), SCH_LINE::HitTest(), SCH_SYMBOL::HitTest(), LIB_PIN::HitTest(), SCH_PIN::HitTest(), ZONE::InitDataFromSrcInCopyCtor(), EDA_ITEM::IsBrightened(), SCH_ITEM::IsConnected(), EDA_ITEM::IsEntered(), EDA_ITEM::IsModified(), EDA_ITEM::IsMoving(), EDA_ITEM::IsNew(), EDA_ITEM::IsRollover(), EDA_ITEM::IsSelected(), EDA_ITEM::IsShownAsBitmap(), SCH_LINE::MirrorHorizontally(), SCH_LINE::MirrorVertically(), EDA_ITEM::operator=(), SCH_LINE::Rotate(), EDA_ITEM::SetFlags(), PCB_SHAPE::swapData(), PCB_BITMAP::swapData(), and EDA_ITEM::XorFlags().
|
privateinherited |
Additional transparency for diff'ing items.
Definition at line 159 of file view_item.h.
Referenced by KIGFX::VIEW_ITEM::GetForcedTransparency(), KIGFX::VIEW::DRAW_ITEM_VISITOR::operator()(), and KIGFX::VIEW_ITEM::SetForcedTransparency().
|
protectedinherited |
Definition at line 479 of file eda_item.h.
Referenced by ZONE::InitDataFromSrcInCopyCtor(), EDA_ITEM::IsForceVisible(), EDA_ITEM::operator=(), EDA_ITEM::SetForceVisible(), PCB_SHAPE::swapData(), and PCB_BITMAP::swapData().
|
private |
Definition at line 848 of file footprint.h.
Referenced by FOOTPRINT(), GetFPID(), GetFPIDAsString(), GetMsgPanelInfo(), operator=(), ResolveTextVar(), SetFPID(), and SetFPIDAsString().
|
private |
Definition at line 850 of file footprint.h.
Referenced by FOOTPRINT(), GetMsgPanelInfo(), IsLocked(), IsPlaced(), LegacyPadsLocked(), NeedsPlaced(), operator=(), SetIsPlaced(), SetLocked(), and SetNeedsPlaced().
|
protectedinherited |
Definition at line 350 of file board_item.h.
Referenced by BOARD_ITEM::GetParentGroup(), BOARD_ITEM::SetParentGroup(), and BOARD_ITEM::~BOARD_ITEM().
|
private |
Definition at line 842 of file footprint.h.
Referenced by Add(), FixUuids(), Groups(), operator=(), Remove(), RunOnChildren(), Visit(), and ~FOOTPRINT().
|
mutableprivate |
Definition at line 870 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingHull(), operator=(), and Rotate().
|
private |
Definition at line 892 of file footprint.h.
Referenced by FOOTPRINT(), GetInitialComments(), operator=(), SetInitialComments(), and ~FOOTPRINT().
|
protectedinherited |
Definition at line 346 of file board_item.h.
Referenced by BOARD_ITEM::IsKnockout(), BOARD_ITEM::SetIsKnockout(), PCB_SHAPE::swapData(), and PCB_BITMAP::swapData().
|
protectedinherited |
Definition at line 348 of file board_item.h.
Referenced by BOARD_ITEM::IsLocked(), BOARD_ITEM::SetLocked(), PCB_SHAPE::swapData(), and PCB_BITMAP::swapData().
|
private |
Definition at line 883 of file footprint.h.
Referenced by FOOTPRINT(), GetKeywords(), GetMsgPanelInfo(), operator=(), and SetKeywords().
|
private |
Definition at line 885 of file footprint.h.
Referenced by FOOTPRINT(), and operator=().
|
protectedinherited |
Definition at line 345 of file board_item.h.
Referenced by PCB_VIA::ConditionallyFlashed(), PCB_VIA::FlashLayer(), FOOTPRINT(), BOARD_ITEM::GetLayer(), BOARD_ITEM::GetLayerName(), BOARD_ITEM::GetLayerSet(), PCB_VIA::GetLayerSet(), PCB_BITMAP::GetMsgPanelInfo(), PAD::GetPrincipalLayer(), PCB_TRACK::GetWidthConstraint(), BOARD_ITEM::IsOnLayer(), IsOnLayer(), PCB_VIA::IsOnLayer(), PCB_SHAPE::IsType(), PCB_VIA::LayerPair(), PCB_DIMENSION_BASE::PCB_DIMENSION_BASE(), PCB_TARGET::PCB_TARGET(), PCB_VIA::SanitizeLayers(), PCB_MARKER::Serialize(), BOARD_ITEM::SetLayer(), PCB_VIA::SetLayerPair(), PCB_VIA::SetLayerSet(), PCB_VIA::SetTopLayer(), PCB_SHAPE::swapData(), PCB_BITMAP::swapData(), PCB_VIA::TopLayer(), BOARD_ITEM::ViewGetLayers(), ViewGetLayers(), PCB_BITMAP::ViewGetLayers(), ViewGetLOD(), PCB_BITMAP::ViewGetLOD(), PCB_SHAPE::ViewGetLOD(), PCB_TEXT::ViewGetLOD(), PCB_TEXTBOX::ViewGetLOD(), and PCB_TRACK::ViewGetLOD().
|
private |
Definition at line 887 of file footprint.h.
Referenced by FOOTPRINT(), GetLink(), operator=(), and SetLink().
|
private |
Definition at line 877 of file footprint.h.
Referenced by FOOTPRINT(), GetLocalClearance(), operator=(), and SetLocalClearance().
|
private |
Definition at line 878 of file footprint.h.
Referenced by FOOTPRINT(), GetLocalSolderMaskMargin(), operator=(), and SetLocalSolderMaskMargin().
|
private |
Definition at line 879 of file footprint.h.
Referenced by FOOTPRINT(), GetLocalSolderPasteMargin(), operator=(), and SetLocalSolderPasteMargin().
|
private |
Definition at line 880 of file footprint.h.
Referenced by FOOTPRINT(), GetLocalSolderPasteMarginRatio(), operator=(), and SetLocalSolderPasteMarginRatio().
|
private |
Definition at line 874 of file footprint.h.
Referenced by AddNetTiePadGroup(), ClearNetTiePadGroups(), FOOTPRINT(), GetNetTiePadGroups(), IsNetTie(), MapPadNumbersToNetTieGroups(), and operator=().
|
private |
Definition at line 844 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetOrientation(), GetOrientationDegrees(), operator=(), and SetOrientation().
|
private |
Definition at line 840 of file footprint.h.
Referenced by Add(), CheckNetTies(), ClearAllNets(), DuplicateItem(), FindPadByNumber(), FixUuids(), Flip(), GetBoundingBox(), GetBoundingHull(), GetLikelyAttribute(), GetNetTiePads(), GetNextPadNumber(), GetPad(), GetPadCount(), GetUniquePadCount(), HitTest(), IsOnLayer(), MapPadNumbersToNetTieGroups(), MoveAnchorPosition(), operator=(), Pads(), Remove(), RunOnChildren(), SetOrientation(), SetPosition(), TransformPadsToPolySet(), ViewGetLayers(), Visit(), and ~FOOTPRINT().
|
protectedinherited |
Linked list: Link (parent struct)
Definition at line 478 of file eda_item.h.
Referenced by LIB_TEXT::Clone(), LIB_FIELD::Copy(), SCH_FIELD::DoHypertextAction(), SCH_FIELD::GetBoundingBox(), SCH_FIELD::GetCanonicalName(), SCH_FIELD::GetDrawRotation(), SCH_FIELD::GetMenuImage(), PAD::GetMsgPanelInfo(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), SCH_FIELD::GetName(), LIB_ITEM::GetParent(), SCH_SHEET_PIN::GetParent(), BOARD_ITEM::GetParent(), EDA_ITEM::GetParent(), PAD::GetParent(), PAD::GetParentAsString(), SCH_FIELD::GetParentPosition(), SCH_FIELD::GetPosition(), SCH_FIELD::GetShownText(), LIB_FIELD::HitTest(), SCH_FIELD::IsHypertext(), SCH_FIELD::IsReplaceable(), SCH_PIN::IsStacked(), SCH_FIELD::Matches(), EDA_ITEM::operator=(), LIB_FIELD::operator=(), PAD::PAD(), SCH_FIELD::Plot(), SCH_FIELD::Print(), SCH_FIELD::Replace(), SCH_LABEL_BASE::ResolveTextVar(), SCH_SYMBOL::SCH_SYMBOL(), SCH_FIELD::SetId(), EDA_ITEM::SetModified(), EDA_ITEM::SetParent(), SCH_FIELD::SetPosition(), PCB_SHAPE::swapData(), and PCB_BITMAP::swapData().
|
private |
Definition at line 884 of file footprint.h.
Referenced by FOOTPRINT(), GetPath(), operator=(), and SetPath().
|
private |
Definition at line 845 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingBox(), GetPosition(), Move(), operator=(), Rotate(), and SetPosition().
|
private |
Definition at line 888 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingBox(), GetBoundingHull(), GetPrivateLayers(), operator=(), and SetPrivateLayers().
|
private |
Definition at line 891 of file footprint.h.
Referenced by FOOTPRINT(), GetProperties(), GetProperty(), HasProperty(), operator=(), ResolveTextVar(), SetProperties(), and SetProperty().
|
private |
Definition at line 846 of file footprint.h.
Referenced by CheckNetTies(), FixUuids(), Flip(), FOOTPRINT(), GetBoundingBox(), GetMsgPanelInfo(), GetReference(), MoveAnchorPosition(), operator=(), Reference(), ResolveTextVar(), Rotate(), RunOnChildren(), SetOrientation(), SetPosition(), SetReference(), Visit(), and ~FOOTPRINT().
|
privateinherited |
Run time identification, keep private so it can never be changed after a ctor sets it.
See comment near SetType() regarding virtual functions.
Definition at line 487 of file eda_item.h.
Referenced by EDA_ITEM::IsType(), EDA_ITEM::operator=(), and EDA_ITEM::Type().
|
mutableprivate |
Definition at line 868 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingBox(), operator=(), Rotate(), and SetOrientation().
|
inherited |
Definition at line 475 of file eda_item.h.
Referenced by SCH_SYMBOL::AddHierarchicalReference(), SCH_SHEET::addInstance(), RC_ITEM::AddItem(), SCH_EDIT_FRAME::AnnotateSymbols(), FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), SCH_SHEET_PATH::Cmp(), SCHEMATIC::ConvertRefsToKIIDs(), MICROWAVE_TOOL::createMicrowaveInductor(), SCH_EDIT_FRAME::CreateScreens(), ZONE_FILLER_TOOL::DirtyZone(), DRAWING_TOOL::DrawVia(), LIB_SYMBOL::Duplicate(), BOARD_ITEM::Duplicate(), Duplicate(), SCH_ITEM::Duplicate(), DuplicateItem(), PCB_EDIT_FRAME::ExchangeFootprint(), PAD_TOOL::explodePad(), SCH_SHEET_LIST::FillItemMap(), BOARD::FillItemMap(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SCH_EDIT_FRAME::FocusOnItem(), PCB_PLUGIN::format(), SCH_SEXPR_PLUGIN::Format(), SCH_PIN::GetDefaultNetName(), SCH_SHEET_PATH::GetItem(), BOARD::GetItem(), PAD::GetMsgPanelInfo(), DIALOG_BOARD_REANNOTATE::GetNewRefDes(), SCH_SHEET::getPageNumber(), PAD::GetParentAsString(), SCH_MARKER::GetUUID(), PCB_MARKER::GetUUID(), FIELDS_EDITOR_GRID_DATA_MODEL::GetValue(), ZONE::HigherPriority(), SCH_SHEET_PATH::IsContainedWithin(), SCH_ALTIUM_PLUGIN::Load(), SCH_EAGLE_PLUGIN::Load(), LEGACY_PLUGIN::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), PCB_EDIT_FRAME::LoadFootprints(), SCH_LEGACY_PLUGIN::loadHierarchy(), LEGACY_PLUGIN::loadPCB_TARGET(), LEGACY_PLUGIN::loadPCB_TEXT(), SCH_EDIT_FRAME::LoadSheetFromFile(), SYMBOL_EDIT_FRAME::LoadSymbolFromSchematic(), LEGACY_PLUGIN::loadTrackList(), PNS::LOGGER::Log(), NETLIST_EXPORTER_XML::makeSymbols(), SCH_EDIT_FRAME::mapExistingAnnotation(), BOARD_ITEM::ptr_cmp::operator()(), BOARD::cmp_items::operator()(), BOARD::cmp_drawings::operator()(), PCB_SHAPE::cmp_drawings::operator()(), FOOTPRINT::cmp_drawings::operator()(), FOOTPRINT::cmp_pads::operator()(), PCB_TRACK::cmp_tracks::operator()(), FOOTPRINT::cmp_zones::operator()(), SCH_ITEM::operator<(), SCH_SYMBOL::operator<(), PAD::PAD(), SCH_SEXPR_PARSER::ParseSchematic(), SCH_EDITOR_CONTROL::Paste(), SCH_SHEET_PATH::PathAsString(), PCB_VIA::PCB_VIA(), SCH_SYMBOL::RemoveInstance(), FIELDS_EDITOR_GRID_DATA_MODEL::RenameColumn(), SCH_SCREENS::ReplaceDuplicateTimeStamps(), SCH_SYMBOL::ReplaceInstanceSheetPath(), PCB_PARSER::resolveGroups(), SCH_SEXPR_PLUGIN::saveBitmap(), SCH_SEXPR_PLUGIN::saveBusEntry(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_SEXPR_PLUGIN::saveJunction(), SCH_SEXPR_PLUGIN::saveLine(), SCH_SEXPR_PLUGIN::saveNoConnect(), SCH_EDIT_FRAME::SaveProject(), SCH_SEXPR_PLUGIN::saveShape(), SCH_LEGACY_PLUGIN::saveSheet(), SCH_SEXPR_PLUGIN::saveSheet(), SCH_LEGACY_PLUGIN::saveSymbol(), SCH_SEXPR_PLUGIN::saveSymbol(), SCH_SEXPR_PLUGIN::saveText(), SCH_SEXPR_PLUGIN::saveTextBox(), SCH_REFERENCE::SCH_REFERENCE(), SCH_SHEET::SCH_SHEET(), SCH_SYMBOL::SCH_SYMBOL(), RC_ITEM::SetItems(), SCH_SHEET::setPageNumber(), FIELDS_EDITOR_GRID_DATA_MODEL::SetValue(), SCH_DRAWING_TOOLS::SingleClickPlace(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), testGroupEqual(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), SCH_EDITOR_CONTROL::updatePastedSheet(), SCH_SHEET_LIST::UpdateSymbolInstanceData(), and NETLIST_EXPORTER_ORCADPCB2::WriteNetlist().
|
private |
Definition at line 847 of file footprint.h.
Referenced by CheckNetTies(), FixUuids(), Flip(), FOOTPRINT(), GetBoundingBox(), GetMsgPanelInfo(), GetValue(), MoveAnchorPosition(), operator=(), ResolveTextVar(), Rotate(), RunOnChildren(), SetOrientation(), SetPosition(), SetValue(), Value(), Visit(), and ~FOOTPRINT().
|
privateinherited |
Definition at line 158 of file view_item.h.
Referenced by KIGFX::VIEW::Add(), KIGFX::VIEW::OnDestroy(), KIGFX::VIEW::Remove(), KIGFX::VIEW_ITEM::viewPrivData(), and KIGFX::VIEW_ITEM::~VIEW_ITEM().
|
mutableprivate |
Definition at line 866 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingBox(), operator=(), Rotate(), and SetOrientation().
|
private |
Definition at line 876 of file footprint.h.
Referenced by FOOTPRINT(), GetZoneConnection(), operator=(), and SetZoneConnection().
|
private |
Definition at line 841 of file footprint.h.
Referenced by Add(), CheckNetTies(), DuplicateItem(), FixUuids(), Flip(), GetBoundingBox(), GetBoundingHull(), HitTest(), IsOnLayer(), operator=(), Remove(), RunOnChildren(), SetOrientation(), SetPosition(), Visit(), Zones(), and ~FOOTPRINT().
|
privateinherited |
Definition at line 101 of file board_item_container.h.
Referenced by BOARD_ITEM_CONTAINER::GetZoneSettings(), and BOARD_ITEM_CONTAINER::SetZoneSettings().
|
staticinherited |
A value of wxPoint(0,0) which can be passed to the Draw() functions.
Definition at line 154 of file board_item.h.
Referenced by BOARD::GetPosition().