KiCad PCB EDA Suite
|
#include <footprint.h>
Classes | |
struct | cmp_drawings |
struct | cmp_pads |
struct | cmp_padstack |
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 |
const BOX2I | GetLayerBoundingBox (LSET aLayers) const |
Return the bounding box of the footprint on a given set of layers. More... | |
VECTOR2I | GetCenter () const override |
This defaults to the center of the bounding box if not overridden. More... | |
PCB_FIELDS & | Fields () |
const PCB_FIELDS & | Fields () 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 | GetLibDescription () const |
void | SetLibDescription (const wxString &aDesc) |
wxString | GetKeywords () const |
void | SetKeywords (const wxString &aKeywords) |
const KIID_PATH & | GetPath () const |
void | SetPath (const KIID_PATH &aPath) |
wxString | GetSheetname () const |
void | SetSheetname (const wxString &aSheetname) |
wxString | GetSheetfile () const |
void | SetSheetfile (const wxString &aSheetfile) |
wxString | GetFilters () const |
void | SetFilters (const wxString &aFilters) |
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) const override |
Test to see if this object is on the given layer. 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... | |
bool | HitTestOnLayer (const VECTOR2I &aPosition, PCB_LAYER_ID aLayer, int aAccuracy=0) const |
Test if the point hits one or more of the footprint elements on a given layer. More... | |
bool | HitTestOnLayer (const BOX2I &aRect, bool aContained, PCB_LAYER_ID aLayer, int aAccuracy=0) const |
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_FIELD & | Value () |
read/write accessors: More... | |
PCB_FIELD & | Reference () |
PCB_FIELD & | Footprint () |
const PCB_FIELD & | Value () const |
The const versions to keep the compiler happy. More... | |
const PCB_FIELD & | Reference () const |
const PCB_FIELD & | Footprint () const |
PCB_FIELD * | GetField (MANDATORY_FIELD_T aFieldType) |
Return a mandatory field in this symbol. More... | |
const PCB_FIELD * | GetField (MANDATORY_FIELD_T aFieldNdx) const |
PCB_FIELD * | GetFieldById (int aFieldId) |
Return a field in this symbol. More... | |
PCB_FIELD * | GetFieldByName (const wxString &aFieldName) |
Return a field in this symbol. More... | |
bool | HasFieldByName (const wxString &aFieldName) const |
wxString | GetFieldText (const wxString &aFieldName) const |
Search for a field named aFieldName and returns text associated with this field. More... | |
void | GetFields (std::vector< PCB_FIELD * > &aVector, bool aVisibleOnly) |
Populate a std::vector with PCB_TEXTs. More... | |
PCB_FIELDS | GetFields () |
Return a vector of fields from the symbol. More... | |
const PCB_FIELDS & | GetFields () const |
PCB_FIELD * | AddField (const PCB_FIELD &aField) |
Add a field to the symbol. More... | |
void | RemoveField (const wxString &aFieldName) |
Remove a user field from the footprint. More... | |
int | GetFieldCount () const |
Return the number of fields in this symbol. More... | |
void | ApplyDefaultSettings (const BOARD &board, bool aStyleFields, bool aStyleText, bool aStyleShapes) |
Apply default board settings to the footprint field text properties. More... | |
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... | |
void | AutoPositionFields () |
Position Reference and Value fields at the top and bottom of footprint's bounding box. 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 |
Invoke a function on all children. More... | |
void | RunOnChildren (const std::function< void(BOARD_ITEM *)> &aFunction) const override |
Invoke a function on all descendants. More... | |
void | RunOnDescendants (const std::function< void(BOARD_ITEM *)> &aFunction) const override |
Invoke a function on all descendants. 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 *aLibFP, 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... | |
double | Similarity (const BOARD_ITEM &aOther) const override |
Return a measure of how likely the other object is to represent the same object. More... | |
bool | operator== (const BOARD_ITEM &aOther) const override |
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 |
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) |
const KIFONT::METRICS & | GetFontMetrics () const |
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) |
virtual void | StyleFromSettings (const BOARD_DESIGN_SETTINGS &settings) |
void | DeleteStructure () |
Delete this object after removing from its parent if it has one. More... | |
virtual void | Normalize () |
Perform any normalization required after a user rotate and/or flip. More... | |
virtual const BOARD * | GetBoard () const |
Return the BOARD in which this BOARD_ITEM resides, or NULL if none. More... | |
virtual BOARD * | GetBoard () |
wxString | GetParentAsString () const |
For "parent" property. More... | |
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 | ClearEditFlags () |
EDA_ITEM_FLAGS | GetTempFlags () const |
void | ClearTempFlags () |
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, bool aNotify=true) |
template<typename T > | |
bool | Set (PROPERTY_BASE *aProperty, T aValue, bool aNotify=true) |
template<typename T > | |
bool | Set (const wxString &aProperty, T aValue, bool aNotify=true) |
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 105 of file footprint.h.
FOOTPRINT::FOOTPRINT | ( | BOARD * | parent | ) |
Definition at line 57 of file footprint.cpp.
References ANGLE_0, F_Cu, F_Fab, F_SilkS, FP_PADS_are_LOCKED, m_3D_Drawings, m_arflag, m_attributes, m_fields, m_fileFormatVersionAtLoad, m_fpStatus, m_lastEditTime, BOARD_ITEM::m_layer, m_link, m_localClearance, m_localSolderMaskMargin, m_localSolderPasteMargin, m_localSolderPasteMarginRatio, m_orient, m_zoneConnection, MANDATORY_FIELDS, REFERENCE_FIELD, BOARD_ITEM::SetLayer(), EDA_TEXT::SetVisible(), and VALUE_FIELD.
FOOTPRINT::FOOTPRINT | ( | const FOOTPRINT & | aFootprint | ) |
Definition at line 107 of file footprint.cpp.
References Add(), PCB_GROUP::AddItem(), Fields(), PCB_GROUP::GetItems(), GraphicalItems(), group, Groups(), m_3D_Drawings, m_arflag, m_attributes, m_boundingBoxCacheTimeStamp, m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_fileFormatVersionAtLoad, m_fpid, m_fpStatus, m_hullCacheTimeStamp, m_initial_comments, m_keywords, m_lastEditTime, m_libDescription, m_link, m_localClearance, m_localSolderMaskMargin, m_localSolderPasteMargin, m_localSolderPasteMarginRatio, m_netTiePadGroups, m_orient, m_path, m_pos, m_privateLayers, m_textExcludedBBoxCacheTimeStamp, m_visibleBBoxCacheTimeStamp, m_zoneConnection, pad, Pads(), BOARD_CONNECTED_ITEM::SetNetCode(), and Zones().
FOOTPRINT::FOOTPRINT | ( | FOOTPRINT && | aFootprint | ) |
Definition at line 211 of file footprint.cpp.
FOOTPRINT::~FOOTPRINT | ( | ) |
Definition at line 218 of file footprint.cpp.
References BOARD_ITEM::GetBoard(), group, m_drawings, m_fields, m_groups, m_initial_comments, m_pads, and m_zones.
|
overridevirtual |
Removes an item from the container.
Implements BOARD_ITEM_CONTAINER.
Definition at line 724 of file footprint.cpp.
References EDA_ITEM::ClearEditFlags(), m_drawings, m_fields, m_groups, m_pads, m_zones, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_FIELD_T, PCB_GROUP_T, PCB_PAD_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_ZONE_T, EDA_ITEM::SetParent(), 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(), PAD_TOOL::explodePad(), FOOTPRINT(), PCB_BASE_FRAME::GetFootprintFromBoardByReference(), GROUP_TOOL::Group(), 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_EASYEDAPRO_PARSER::ParseFootprint(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), PCB_PARSER::resolveGroups(), CLIPBOARD_IO::SaveSelection(), and FOOTPRINT_EDIT_FRAME::SelectFootprintFromBoard().
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 1582 of file footprint.cpp.
References m_3D_Drawings, and FP_3DMODEL::m_Filename.
Add a field to the symbol.
aField | is the field to add to this symbol. |
Definition at line 336 of file footprint.cpp.
References m_fields.
Referenced by PCB_EASYEDAPRO_PARSER::fillFootprintModelInfo(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 306 of file footprint.h.
References m_netTiePadGroups.
Referenced by DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 713 of file footprint.h.
References FP_ALLOW_MISSING_COURTYARD, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
void FOOTPRINT::ApplyDefaultSettings | ( | const BOARD & | board, |
bool | aStyleFields, | ||
bool | aStyleText, | ||
bool | aStyleShapes | ||
) |
Apply default board settings to the footprint field text properties.
This is needed because the board settings are not available when the footprint is being created in the footprint library cache, and we want these fields to have the correct default text properties.
Definition at line 358 of file footprint.cpp.
References BOARD::GetDesignSettings(), m_drawings, m_fields, PCB_SHAPE_T, PCB_TEXT_T, and PCB_TEXTBOX_T.
Referenced by PCB_BASE_FRAME::loadFootprint(), and FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard().
void FOOTPRINT::AutoPositionFields | ( | ) |
Position Reference and Value fields at the top and bottom of footprint's bounding box.
Definition at line 2244 of file footprint.cpp.
References ANGLE_0, BOX2< Vec >::GetBottom(), GetBoundingBox(), BOX2< Vec >::GetCenter(), GetPosition(), BOX2< Vec >::GetTop(), GR_TEXT_H_ALIGN_CENTER, GR_TEXT_V_ALIGN_CENTER, BOX2< Vec >::Inflate(), EDA_IU_SCALE::mmToIU(), pcbIUScale, Reference(), EDA_TEXT::SetHorizJustify(), EDA_TEXT::SetTextAngle(), EDA_TEXT::SetVertJustify(), BOARD_ITEM::SetX(), BOARD_ITEM::SetY(), Value(), and VECTOR2< T >::x.
Referenced by EASYEDA_PLUGIN::FootprintLoad(), EASYEDAPRO_PLUGIN::FootprintLoad(), and CADSTAR_PCB_ARCHIVE_LOADER::loadComponentLibrary().
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 2492 of file footprint.cpp.
References B_CrtYd, SHAPE_POLY_SET::CacheTriangulation(), EDA_ITEM::ClearFlags(), ConvertOutlineToPolygon(), DEFAULT_COURTYARD_WIDTH, F_CrtYd, BOARD_ITEM::GetBoard(), PCB_SHAPE::GetStroke(), BOARD::GetTimeStamp(), STROKE_PARAMS::GetWidth(), 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(), SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), PCB_SHAPE_T, pcbIUScale, SHAPE_POLY_SET::RemoveAllContours(), EDA_ITEM::SetFlags(), and SHAPE_LINE_CHAIN::SetWidth().
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 2668 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 2931 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 2818 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_fields, m_pads, 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 2693 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 2772 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 120 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 715 of file footprint.cpp.
References m_pads, NETINFO_LIST::ORPHANED, and pad.
Referenced by PCB_BASE_FRAME::loadFootprint(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), and PCB_BASE_FRAME::OnFpChangeDebounceTimer().
|
inlineinherited |
Definition at line 119 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::ClearFlags().
Referenced by FOOTPRINT_DIFF_WIDGET::DisplayDiff(), SYMBOL_EDIT_FRAME::FocusOnItem(), SCH_EDIT_FRAME::FocusOnItem(), PCB_BASE_FRAME::FocusOnItems(), EE_SELECTION_TOOL::unhighlight(), PL_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
|
inlineinherited |
Definition at line 137 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and EDA_ITEM::GetEditFlags().
Referenced by BOARD::Add(), Add(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_DRAWING_TOOLS::DrawShape(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), PL_DRAWING_TOOLS::PlaceItem(), BOARD_COMMIT::Push(), SCH_EDIT_FRAME::PutDataInPreviousState(), BOARD_COMMIT::Revert(), SCH_ITEM::SwapFlags(), 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(), PNS_KICAD_IFACE_GENERATOR::AddItem(), SCH_MOVE_TOOL::AlignElements(), SCH_EDIT_TOOL::BreakWire(), BuildCourtyardCaches(), EDA_ITEM::ClearBrightened(), EDA_ITEM::ClearEditFlags(), EDA_ITEM::ClearSelected(), EDA_ITEM::ClearTempFlags(), ConnectBoardShapes(), SYMBOL_EDITOR_EDIT_TOOL::Copy(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), SYMBOL_EDITOR_PIN_TOOL::CreateImagePins(), MICROWAVE_TOOL::createMicrowaveInductor(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), PCB_TOOL_BASE::doInteractiveItemPlacement(), KIGFX::SCH_PAINTER::draw(), SCH_ITEM::Duplicate(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), PCB_TUNING_PATTERN::EditPush(), PCB_TUNING_PATTERN::EditRevert(), 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(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), PCB_BASE_FRAME::PlaceFootprint(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), SCH_COMMIT::pushSchEdit(), PCB_SELECTION_TOOL::RebuildSelection(), PAD_TOOL::RecombinePad(), DRC_TEST_PROVIDER_DISALLOW::Run(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_SEXPR_PLUGIN_CACHE::savePin(), EE_SELECTION_TOOL::selectMultiple(), EDA_ITEM::SetIsShownAsBitmap(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), EE_SELECTION_TOOL::unhighlight(), and SCOPED_FLAGS_CLEANER::~SCOPED_FLAGS_CLEANER().
|
inline |
Definition at line 301 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(), ARRAY_CREATOR::Invoke(), LIB_SYMBOL::LIB_SYMBOL(), EE_TOOL_BASE< T >::saveCopyInUndoList(), SCH_COMMIT::Stage(), EE_SELECTION_TOOL::unhighlight(), PL_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), and GERBVIEW_SELECTION_TOOL::unselectVisually().
|
inlineinherited |
Definition at line 149 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and EDA_ITEM::GetTempFlags().
Referenced by SCH_EDIT_FRAME::PutDataInPreviousState(), and SCH_ITEM::SwapFlags().
|
overridevirtual |
Invoke a function on all children.
Reimplemented from EDA_ITEM.
Definition at line 1695 of file footprint.cpp.
Referenced by IPC2581_PLUGIN::addPackage(), 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 2382 of file footprint.cpp.
References COLLECTORS_GUIDE::Accuracy(), SHAPE_POLY_SET::AddOutline(), ARC_LOW_DEF, ERROR_OUTSIDE, GetBoundingHull(), COLLECTOR::GetCount(), GENERAL_COLLECTOR::GetGuide(), BOARD_ITEM::GetParent(), SHAPE_POLY_SET::Outline(), PCB_ARC_T, PCB_FIELD_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().
|
inherited |
Delete this object after removing from its parent if it has one.
Definition at line 158 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 2097 of file footprint.cpp.
References BOARD_ITEM::Duplicate(), EDA_ITEM::m_Uuid, and RunOnDescendants().
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 2110 of file footprint.cpp.
References Add(), DATASHEET_FIELD, BOARD_ITEM::Duplicate(), FOOTPRINT_FIELD, EDA_ITEM::GetClass(), PCB_FIELD::GetId(), 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_FIELD_T, PCB_FOOTPRINT_T, PCB_GROUP_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_ZONE_T, REFERENCE_FIELD, EDA_TEXT::SetText(), EDA_ITEM::Type(), and VALUE_FIELD.
Referenced by ARRAY_CREATOR::Invoke().
|
inline |
Definition at line 185 of file footprint.h.
References m_fields.
Referenced by KI_TEST::CheckFootprint(), BOARD_EDITOR_CONTROL::ExportNetlist(), FOOTPRINT(), hashFootprint(), PCB_EASYEDAPRO_PARSER::ParseFootprint(), and BRDITEMS_PLOTTER::PlotFootprintTextItems().
|
inline |
Definition at line 186 of file footprint.h.
References m_fields.
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 1496 of file footprint.cpp.
Referenced by CheckNetTiePadGroups(), PCB_EDIT_FRAME::ExchangeFootprint(), Similarity(), 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 391 of file footprint.cpp.
References group, m_drawings, m_fields, m_groups, m_pads, 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 1937 of file footprint.cpp.
References ANGLE_0, ANGLE_180, FlipLayer(), GetLayer(), m_boundingBoxCacheTimeStamp, m_cachedHull, m_courtyard_cache_back, m_courtyard_cache_front, m_courtyard_cache_timestamp, m_drawings, m_fields, m_orient, m_pads, m_pos, m_textExcludedBBoxCacheTimeStamp, 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(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SetLayerAndFlip(), EDIT_TOOL::Swap(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow().
|
inline |
Definition at line 594 of file footprint.h.
References FOOTPRINT_FIELD, and GetField().
Referenced by BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 599 of file footprint.h.
References FOOTPRINT_FIELD, and GetField().
Return true if a board footprint differs from the library version.
Definition at line 509 of file drc_test_provider_library_parity.cpp.
References _, CHECKPOINT, Clone(), FP_ALLOW_MISSING_COURTYARD, FP_ALLOW_SOLDERMASK_BRIDGES, FP_SMD, FP_THROUGH_HOLE, GetAttributes(), BOARD_ITEM::GetBoard(), GetKeywords(), GetLibDescription(), GetLocalClearance(), GetLocalSolderMaskMargin(), GetLocalSolderPasteMargin(), GetLocalSolderPasteMarginRatio(), GetNetTiePadGroups(), GetOrientation(), GetPosition(), GetZoneConnection(), GraphicalItems(), IsFlipped(), ITEM_DESC, PCB_SHAPE::Normalize(), padHasOverrides(), padNeedsUpdate(), Pads(), 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 119 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 99 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(), PROPERTIES_PANEL::getItemValue(), PCBEXPR_VAR_REF::GetValue(), and SCHEMATIC::SCHEMATIC().
|
inlineinherited |
Definition at line 107 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 882 of file footprint.cpp.
References std::abs(), GetBoundingBox(), BOX2< Vec >::GetHeight(), and BOX2< Vec >::GetWidth().
Referenced by sortFootprintsByComplexity(), and sortFootprintsByRatsnestSize().
|
inline |
Definition at line 277 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(), GENCAD_EXPORTER::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 59 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 45 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD_ITEM::GetParent(), PCB_T, and EDA_ITEM::Type().
Referenced by BOARD_ADAPTER::addShape(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), BuildCourtyardCaches(), PAD::BuildEffectivePolygon(), PAD::BuildEffectiveShapes(), ZONE::BuildSmoothedPoly(), ZONE::CacheBoundingBox(), collidesWithArea(), PCB_TUNING_PATTERN::CreateNew(), 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_TRACK::Flip(), PCB_ARC::Flip(), PCB_VIA::Flip(), ZONE::Flip(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), fromToFunc(), BOARD_ITEM::GetBoard(), PCBEXPR_CONTEXT::GetBoard(), NETINFO_ITEM::GetBoundingBox(), ZONE::GetBoundingBox(), GetBoundingBox(), GetBoundingHull(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), PCB_BASE_EDIT_FRAME::GetContextualTextVars(), GetCourtyard(), PCB_VIA::GetDrillConstraint(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), PCB_TEXT::GetEffectiveShape(), getFieldFunc(), ZONE::GetInteractingZones(), ZONE::GetItemDescription(), GetLayerBoundingBox(), BOARD_ITEM::GetLayerName(), PCB_VIA::GetMinAnnulus(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), NETINFO_ITEM::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfo(), ZONE::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfoBase_Common(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), PCB_VIA::GetOutermostConnectedLayers(), BOARD_CONNECTED_ITEM::GetOwnClearance(), PAD::GetOwnClearance(), PCB_MARKER::GetSeverity(), PCB_TEXT::GetShownText(), PAD::GetSolderMaskExpansion(), PCB_VIA::GetSolderMaskExpansion(), PAD::GetSolderPasteMargin(), BOARD::GetTrackLength(), PCB_TRACK::GetWidthConstraint(), PCB_VIA::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(), PCB_SHAPE::SetIsProxyItem(), BOARD_CONNECTED_ITEM::SetNetCode(), PCB_DIMENSION_BASE::SetUnitsMode(), PCB_TUNING_PATTERN::ShowPropertiesDialog(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), DIALOG_FOOTPRINT_ASSOCIATIONS::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), ZONE::TransformSmoothedOutlineToPolygon(), BOARD::UpdateRatsnestExclusions(), ViewBBox(), PAD::ViewBBox(), PCB_TRACK::ViewBBox(), PAD::ViewGetLOD(), PCB_REFERENCE_IMAGE::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 981 of file footprint.cpp.
References GetBoundingBox().
Referenced by AutoPositionFields(), AR_AUTOPLACER::buildFpAreas(), PCB_GRID_HELPER::computeAnchors(), KIGFX::PCB_PAINTER::draw(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), GetArea(), GetBoundingBox(), GetBoundingBoxes(), GetCenter(), 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 987 of file footprint.cpp.
References BaseType(), Cmts_User, Dwgs_User, Eco1_User, Eco2_User, BOARD_ITEM::GetBoard(), PCB_TEXT::GetBoundingBox(), BOARD_ITEM::GetLayer(), BOARD::GetTimeStamp(), BOX2< Vec >::Inflate(), BOARD::IsElementVisible(), BOARD::IsFootprintHolder(), BOARD::IsLayerVisible(), LAYER_FP_REFERENCES, LAYER_FP_TEXT, LAYER_FP_VALUES, m_boundingBoxCacheTimeStamp, m_cachedBoundingBox, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_drawings, m_fields, m_pads, m_pos, m_privateLayers, m_textExcludedBBoxCacheTimeStamp, m_visibleBBoxCacheTimeStamp, m_zones, BOX2< Vec >::Merge(), EDA_IU_SCALE::mmToIU(), pad, PCB_DIMENSION_T, PCB_REFERENCE_IMAGE_T, PCB_TEXT_T, pcbIUScale, Reference(), text, and Value().
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 1177 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_REFERENCE_IMAGE_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().
|
inlineoverridevirtual |
This defaults to the center of the bounding box if not overridden.
Reimplemented from BOARD_ITEM.
Definition at line 180 of file footprint.h.
References GetBoundingBox(), and BOX2< Vec >::GetCenter().
|
inlineoverridevirtual |
Return the class name.
Implements EDA_ITEM.
Definition at line 819 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 633 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 2480 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(), and DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances().
|
static |
Definition at line 2299 of file footprint.cpp.
References COLLECTORS_GUIDE::Accuracy(), ARC_LOW_DEF, SHAPE_LINE_CHAIN::Area(), ERROR_INSIDE, ERROR_OUTSIDE, GetBoundingHull(), GetCoverageArea(), GENERAL_COLLECTOR::GetGuide(), PCB_GROUP::GetItems(), EDA_SHAPE::GetShape(), PCB_SHAPE::GetWidth(), EDA_SHAPE::IsFilled(), KI_FALLTHROUGH, PCB_ARC_T, PCB_FIELD_T, PCB_FOOTPRINT_T, PCB_GENERATOR_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().
|
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(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_EDIT_TOOL::editFieldText(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), SCH_EDITOR_CONTROL::EditWithSymbolEditor(), SCH_DRAWING_TOOLS::findWire(), SCH_SYMBOL::GetMsgPanelInfo(), SELECTION_CONDITIONS::Idle(), SELECTION_CONDITIONS::IdleSelection(), PCB_POINT_EDITOR::OnSelectionChange(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), SCH_EDIT_FRAME::SelectUnit(), SCH_ITEM::SwapFlags(), 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_REFERENCE_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_TARGET_PROPERTIES::TransferDataFromWindow(), and DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow().
|
virtualinherited |
Reimplemented in PAD, and PCB_VIA.
Definition at line 237 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 2444 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.
const PCB_FIELD * FOOTPRINT::GetField | ( | MANDATORY_FIELD_T | aFieldNdx | ) | const |
Definition at line 266 of file footprint.cpp.
References m_fields.
PCB_FIELD * FOOTPRINT::GetField | ( | MANDATORY_FIELD_T | aFieldType | ) |
Return a mandatory field in this symbol.
aFieldType | is one of the mandatory field types (REFERENCE_FIELD, VALUE_FIELD, etc.). |
Definition at line 260 of file footprint.cpp.
References m_fields.
Referenced by Footprint(), PCB_EASYEDAPRO_PARSER::ParseFootprint(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), BOARD_EDITOR_CONTROL::PlaceFootprint(), Reference(), and Value().
PCB_FIELD * FOOTPRINT::GetFieldById | ( | int | aFieldId | ) |
Return a field in this symbol.
aFieldId | is the id of the field requested. Note that this id ONLY SOMETIMES equates to the field's position in the vector. |
Definition at line 272 of file footprint.cpp.
References m_fields.
PCB_FIELD * FOOTPRINT::GetFieldByName | ( | const wxString & | aFieldName | ) |
Return a field in this symbol.
aFieldName | is the name of the field |
Definition at line 294 of file footprint.cpp.
References m_fields.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint(), PCB_EASYEDAPRO_PARSER::fillFootprintModelInfo(), getFieldFunc(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Return the number of fields in this symbol.
Definition at line 674 of file footprint.h.
References m_fields.
Referenced by PCB_EASYEDAPRO_PARSER::fillFootprintModelInfo(), TEST_BOARD_ITEM_FIXTURE::Instantiate(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Return a vector of fields from the symbol.
Definition at line 652 of file footprint.h.
References m_fields.
|
inline |
Definition at line 653 of file footprint.h.
References m_fields.
void FOOTPRINT::GetFields | ( | std::vector< PCB_FIELD * > & | aVector, |
bool | aVisibleOnly | ||
) |
Populate a std::vector with PCB_TEXTs.
aVector | is the vector to populate. |
aVisibleOnly | is used to add only the fields that are visible and contain text. |
Definition at line 321 of file footprint.cpp.
References m_fields.
Referenced by BOARD_ADAPTER::addFootprintShapes(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_PLUGIN::format(), operator=(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
wxString FOOTPRINT::GetFieldText | ( | const wxString & | aFieldName | ) | const |
Search for a field named aFieldName and returns text associated with this field.
aFieldName | is the name of the field |
Definition at line 309 of file footprint.cpp.
References m_fields.
Referenced by ResolveTextVar().
|
inline |
Definition at line 732 of file footprint.h.
References m_fileFormatVersionAtLoad.
|
inline |
Definition at line 251 of file footprint.h.
References m_filters.
Referenced by PCB_PLUGIN::format(), BOARD_NETLIST_UPDATER::updateFootprintParameters(), and DIALOG_EXCHANGE_FOOTPRINTS::ViewAndSelectFootprint().
|
inline |
Definition at line 282 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(), PL_EDIT_TOOL::DoDelete(), PCB_TOOL_BASE::doInteractiveItemPlacement(), KIGFX::SCH_PAINTER::draw(), enclosedByAreaFunc(), DRC_ENGINE::EvalRules(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), LIB_PIN::GetMsgPanelInfo(), intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), intersectsFrontCourtyardFunc(), LIB_SYMBOL::LIB_SYMBOL(), EE_SELECTION_TOOL::Main(), 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(), 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 246 of file eda_item.h.
References EDA_ITEM::GetPosition().
Referenced by SYMBOL_EDIT_FRAME::FocusOnItem(), and SCH_EDIT_FRAME::FocusOnItem().
|
inherited |
Definition at line 96 of file board_item.cpp.
References KIFONT::METRICS::Default().
Referenced by BOARD_ADAPTER::addText(), KIGFX::PCB_PAINTER::draw(), PCB_TEXT::getFontMetrics(), PCB_TEXTBOX::getFontMetrics(), BRDITEMS_PLOTTER::PlotBoardGraphicItem(), BRDITEMS_PLOTTER::PlotDimension(), BRDITEMS_PLOTTER::PlotFootprintGraphicItems(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), PCB_TEXT::TransformTextToPolySet(), and PCB_TEXTBOX::TransformTextToPolySet().
|
inlineinherited |
Definition at line 157 of file view_item.h.
Referenced by EDA_ITEM::EDA_ITEM(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), and EDA_ITEM::operator=().
|
inline |
Definition at line 230 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(), GENCAD_EXPORTER::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_ASSOCIATIONS::TransferDataToWindow(), 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 233 of file footprint.h.
References LIB_ID::Format(), and m_fpid.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), and BOARD_EDITOR_CONTROL::PlaceFootprint().
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 956 of file footprint.cpp.
References ANGLE_0, dummy, BOX2< Vec >::Merge(), and pad.
|
inherited |
Definition at line 261 of file board_item.cpp.
References BOARD_ITEM::GetParentFootprint(), EDA_ITEM::GetPosition(), and RotatePoint().
Referenced by IPC2581_PLUGIN::addLocationNode(), PCB_PLUGIN::format(), getMatchingTextItem(), FP_TEXT_GRID_TABLE::GetValue(), DIALOG_PAD_PROPERTIES::initValues(), FOOTPRINT::cmp_pads::operator()(), padNeedsUpdate(), processTextItem(), and FP_TEXT_GRID_TABLE::SetValue().
|
virtualinherited |
Reimplemented in SCH_LINE, PCB_TUNING_PATTERN, PCB_SHAPE, PCB_TEXTBOX, PCB_TRACK, and ZONE.
Definition at line 329 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 898 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 1678 of file footprint.cpp.
References _, and GetReference().
Referenced by DRC_ENGINE::EvalRules().
|
inline |
Definition at line 239 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 218 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(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), 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(), DIALOG_FOOTPRINT_PROPERTIES::OnAddField(), EAGLE_PLUGIN::packagePad(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), PCB_TEXT::PCB_TEXT(), SetLayerAndFlip(), AR_AUTOPLACER::testFootprintOnBoard(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
Return the bounding box of the footprint on a given set of layers.
Definition at line 1132 of file footprint.cpp.
References BOARD_ITEM::GetBoard(), BOARD::IsFootprintHolder(), m_drawings, m_pads, m_privateLayers, m_zones, BOX2< Vec >::Merge(), pad, and PCB_REFERENCE_IMAGE_T.
Referenced by PCB_SELECTION_TOOL::FilterCollectorForFootprints().
|
inherited |
Return the name of the PCB layer on which the item resides.
Definition at line 102 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(), ZONE::GetItemDescription(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_DIM_LEADER::GetMsgPanelInfo(), PCB_SHAPE::GetMsgPanelInfo(), PCB_TARGET::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), ZONE::GetMsgPanelInfo(), FOOTPRINT_SEARCH_HANDLER::getResultCell(), TEXT_SEARCH_HANDLER::getResultCell(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), FP_TEXT_GRID_TABLE::GetValue(), and ResolveTextVar().
|
inlinevirtualinherited |
Return a std::bitset of all layers on which the item physically resides.
Reimplemented in PCB_GROUP, PAD, PCB_GENERATOR, PCB_VIA, and ZONE.
Definition at line 230 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(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), 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(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), PCB_SELECTION_CONDITIONS::sameLayerFunc(), PCB_SELECTION_TOOL::selectAllConnectedShapes(), PCB_SELECTION_TOOL::selectAllConnectedTracks(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), and PCB_CONTROL::UpdateMessagePanel().
|
inline |
Definition at line 236 of file footprint.h.
References m_libDescription.
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().
int FOOTPRINT::GetLikelyAttribute | ( | ) | const |
Returns the most likely attribute based on pads Either FP_THROUGH_HOLE/FP_SMD/OTHER(0)
Definition at line 892 of file footprint.cpp.
References FP_SMD, FP_THROUGH_HOLE, m_pads, and pad.
Referenced by CheckFootprintAttributes().
|
inline |
Definition at line 797 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 257 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 260 of file footprint.h.
References _, GetReference(), and m_localClearance.
|
inline |
Definition at line 254 of file footprint.h.
References m_localSolderMaskMargin.
Referenced by FootprintNeedsUpdate(), PCB_PLUGIN::format(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
inline |
Definition at line 268 of file footprint.h.
References m_localSolderPasteMargin.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
|
inline |
Definition at line 271 of file footprint.h.
References m_localSolderPasteMarginRatio.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), FootprintNeedsUpdate(), PCB_PLUGIN::format(), 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 1689 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 1259 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_CHOOSER, FRAME_FOOTPRINT_EDITOR, FRAME_FOOTPRINT_VIEWER, GetFPID(), GetKeywords(), GetLibDescription(), GetOrientation(), GetPadCount(), LIB_ID::GetUniStringLibId(), IsFlipped(), IsLocked(), EDA_BASE_FRAME::IsType(), m_3D_Drawings, m_attributes, m_fpid, m_fpStatus, m_keywords, m_libDescription, Reference(), UnescapeString(), and Value().
Referenced by PCB_CONTROL::UpdateMessagePanel(), DISPLAY_FOOTPRINTS_FRAME::UpdateMsgPanel(), and FOOTPRINT_EDIT_FRAME::UpdateMsgPanel().
|
inline |
Definition at line 299 of file footprint.h.
References m_netTiePadGroups.
Referenced by FootprintNeedsUpdate(), PCB_PLUGIN::format(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow().
Definition at line 2646 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 2224 of file footprint.cpp.
References UTIL::GetRefDesPrefix(), GetTrailingInt(), m_pads, and pad.
|
inline |
Definition at line 209 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(), GENCAD_EXPORTER::FootprintWriteShape(), PCB_PLUGIN::format(), formatInternalUnits(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), GetMsgPanelInfo(), PAD::GetMsgPanelInfo(), FP_TEXT_GRID_TABLE::GetValue(), 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_effects(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), pasteFootprintItemsToFootprintEditor(), Rotate(), FP_TEXT_GRID_TABLE::SetValue(), EDIT_TOOL::Swap(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), EAGLE_PLUGIN::transferPad(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 225 of file footprint.h.
References EDA_ANGLE::AsDegrees(), and m_orient.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC(), and PCB_EASYEDA_PARSER::ParseToBoardItemContainer().
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 1516 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 1532 of file footprint.cpp.
Referenced by BASIC_FOOTPRINT_INFO::BASIC_FOOTPRINT_INFO(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), GetMsgPanelInfo(), FOOTPRINT_INFO_IMPL::load(), IPC2581_PLUGIN::pinName(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), sortFootprintsByComplexity(), and AR_AUTOPLACER::testFootprintOnBoard().
|
inlineinherited |
Definition at line 203 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_ADAPTER::createTrack(), BOARD_ITEM::DeleteStructure(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), 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(), PAD::ImportSettingsFrom(), PAD::IsLocked(), PCB_SELECTION_TOOL::itemPassesFilter(), memberOfGroupFunc(), EDIT_TOOL::MoveExact(), PAD::operator==(), PAD::PAD(), PCB_PARSER::parsePCB_TEXT_effects(), PCB_SELECTION_TOOL::Selectable(), PAD::Similarity(), BOARD_ITEM::SwapItemData(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), and DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem().
|
inherited |
For "parent" property.
Definition at line 301 of file board_item.cpp.
References KIID::AsString(), EDA_ITEM::m_parent, and EDA_ITEM::m_Uuid.
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC().
|
inherited |
Definition at line 247 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(), IPC2581_PLUGIN::addPad(), IPC2581_PLUGIN::addPadStack(), GRAPHICS_IMPORTER_PCBNEW::AddPolygon(), DRC_TEST_PROVIDER_SOLDER_MASK::checkItemMask(), DRC_TEST_PROVIDER_SOLDER_MASK::checkMaskAperture(), DIALOG_TRACK_VIA_PROPERTIES::confirmPadChange(), CONVERT_TOOL::CreatePolys(), EDIT_TOOL::DeleteItems(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXTBOX_PROPERTIES::DIALOG_TEXTBOX_PROPERTIES(), doPushPadProperties(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), PCB_PLUGIN::format(), FormatProbeItem(), IPC2581_PLUGIN::generateLayerSetNet(), PCB_BASE_EDIT_FRAME::GetContextualTextVars(), PCB_TEXT::GetDrawRotation(), PAD::GetFPRelativeOrientation(), BOARD_ITEM::GetFPRelativePosition(), PAD::GetItemDescription(), PCB_FIELD::GetItemDescription(), PCB_TEXT::GetItemDescription(), PAD::GetLocalClearanceOverrides(), PCB_SHAPE::GetMenuImage(), PCB_SHAPE::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXT::GetShownText(), PAD::GetSolderMaskExpansion(), PAD::GetSolderPasteMargin(), FP_TEXT_GRID_TABLE::GetValue(), PCB_SELECTION_TOOL::grabUnconnected(), GROUP_TOOL::Group(), hash_fp_item(), PAD::ImportSettingsFrom(), DIALOG_PAD_PROPERTIES::initValues(), GENERAL_COLLECTOR::Inspect(), ARRAY_CREATOR::Invoke(), PCB_SHAPE::IsConnected(), PAD::IsFlipped(), PNS_PCBNEW_RULE_RESOLVER::IsInNetTie(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), PNS_PCBNEW_RULE_RESOLVER::IsNetTieExclusion(), DRC_ENGINE::IsNetTieExclusion(), PCB_SELECTION_TOOL::itemPassesFilter(), memberOfFootprintFunc(), memberOfSheetFunc(), padNeedsUpdate(), BOARD_COMMIT::parentObject(), IPC2581_PLUGIN::pinName(), BRDITEMS_PLOTTER::PlotPad(), BRDITEMS_PLOTTER::PlotShape(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), BOARD_COMMIT::Push(), PAD_TOOL::pushPadSettings(), PCB_GRID_HELPER::queryVisible(), PAD_TOOL::RecombinePad(), PCB_PARSER::resolveGroups(), BOARD_COMMIT::Revert(), PAD::SameLogicalPadAs(), CLIPBOARD_IO::SaveSelection(), PCB_SELECTION_TOOL::Selectable(), PAD::SetFPRelativeOrientation(), BOARD_ITEM::SetFPRelativePosition(), FP_TEXT_GRID_TABLE::SetValue(), PAD::SharesNetTieGroup(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DIALOG_PAD_PROPERTIES::TransferDataFromWindow(), EAGLE_PLUGIN::transferPad(), PCB_POINT_EDITOR::updateItem(), PCB_TEXT::ViewGetLayers(), PCB_FIELD::ViewGetLOD(), PCB_SHAPE::ViewGetLOD(), PCB_TEXT::ViewGetLOD(), ZONE::ViewGetLOD(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), and ZONE::ZONE().
|
inlineinherited |
Definition at line 91 of file board_item.h.
References BOARD_ITEM::m_group.
Referenced by PCB_GROUP::AddItem(), PCB_GENERATOR::AddItem(), EDIT_TOOL::DeleteItems(), BOARD_ITEM::Duplicate(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_EDIT_FRAME::ExportFootprintsToLibrary(), DSN::SPECCTRA_DB::FromSESSION(), getClosestGroup(), BOARD_ITEM::IsLocked(), memberOfGroupFunc(), PCB_CONTROL::Paste(), PCB_CONTROL::placeBoardItems(), BOARD_COMMIT::Push(), BOARD::Remove(), Remove(), GROUP_TOOL::RemoveFromGroup(), BOARD_ITEM::SwapItemData(), PNS_KICAD_IFACE_BASE::syncArc(), PNS_KICAD_IFACE_BASE::syncTrack(), PNS_KICAD_IFACE_BASE::syncVia(), 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 242 of file footprint.h.
References m_path.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint(), BOARD_EDITOR_CONTROL::ExportNetlist(), PCB_PLUGIN::format(), PCB_SELECTION_TOOL::selectSameSheet(), DIALOG_FOOTPRINT_ASSOCIATIONS::TransferDataToWindow(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inlineoverridevirtual |
Reimplemented from EDA_ITEM.
Definition at line 206 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(), AutoPositionFields(), 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(), GENCAD_EXPORTER::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(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), ALTIUM_PCB::ParseComponentsBodies6Data(), PCB_PARSER::parsePCB_TEXT_effects(), 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(), EAGLE_PLUGIN::transferPad(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 125 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 556 of file footprint.h.
References EDA_TEXT::GetText(), and Reference().
Referenced by IPC2581_PLUGIN::addPad(), 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(), IPC2581_PLUGIN::generateLayerSetNet(), GetItemDescription(), GetLocalClearance(), PAD::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), DIALOG_BOARD_REANNOTATE::GetNewRefDes(), CADSTAR_PCB_ARCHIVE_LOADER::getPadReference(), GetReferenceAsString(), FOOTPRINT_SEARCH_HANDLER::getResultCell(), GENCAD_EXPORTER::getShapeName(), IncrementReference(), 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::PlotShape(), 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 565 of file footprint.h.
References GetReference().
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 248 of file footprint.h.
References m_sheetfile.
Referenced by PCB_PLUGIN::format(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 245 of file footprint.h.
References m_sheetname.
Referenced by PCB_PLUGIN::format(), memberOfSheetFunc(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
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 255 of file eda_item.h.
References EDA_ITEM::GetPosition().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 84 of file board_item.cpp.
References DEFAULT_LINE_WIDTH, EDA_IU_SCALE::mmToIU(), and pcbIUScale.
Referenced by CONVERT_TOOL::CreatePolys().
|
inlineinherited |
Definition at line 142 of file eda_item.h.
References CANDIDATE, IS_LINKED, EDA_ITEM::m_flags, SELECTED_BY_DRAG, and SKIP_STRUCT.
Referenced by EDA_ITEM::ClearTempFlags(), and SCH_ITEM::SwapFlags().
|
inherited |
Return a translated description of the type for this EDA_ITEM for display in user facing messages.
Definition at line 320 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 944 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 1551 of file footprint.cpp.
References LSET::AllCuMask(), m_pads, and pad.
Referenced by BASIC_FOOTPRINT_INFO::BASIC_FOOTPRINT_INFO(), FOOTPRINT_INFO_IMPL::load(), and DIALOG_EXCHANGE_FOOTPRINTS::ViewAndSelectFootprint().
|
inline |
Definition at line 578 of file footprint.h.
References EDA_TEXT::GetText(), and Value().
Referenced by BOOST_AUTO_TEST_CASE(), KI_TEST::CheckFootprint(), GENCAD_EXPORTER::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 586 of file footprint.h.
References GetValue().
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inlineinherited |
Definition at line 95 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(), TEXT_SEARCH_HANDLER::getResultCell(), BOARD_ITEM::SetY(), TRACK_VIA_DESC::TRACK_VIA_DESC(), and ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 101 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(), TEXT_SEARCH_HANDLER::getResultCell(), BOARD_ITEM::SetX(), TRACK_VIA_DESC::TRACK_VIA_DESC(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 275 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 191 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(), GENCAD_EXPORTER::FootprintWriteShape(), PCB_PLUGIN::format(), FOOTPRINT_EDIT_FRAME::GetDocumentExtents(), GetEffectiveShape(), getMatchingTextItem(), hash_fp_item(), hashFootprint(), ROUTER_TOOL::InlineDrag(), MoveAnchorPosition(), operator=(), PCB_EASYEDAPRO_PARSER::ParseFootprint(), 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_SELECTION_TOOL::Selectable(), transformFPShapesToPolySet(), and TransformFPShapesToPolySet().
|
inline |
Definition at line 192 of file footprint.h.
References m_drawings.
|
inline |
Definition at line 197 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 198 of file footprint.h.
References m_groups.
bool FOOTPRINT::HasFieldByName | ( | const wxString & | aFieldName | ) | const |
Definition at line 283 of file footprint.cpp.
References m_fields.
Referenced by ResolveTextVar(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inlineinherited |
Definition at line 127 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by GRAPHICS_CLEANER::cleanupShapes(), SCH_EDIT_TOOL::DoDelete(), SCH_MOVE_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), IsConflicting(), ZONE::IsConflicting(), SCH_SCREEN::MarkConnections(), PCB_TUNING_PATTERN::Move(), SCH_MOVE_TOOL::moveItem(), SCH_MOVE_TOOL::orthoLineDrag(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), SCH_EDIT_TOOL::Rotate(), PCB_TUNING_PATTERN::Rotate(), EE_TOOL_BASE< T >::saveCopyInUndoList(), PCB_SELECTION_TOOL::selectAllConnectedShapes(), EE_SELECTION_TOOL::selectMultiple(), and SCH_COMMIT::Stage().
|
inlinevirtualinherited |
Reimplemented in PAD, and PCB_VIA.
Definition at line 156 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::testSingleLayerItemAgainstItem(), and PCB_CONTROL::UpdateMessagePanel().
|
inlinevirtualinherited |
Check if this item has line stoke properties.
Reimplemented in PCB_SHAPE.
Definition at line 215 of file board_item.h.
bool FOOTPRINT::HasThroughHolePads | ( | ) | const |
Definition at line 2964 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 1445 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 1432 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 1439 of file footprint.cpp.
References SHAPE_POLY_SET::Collide(), and GetBoundingHull().
Referenced by GENERAL_COLLECTOR::Inspect().
bool FOOTPRINT::HitTestOnLayer | ( | const BOX2I & | aRect, |
bool | aContained, | ||
PCB_LAYER_ID | aLayer, | ||
int | aAccuracy = 0 |
||
) | const |
Definition at line 1391 of file footprint.cpp.
References m_drawings, m_pads, m_zones, pad, and PCB_TEXT_T.
bool FOOTPRINT::HitTestOnLayer | ( | const VECTOR2I & | aPosition, |
PCB_LAYER_ID | aLayer, | ||
int | aAccuracy = 0 |
||
) | const |
Test if the point hits one or more of the footprint elements on a given layer.
aPosition | is the point to test |
aAccuracy | is the hit test accuracy |
aLayer | is the layer to test |
Definition at line 1364 of file footprint.cpp.
References m_drawings, m_pads, m_zones, pad, and PCB_TEXT_T.
Referenced by PCB_SELECTION_TOOL::FilterCollectorForFootprints().
|
inline |
Definition at line 281 of file footprint.h.
References m_arflag.
void FOOTPRINT::IncrementReference | ( | int | aDelta | ) |
Bump the current reference by aDelta.
Definition at line 2272 of file footprint.cpp.
References UTIL::GetRefDesPrefix(), GetReference(), GetTrailingInt(), and SetReference().
|
inline |
Definition at line 686 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(), SYMBOL_EDIT_FRAME::FocusOnItem(), 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 627 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, PCB_SHAPE, and ZONE.
Definition at line 134 of file board_item.h.
Referenced by 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 722 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 704 of file footprint.h.
References FP_EXCLUDE_FROM_BOM, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 695 of file footprint.h.
References FP_EXCLUDE_FROM_POS_FILES, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 351 of file footprint.h.
References B_Cu, and GetLayer().
Referenced by PCB_BASE_FRAME::AddFootprintToBoard(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), IPC2581_PLUGIN::addPad(), FootprintNeedsUpdate(), IPC2581_PLUGIN::generateLayerSetNet(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), GetMsgPanelInfo(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), ALTIUM_PCB::ParseComponentsBodies6Data(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PCB_CONTROL::pruneItemLayers(), PCB_SELECTION_TOOL::Selectable(), EDIT_TOOL::Swap(), and DIALOG_PAD_PROPERTIES::TransferDataFromWindow().
|
inlineinherited |
Definition at line 191 of file eda_item.h.
References EDA_ITEM::m_forceVisible.
Referenced by KIGFX::SCH_PAINTER::draw(), and SCH_FIELD::Print().
|
inlinevirtualinherited |
Definition at line 295 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(), FP_TEXT_GRID_TABLE::GetValueAsBool(), PCB_TEXT_DESC::PCB_TEXT_DESC(), BRDITEMS_PLOTTER::PlotBoardGraphicItem(), BRDITEMS_PLOTTER::PlotFootprintGraphicItems(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), 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 1867 of file footprint.cpp.
References StringLibNameInvalidChars().
Referenced by DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::checkFootprintName().
|
inlineoverridevirtual |
Reimplemented from BOARD_ITEM.
Definition at line 365 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_TOOL::AutoplaceFields(), LIB_PIN::CalcEdit(), EDIT_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), 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 284 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_TOOL::ChangeTextType(), SCH_EDIT_TOOL::ConvertDeMorgan(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), PCB_TUNING_PATTERN::EditStart(), SCH_MOVE_TOOL::getConnectedDragItems(), DIALOG_PIN_PROPERTIES::getSyncPinsMessage(), SYMBOL_EDITOR_DRAWING_TOOLS::Init(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), SCH_SCREEN::IsTerminalPoint(), EE_POINT_EDITOR::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(), DIALOG_SHEET_PROPERTIES::TransferDataToWindow(), and PCB_TUNING_PATTERN::ViewDraw().
|
inlinevirtualinherited |
Reimplemented in PCB_GROUP, PAD, PCB_TRACK, and ZONE.
Definition at line 151 of file board_item.h.
References BOARD_ITEM::GetLayer(), and IsCopperLayer().
Referenced by CN_CONNECTIVITY_ALGO::Add(), CheckNetTies(), DRC_ENGINE::EvalRules(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), BOARD_INSPECTION_TOOL::Init(), BOARD_INSPECTION_TOOL::InspectClearance(), PCB_SHAPE::IsConnected(), isCopper(), PCB_SELECTION_TOOL::isExpandableGraphicShape(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), PCB_SHAPE::SetLayer(), BOARD_CONNECTED_ITEM::SetNetCode(), shapeNeedsUpdate(), DIALOG_SHAPE_PROPERTIES::showHideNetInfo(), PCB_CONTROL::TrackDisplayMode(), PCB_CONTROL::UpdateMessagePanel(), and PCB_SHAPE::ViewGetLayers().
|
overridevirtual |
Test to see if this object is on the given layer.
Virtual so objects like PAD, which reside on multiple layers can do their own form of testing.
aLayer | The layer to test for. |
Reimplemented from BOARD_ITEM.
Definition at line 1333 of file footprint.cpp.
References m_drawings, m_fields, m_pads, m_zones, and pad.
|
inline |
Definition at line 388 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 410 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(), SCH_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(), SCH_COMMIT::Stage(), GERBVIEW_SELECTION_TOOL::unselect(), SCH_FIND_REPLACE_TOOL::UpdateFind(), HIERARCHY_PANE::UpdateHierarchySelection(), PCB_TUNING_PATTERN::ViewDraw(), PCB_FIELD::ViewGetLOD(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), and DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem().
|
inlineinherited |
Definition at line 164 of file eda_item.h.
References IS_SHOWN_AS_BITMAP, and EDA_ITEM::m_flags.
|
inlinevirtualinherited |
Reimplemented in PCB_VIA.
Definition at line 161 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_FIELD, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, and PCB_VIA.
Definition at line 172 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(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingBus(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLine(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingWire(), SCH_ITEM::IsType(), PAD::IsType(), PCB_FIELD::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(), SCH_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 292 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 312 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 114 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(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), PAD::GetMsgPanelInfo(), and PCB_TRACK::GetMsgPanelInfo().
|
inline |
Definition at line 406 of file footprint.h.
References FP_PADS_are_LOCKED, and m_fpStatus.
std::map< wxString, int > FOOTPRINT::MapPadNumbersToNetTieGroups | ( | ) | const |
Definition at line 2591 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 372 of file eda_item.h.
Referenced by SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_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(), TEXT_SEARCH_HANDLER::Search(), 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 123 of file eda_item.cpp.
References CTX_SEARCH, EDA_COMBINED_MATCHER::Find(), EDA_SEARCH_DATA::findString, EDA_ITEM::IsReplaceable(), isWordChar(), EDA_SEARCH_DATA::matchCase, EDA_SEARCH_DATA::matchMode, next(), EDA_SEARCH_DATA::searchAndReplace, and text.
|
inline |
Definition at line 202 of file footprint.h.
References m_3D_Drawings.
Referenced by EXPORTER_STEP::buildFootprint3DShapes(), KI_TEST::CheckFootprint(), PCB_EDIT_FRAME::ExchangeFootprint(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), PCB_EASYEDAPRO_PARSER::fillFootprintModelInfo(), PCB_PLUGIN::format(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), idf_export_footprint(), LEGACY_PLUGIN::load3D(), MoveAnchorPosition(), ALTIUM_PCB::ParseComponentsBodies6Data(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), 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 203 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 1895 of file footprint.cpp.
References m_pos, and SetPosition().
Referenced by ROUTER_TOOL::InlineDrag(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), 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 2024 of file footprint.cpp.
References GetOrientation(), GraphicalItems(), EDA_IU_SCALE::IUTomm(), m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_fields, m_pads, Models(), BOX2< Vec >::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 397 of file footprint.h.
References FP_to_PLACE, and m_fpStatus.
Referenced by AR_AUTOPLACER::pickFootprint().
|
inlinevirtualinherited |
Perform any normalization required after a user rotate and/or flip.
Reimplemented in PCB_SHAPE.
Definition at line 336 of file board_item.h.
|
inherited |
Test if another item is less than this object.
aItem | - Item to compare against. |
Definition at line 249 of file eda_item.cpp.
References EDA_ITEM::GetClass().
Definition at line 523 of file footprint.cpp.
References Add(), PCB_GROUP::AddItem(), GetFields(), PCB_GROUP::GetItems(), GraphicalItems(), group, Groups(), m_3D_Drawings, m_attributes, m_boundingBoxCacheTimeStamp, m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_drawings, m_fields, m_fpid, m_fpStatus, m_groups, m_hullCacheTimeStamp, m_initial_comments, m_keywords, m_lastEditTime, m_libDescription, m_link, m_localClearance, m_localSolderMaskMargin, m_localSolderPasteMargin, m_localSolderPasteMarginRatio, m_netTiePadGroups, m_orient, m_pads, m_path, m_pos, m_privateLayers, m_textExcludedBBoxCacheTimeStamp, m_visibleBBoxCacheTimeStamp, m_zoneConnection, m_zones, EDA_ITEM::operator=(), pad, Pads(), BOARD_CONNECTED_ITEM::SetNetCode(), and Zones().
Definition at line 429 of file footprint.cpp.
References Add(), group, m_3D_Drawings, m_attributes, m_boundingBoxCacheTimeStamp, m_cachedBoundingBox, m_cachedHull, m_cachedTextExcludedBBox, m_cachedVisibleBBox, m_drawings, m_fields, m_fpid, m_fpStatus, m_groups, m_hullCacheTimeStamp, m_initial_comments, m_keywords, m_lastEditTime, m_libDescription, m_link, m_localClearance, m_localSolderMaskMargin, m_localSolderPasteMargin, m_localSolderPasteMarginRatio, m_netTiePadGroups, m_orient, m_pads, m_path, m_pos, m_privateLayers, m_textExcludedBBoxCacheTimeStamp, m_visibleBBoxCacheTimeStamp, m_zoneConnection, m_zones, EDA_ITEM::operator=(), and pad.
|
overridevirtual |
Implements BOARD_ITEM.
Definition at line 2976 of file footprint.cpp.
References m_drawings, m_fields, m_pads, m_zones, PCB_FOOTPRINT_T, and EDA_ITEM::Type().
|
inline |
Definition at line 188 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(), 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(), IPC2581_PLUGIN::pinName(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PCB_CONTROL::pruneItemLayers(), BOARD_COMMIT::Push(), DISPLAY_FOOTPRINTS_FRAME::ReloadFootprint(), BOARD_EDITOR_CONTROL::RepairBoard(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), ResolveTextVar(), 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 189 of file footprint.h.
References m_pads.
|
inline |
Definition at line 593 of file footprint.h.
References GetField(), and REFERENCE_FIELD.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), AutoPositionFields(), ALTIUM_PCB::ConvertTexts6ToFootprintItemOnLayer(), MICROWAVE_TOOL::createBaseFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), PCB_BASE_FRAME::CreateNewFootprint(), PCB_EDIT_FRAME::ExchangeFootprint(), EASYEDA_PLUGIN::FootprintLoad(), EASYEDAPRO_PLUGIN::FootprintLoad(), PCB_PLUGIN::format(), GetBoundingBox(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadNet(), GetMsgPanelInfo(), GetReference(), 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(), ResolveTextVar(), and SetReference().
|
inline |
Definition at line 598 of file footprint.h.
References GetField(), and REFERENCE_FIELD.
|
overridevirtual |
Removes an item from the container.
Implements BOARD_ITEM_CONTAINER.
Definition at line 786 of file footprint.cpp.
References EDA_ITEM::GetFlags(), BOARD_ITEM::GetParentGroup(), PCB_FIELD::IsMandatoryField(), m_drawings, m_fields, m_groups, m_pads, m_zones, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_FIELD_T, PCB_GROUP_T, PCB_PAD_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_ZONE_T, PCB_GROUP::RemoveItem(), EDA_ITEM::SetFlags(), STRUCT_DELETED, and EDA_ITEM::Type().
Referenced by EDIT_TOOL::DeleteItems(), PCB_CONTROL::pruneItemLayers(), BOARD_COMMIT::Push(), and GROUP_TOOL::Ungroup().
void FOOTPRINT::RemoveField | ( | const wxString & | aFieldName | ) |
Remove a user field from the footprint.
aFieldName | is the user fieldName to remove. Attempts to remove a mandatory field or a non-existant field are silently ignored. |
Definition at line 345 of file footprint.cpp.
References m_fields, and MANDATORY_FIELDS.
Referenced by BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inlinevirtualinherited |
Reimplemented in SCH_ITEM.
Definition at line 154 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 399 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 186 of file eda_item.cpp.
References EDA_SEARCH_DATA::findString, isWordChar(), 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 647 of file footprint.cpp.
References BOARD_ITEM::GetBoard(), GetFieldText(), BOARD_ITEM::GetLayerName(), PCB_TEXT::GetShownText(), LIB_ID::GetUniStringLibItemName(), LIB_ID::GetUniStringLibNickname(), HasFieldByName(), m_fpid, pad, Pads(), Reference(), ResolveTextVar(), and Value().
Referenced by PCB_TEXT::GetShownText(), BOARD::ResolveTextVar(), and ResolveTextVar().
Rotate this object.
aRotCentre | the rotation center point. |
Reimplemented from BOARD_ITEM.
Definition at line 1902 of file footprint.cpp.
References GetOrientation(), m_boundingBoxCacheTimeStamp, m_courtyard_cache_timestamp, m_drawings, m_fields, m_hullCacheTimeStamp, m_pos, m_textExcludedBBoxCacheTimeStamp, m_visibleBBoxCacheTimeStamp, PCB_TEXT_T, RotatePoint(), SetOrientation(), and SetPosition().
Referenced by Flip(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow().
|
overridevirtual |
Invoke a function on all descendants.
Reimplemented from BOARD_ITEM.
Definition at line 1701 of file footprint.cpp.
References group, m_drawings, m_fields, m_groups, m_pads, m_zones, and pad.
|
overridevirtual |
Invoke a function on all descendants.
Reimplemented from BOARD_ITEM.
Definition at line 1727 of file footprint.cpp.
References group, m_drawings, m_fields, m_groups, m_pads, m_zones, and pad.
Referenced by PCB_BASE_FRAME::CreateNewFootprint(), Duplicate(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), and FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard().
|
inlineinherited |
Definition at line 76 of file inspectable.h.
References PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_MANAGER::PropertyChanged(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 59 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_MANAGER::PropertyChanged(), 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_MANAGER::PropertyChanged(), PROPERTY_BASE::setter(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
Referenced by SCH_PROPERTIES_PANEL::valueChanged(), and PCB_PROPERTIES_PANEL::valueChanged().
|
inline |
Definition at line 714 of file footprint.h.
References FP_ALLOW_MISSING_COURTYARD, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 278 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 687 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(), SYMBOL_EDIT_FRAME::FocusOnItem(), 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 723 of file footprint.h.
References FP_DNP, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 705 of file footprint.h.
References FP_EXCLUDE_FROM_BOM, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 696 of file footprint.h.
References FP_EXCLUDE_FROM_POS_FILES, and m_attributes.
Referenced by FOOTPRINT_DESC::FOOTPRINT_DESC().
|
inline |
Definition at line 731 of file footprint.h.
References m_fileFormatVersionAtLoad.
|
inline |
Definition at line 252 of file footprint.h.
References m_filters.
Referenced by BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 280 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(), ConnectBoardShapes(), ConvertOutlineToPolygon(), PCB_TUNING_PATTERN::CreateNew(), SCH_DRAWING_TOOLS::createNewText(), SCH_EDIT_FRAME::DeleteJunction(), SCH_EDIT_TOOL::DoDelete(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), 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(), SCH_DRAWING_TOOLS::DrawSheet(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), PCB_TUNING_PATTERN::EditStart(), PCB_SELECTION_TOOL::EnterGroup(), PAD_TOOL::explodePad(), SCH_MOVE_TOOL::getConnectedDragItems(), SYMBOL_EDIT_FRAME::GetSymbolFromRedoList(), SYMBOL_EDIT_FRAME::GetSymbolFromUndoList(), EE_COLLECTOR::Inspect(), EE_SELECTION_TOOL::Main(), 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_EASYEDAPRO_PARSER::ParseSchematic(), SCH_ALTIUM_PLUGIN::ParseSheetSymbol(), SCH_ALTIUM_PLUGIN::ParseSignalHarness(), SCH_ALTIUM_PLUGIN::ParseWire(), 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(), PCB_TUNING_PATTERN::Remove(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDIT_FRAME::SaveCopyInUndoList(), EE_SELECTION_TOOL::SelectAll(), PCB_SELECTION_TOOL::selectAllConnectedShapes(), EE_SELECTION_TOOL::selectMultiple(), EDA_ITEM::SetBrightened(), EDA_ITEM::SetIsShownAsBitmap(), EDA_ITEM::SetModified(), EDA_ITEM::SetSelected(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_LINE_WIRE_BUS_TOOL::startSegments(), SCH_ITEM::SwapFlags(), 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(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), and ROUTER_TOOL::updateSizesAfterLayerSwitch().
|
inlineinherited |
Definition at line 152 of file view_item.h.
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 190 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 231 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(), EASYEDAPRO_PLUGIN::FootprintLoad(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), FOOTPRINT_EDIT_FRAME::ImportFootprint(), GPCB_FPL_CACHE::Load(), FP_CACHE::Load(), EASYEDAPRO_PLUGIN::LoadAllDataFromProject(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponentLibrary(), FABMASTER::loadFootprints(), LP_CACHE::LoadModules(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), ALTIUM_PCB::ParseComponents6Data(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), 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 234 of file footprint.h.
References m_fpid, and LIB_ID::Parse().
|
inherited |
Definition at line 275 of file board_item.cpp.
References BOARD_ITEM::GetParentFootprint(), RotatePoint(), and EDA_ITEM::SetPosition().
Referenced by PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), LEGACY_PLUGIN::loadMODULE_TEXT(), DIALOG_FOOTPRINT_PROPERTIES::OnAddField(), processTextItem(), FP_TEXT_GRID_TABLE::SetValue(), 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 881 of file footprint.h.
References m_initial_comments.
|
inlinevirtualinherited |
Definition at line 296 of file board_item.h.
References BOARD_ITEM::m_isKnockout.
Referenced by PCB_PARSER::parsePCB_TEXT_effects(), PCB_TEXT_DESC::PCB_TEXT_DESC(), and FP_TEXT_GRID_TABLE::SetValueAsBool().
|
inline |
Definition at line 389 of file footprint.h.
References FP_is_PLACED, and m_fpStatus.
Referenced by AR_AUTOPLACER::AutoplaceFootprints(), and LEGACY_PLUGIN::loadFOOTPRINT().
|
inlineinherited |
Definition at line 156 of file eda_item.h.
References EDA_ITEM::ClearFlags(), IS_SHOWN_AS_BITMAP, and EDA_ITEM::SetFlags().
|
inline |
Definition at line 240 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, PCB_GENERATOR, PCB_SHAPE, and ZONE.
Definition at line 259 of file board_item.h.
References BOARD_ITEM::m_layer.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCAD2KICAD::PCAD_LINE::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(), ALTIUM_PCB::ConvertArcs6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertTexts6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertTexts6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertTracks6ToBoardItemOnLayer(), PNS_KICAD_IFACE::createBoardItem(), PCB_BASE_FRAME::CreateNewFootprint(), BOARD_ADAPTER::createTrack(), EDIT_TOOL::DragArcTrack(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), DRAWING_TOOL::DrawDimension(), EDIT_TOOL::FilletTracks(), PCB_EASYEDAPRO_PARSER::fillFootprintModelInfo(), Flip(), PCB_DIMENSION_BASE::Flip(), PCB_TARGET::Flip(), PCB_TEXT::Flip(), PCB_TRACK::Flip(), PCB_ARC::Flip(), FOOTPRINT(), PNS_PCBNEW_RULE_RESOLVER::getBoardItem(), ALTIUM_PCB::HelperParseDimensions6Center(), ALTIUM_PCB::HelperParseDimensions6Linear(), ALTIUM_PCB::HelperParseDimensions6Radial(), FABMASTER::loadEtch(), LEGACY_PLUGIN::loadFOOTPRINT(), FABMASTER::loadFootprints(), FABMASTER::loadGraphics(), LEGACY_PLUGIN::loadMODULE_TEXT(), FABMASTER::loadOutline(), LEGACY_PLUGIN::loadPCB_TEXT(), EAGLE_PLUGIN::loadPlain(), EAGLE_PLUGIN::loadSignals(), LEGACY_PLUGIN::loadTrackList(), main(), DSN::SPECCTRA_DB::makeTRACK(), CADSTAR_PCB_ARCHIVE_LOADER::makeTracksFromShapes(), DIALOG_FOOTPRINT_PROPERTIES::OnAddField(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnAddField(), EAGLE_PLUGIN::packageText(), ALTIUM_PCB::ParseComponents6Data(), PCB_PARSER::parseFOOTPRINT_unchecked(), PCB_PARSER::parsePCB_TEXT_effects(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), PCB_MARKER::PCB_MARKER(), PCB_REFERENCE_IMAGE_DESC::PCB_REFERENCE_IMAGE_DESC(), PCB_TEXT::PCB_TEXT(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::processItem(), processTextItem(), PCB_CONTROL::pruneItemLayers(), PCB_SHAPE::SetLayer(), BOARD_ITEM::SetLayerSet(), FP_TEXT_GRID_TABLE::SetValueAsLong(), EDIT_TOOL::Swap(), GLOBAL_EDIT_TOOL::swapBoardItem(), TRACK_VIA_DESC::TRACK_VIA_DESC(), DIALOG_REFERENCE_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_TRACK_VIA_PROPERTIES::TransferDataFromWindow(), DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog(), BOARD_NETLIST_UPDATER::updateFootprintParameters(), 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 1928 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 238 of file board_item.h.
References LSET::Seq(), and BOARD_ITEM::SetLayer().
Referenced by PANEL_SETUP_LAYERS::TransferDataFromWindow().
|
inline |
Definition at line 237 of file footprint.h.
References m_libDescription.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), LEGACY_PLUGIN::loadFOOTPRINT(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
Definition at line 798 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 258 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 255 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 269 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 272 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 375 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 64 of file eda_item.cpp.
References IS_CHANGED, EDA_ITEM::m_parent, EDA_ITEM::SetFlags(), and EDA_ITEM::SetModified().
Referenced by PCB_EDIT_FRAME::OpenProjectFiles(), ALTIUM_PCB::Parse(), SCH_ALTIUM_PLUGIN::ParseFileHeader(), and EDA_ITEM::SetModified().
|
inline |
Definition at line 398 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 2069 of file footprint.cpp.
References GetPosition(), m_boundingBoxCacheTimeStamp, m_cachedHull, m_courtyard_cache_timestamp, m_drawings, m_fields, m_orient, m_pads, m_textExcludedBBoxCacheTimeStamp, m_visibleBBoxCacheTimeStamp, m_zones, EDA_ANGLE::Normalize180(), pad, and SHAPE_POLY_SET::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(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), BOARD_EDITOR_CONTROL::PlaceFootprint(), Rotate(), SetOrientationDegrees(), and EDIT_TOOL::Swap().
|
inline |
Definition at line 221 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::AddPrimitivePoly(), SYMBOL_EDITOR_CONTROL::AddSymbolToSchematic(), SCH_SCREEN::Append(), BOOST_AUTO_TEST_CASE(), 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(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), PCBNEW_JOBS_HANDLER::doFpExportSvg(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), SCH_DRAWING_TOOLS::DrawShape(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), PCB_EDIT_FRAME::ExchangeFootprint(), PAD_TOOL::explodePad(), LIB_SYMBOL::Flatten(), 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=(), SCH_SEXPR_PARSER::parseLibSymbol(), SCH_SEXPR_PARSER::ParseSchematic(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), PCB_CONTROL::Paste(), pasteFootprintItemsToFootprintEditor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), BACK_ANNOTATE::processNetNameChange(), PAD_TOOL::RecombinePad(), SCH_LIB_PLUGIN_CACHE::removeSymbol(), 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(), and DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow().
|
inlineinherited |
Definition at line 90 of file board_item.h.
References BOARD_ITEM::m_group.
Referenced by PCB_GROUP::AddItem(), PCB_GENERATOR::AddItem(), PCB_PLUGIN::FootprintSave(), GENDRILL_WRITER_BASE::genDrillMapFile(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_GROUP::RemoveItem(), BOARD_COMMIT::Revert(), SaveCopyOfZones(), CLIPBOARD_IO::SaveSelection(), BOARD_ITEM::SwapItemData(), and TEST_BOARD_ITEM_FIXTURE::~TEST_BOARD_ITEM_FIXTURE().
|
inline |
Definition at line 243 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 1997 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_fields, m_pads, m_pos, 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::RegenerateFootprint(), 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 126 of file footprint.h.
References m_privateLayers.
Referenced by DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inline |
aReference | A reference to a wxString object containing the reference designator text. |
Definition at line 562 of file footprint.h.
References 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(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), 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(), GERBVIEW_SELECTION_TOOL::selectVisually(), and SCH_COMMIT::Stage().
|
inline |
Definition at line 249 of file footprint.h.
References m_sheetfile.
Referenced by BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inline |
Definition at line 246 of file footprint.h.
References m_sheetname.
Referenced by BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 90 of file board_item.cpp.
|
inline |
aValue | A reference to a wxString object containing the value text. |
Definition at line 583 of file footprint.h.
References EDA_TEXT::SetText(), and Value().
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(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), FABMASTER::loadFootprints(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), COMPONENT::SetFootprint(), and BOARD_NETLIST_UPDATER::updateFootprintParameters().
|
inlineinherited |
Definition at line 117 of file board_item.h.
References BOARD_ITEM::GetY(), and EDA_ITEM::SetPosition().
Referenced by AutoPositionFields(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), and TRACK_VIA_DESC::TRACK_VIA_DESC().
|
inlineinherited |
Definition at line 123 of file board_item.h.
References BOARD_ITEM::GetX(), and EDA_ITEM::SetPosition().
Referenced by AutoPositionFields(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), and TRACK_VIA_DESC::TRACK_VIA_DESC().
|
inline |
Definition at line 274 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.
|
overridevirtual |
Return a measure of how likely the other object is to represent the same object.
The scale runs from 0.0 (definitely different objects) to 1.0 (same)
This is a pure virtual function. Derived classes must implement this.
Implements BOARD_ITEM.
Definition at line 3023 of file footprint.cpp.
References FindPadByNumber(), m_pads, pad, PCB_FOOTPRINT_T, and EDA_ITEM::Type().
|
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 428 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 1878 of file footprint.cpp.
Referenced by DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::checkFootprintName(), IsLibNameValid(), and SAVE_AS_DIALOG::SAVE_AS_DIALOG().
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE, PCB_TEXT, and PCB_TEXTBOX.
Definition at line 301 of file board_item.h.
|
overrideprotectedvirtual |
Reimplemented from BOARD_ITEM.
Definition at line 2956 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 174 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 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 3306 of file footprint.cpp.
References PCB_SHAPE::GetLayer(), GetPrivateLayers(), GraphicalItems(), PCB_TEXTBOX::IsBorderEnabled(), PCB_TEXTBOX::IsVisible(), m_fields, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, text, PCB_SHAPE::TransformShapeToPolygon(), PCB_TEXTBOX::TransformTextToPolySet(), and UNDEFINED_LAYER.
Referenced by EXPORTER_STEP::buildFootprint3DShapes(), CoverageRatio(), and TransformFPTextToPolySet().
|
inline |
This function is the same as TransformFPShapesToPolySet but only generates text.
Definition at line 505 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 3233 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 204 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(), PCB_POINT_EDITOR::addCorner(), PCB_GROUP::AddItem(), CONNECTION_SUBGRAPH::AddItem(), DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), 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_DIM_ALIGNED::ClassOf(), PCB_DIM_ORTHOGONAL::ClassOf(), PCB_DIM_RADIAL::ClassOf(), PCB_DIM_LEADER::ClassOf(), PCB_DIM_CENTER::ClassOf(), PCB_FIELD::ClassOf(), PCB_GENERATOR::ClassOf(), PCB_MARKER::ClassOf(), PCB_REFERENCE_IMAGE::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(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_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(), 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(), 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_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(), PCB_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(), EE_GRID_HELPER::GetItemGrid(), PCB_GRID_HELPER::GetItemGrid(), 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(), PCB_FIELD::GetName(), SCH_SCREEN::GetNeededJunctions(), CONNECTION_SUBGRAPH::GetNetclassForDriver(), CONNECTIVITY_DATA::GetNetItems(), GetNetNavigatorItemText(), 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(), PCBEXPR_TYPE_REF::GetValue(), TEARDROP_MANAGER::GetWidth(), PCB_SELECTION_TOOL::grabUnconnected(), EE_SELECTION_TOOL::GuessSelectionCandidates(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), hasDrilledHole(), hash_fp_item(), EE_SELECTION_TOOL::highlight(), 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(), isBlindBuriedViaFunc(), CONNECTIVITY_DATA::IsConnectedOnLayer(), isCopper(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), PCB_SELECTION_TOOL::isExpandableGraphicShape(), PNS_KICAD_IFACE_BASE::IsFlashedOnLayer(), CADSTAR_PCB_ARCHIVE_LOADER::isFootprint(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), isKeepoutZone(), isMaskAperture(), isMicroVia(), 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::LoadBoard(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), CADSTAR_SCH_ARCHIVE_LOADER::loadHierarchicalSheetPins(), CADSTAR_SCH_ARCHIVE_LOADER::loadNets(), EE_SELECTION_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(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), SCH_MOVE_TOOL::moveItem(), DIALOG_DRC::OnDRCItemSelected(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), PCB_EDIT_FRAME::OnEditItemRequest(), DIALOG_GENERATORS::OnItemSelected(), EDA_3D_CANVAS::OnMouseMove(), SCH_EDIT_FRAME::onNetNavigatorSelection(), DIALOG_GENERATORS::OnRebuildTypeClick(), PCB_POINT_EDITOR::OnSelectionChange(), DIALOG_TEXT_PROPERTIES::OnSetFocusText(), 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_REFERENCE_IMAGE::operator=(), SCH_BITMAP::operator=(), SCH_SYMBOL::operator=(), SCH_SHEET::operator=(), PCB_REFERENCE_IMAGE::operator==(), PCB_SHAPE::operator==(), PCB_TARGET::operator==(), PCB_TEXT::operator==(), PCB_TEXTBOX::operator==(), PCB_GROUP::operator==(), BOARD::operator==(), operator==(), PAD::operator==(), PCB_DIMENSION_BASE::operator==(), PCB_FIELD::operator==(), PCB_TRACK::operator==(), PCB_ARC::operator==(), PCB_VIA::operator==(), ZONE::operator==(), LIB_FIELD::operator==(), LIB_PIN::operator==(), LIB_ITEM::operator==(), LIB_SHAPE::operator==(), LIB_TEXT::operator==(), LIB_TEXTBOX::operator==(), SCH_BUS_ENTRY_BASE::operator==(), SCH_FIELD::operator==(), SCH_PIN::operator==(), SCH_TEXT::operator==(), SCH_BITMAP::operator==(), SCH_JUNCTION::operator==(), SCH_LINE::operator==(), SCH_NO_CONNECT::operator==(), SCH_SHAPE::operator==(), SCH_SHEET::operator==(), SCH_SHEET_PIN::operator==(), SCH_SYMBOL::operator==(), SCH_TEXTBOX::operator==(), PAD::PAD(), SCH_COMMIT::parentObject(), PCB_PARSER::parsePCB_SHAPE(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_SEXPR_PARSER::parseSchField(), PCB_CONTROL::Paste(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), BRDITEMS_PLOTTER::PlotBoardGraphicItem(), 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(), SCH_COMMIT::pushSchEdit(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_GRID_HELPER::queryVisible(), BOARD_REANNOTATE_TOOL::ReannotateDuplicates(), PCB_SELECTION_TOOL::RebuildSelection(), SCH_CONNECTION::recacheName(), SCH_EDIT_FRAME::RecalculateConnections(), SCH_BASE_FRAME::RefreshZoomDependentItems(), GENERATOR_TOOL::RegenerateSelected(), BOARD::Remove(), CN_CONNECTIVITY_ALGO::Remove(), Remove(), EE_RTREE::remove(), SCH_SCREEN::Remove(), PCB_POINT_EDITOR::removeCorner(), PCB_POINT_EDITOR::removeCornerCondition(), LIB_SYMBOL::RemoveDrawItem(), CONNECTION_SUBGRAPH::RemoveItem(), SCH_SHEET::RemovePin(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_FIELD::Replace(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), CONNECTION_GRAPH::resolveAllDrivers(), SCHEMATIC::ResolveCrossReference(), CONNECTION_SUBGRAPH::ResolveDrivers(), PCB_PARSER::resolveGroups(), SCH_LABEL_BASE::ResolveTextVar(), BOARD::ResolveTextVar(), DS_PROXY_UNDO_ITEM::Restore(), SCH_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(), 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(), 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(), PCB_BASE_FRAME::SetPlotSettings(), SCH_FIELD::SetPosition(), PCB_EDIT_FRAME::ShowBoardSetupDialog(), PCB_EDIT_FRAME::ShowFindDialog(), SCH_EDIT_FRAME::ShowFindReplaceDialog(), BOARD_INSPECTION_TOOL::ShowFootprintLinks(), PCB_REFERENCE_IMAGE::Similarity(), PCB_SHAPE::Similarity(), PCB_TARGET::Similarity(), PCB_TEXT::Similarity(), PCB_TEXTBOX::Similarity(), PCB_GROUP::Similarity(), Similarity(), PAD::Similarity(), PCB_DIMENSION_BASE::Similarity(), PCB_FIELD::Similarity(), PCB_TRACK::Similarity(), PCB_ARC::Similarity(), PCB_VIA::Similarity(), ZONE::Similarity(), LIB_FIELD::Similarity(), LIB_PIN::Similarity(), LIB_SHAPE::Similarity(), LIB_TEXT::Similarity(), LIB_TEXTBOX::Similarity(), SCH_BUS_ENTRY_BASE::Similarity(), SCH_FIELD::Similarity(), SCH_PIN::Similarity(), SCH_TEXT::Similarity(), SCH_BITMAP::Similarity(), SCH_JUNCTION::Similarity(), SCH_LINE::Similarity(), SCH_NO_CONNECT::Similarity(), SCH_SHAPE::Similarity(), SCH_SHEET::Similarity(), SCH_SHEET_PIN::Similarity(), SCH_SYMBOL::Similarity(), SCH_TEXTBOX::Similarity(), SCH_EDITOR_CONTROL::SimProbe(), SCH_COMMIT::Stage(), PNS::LINE_PLACER::Start(), SCH_EDIT_TOOL::Swap(), EDIT_TOOL::Swap(), PCB_GROUP::swapData(), swapData(), PCB_TUNING_PATTERN::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_REFERENCE_IMAGE::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_COPPER_CLEARANCE::testGraphicClearances(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), ERC_TESTER::TestMissingNetclasses(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), 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(), 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_TRACKS_AND_VIAS::visitItem(), and DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem().
|
inline |
read/write accessors:
Definition at line 592 of file footprint.h.
References GetField(), and VALUE_FIELD.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), AutoPositionFields(), ALTIUM_PCB::ConvertTexts6ToFootprintItemOnLayer(), MICROWAVE_TOOL::createBaseFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), PCB_BASE_FRAME::CreateNewFootprint(), PCB_EDIT_FRAME::ExchangeFootprint(), EASYEDA_PLUGIN::FootprintLoad(), EASYEDAPRO_PLUGIN::FootprintLoad(), PCB_PLUGIN::format(), GetBoundingBox(), GetMsgPanelInfo(), GetValue(), 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(), ResolveTextVar(), and SetValue().
|
inline |
The const versions to keep the compiler happy.
Definition at line 597 of file footprint.h.
References GetField(), and VALUE_FIELD.
|
overridevirtual |
Return the bounding box of the item covering all its layers.
Reimplemented from EDA_ITEM.
Definition at line 1852 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, TUNING_STATUS_VIEW_ITEM, 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, PCB_TUNING_PATTERN, KIGFX::ORIGIN_VIEWITEM, KIGFX::VIEW_GROUP, and KIGFX::VIEW_OVERLAY.
Definition at line 115 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 1759 of file footprint.cpp.
References B_Cu, B_SilkS, F_Cu, F_SilkS, IsConflicting(), IsLocked(), KI_FALLTHROUGH, LAYER_ANCHOR, LAYER_CONFLICTS_SHADOW, LAYER_FOOTPRINTS_BK, LAYER_FOOTPRINTS_FR, LAYER_LOCKED_ITEM_SHADOW, 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 1811 of file footprint.cpp.
References B_Cu, F_Cu, IsConflicting(), KIGFX::VIEW::IsLayerVisible(), LAYER_ANCHOR, LAYER_CONFLICTS_SHADOW, LAYER_FOOTPRINTS_BK, LAYER_FOOTPRINTS_FR, LAYER_LOCKED_ITEM_SHADOW, BOARD_ITEM::m_layer, and MINIMAL_ZOOM_LEVEL_FOR_VISIBILITY.
|
inlineinherited |
Definition at line 147 of file view_item.h.
Referenced by KIGFX::VIEW::Add(), KIGFX::VIEW::draw(), KIGFX::VIEW::HasItem(), KIGFX::VIEW::Hide(), KIGFX::VIEW::invalidateItem(), KIGFX::VIEW::IsHiddenOnOverlay(), 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 1593 of file footprint.cpp.
References GetClass(), m_drawings, m_fields, m_groups, m_pads, m_zones, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_FIELD_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 194 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 195 of file footprint.h.
References m_zones.
|
private |
Definition at line 1004 of file footprint.h.
Referenced by Add3DModel(), FOOTPRINT(), GetMsgPanelInfo(), Models(), and operator=().
|
private |
Definition at line 1000 of file footprint.h.
Referenced by FOOTPRINT(), GetFlag(), IncrementFlag(), and SetFlag().
|
private |
Definition at line 960 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 975 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingBox(), operator=(), Rotate(), and SetOrientation().
|
mutableprivate |
Definition at line 974 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingBox(), MoveAnchorPosition(), operator=(), and SetPosition().
|
mutableprivate |
Definition at line 980 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingHull(), MoveAnchorPosition(), operator=(), SetOrientation(), and SetPosition().
|
mutableprivate |
Definition at line 978 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingBox(), MoveAnchorPosition(), operator=(), and SetPosition().
|
mutableprivate |
Definition at line 976 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingBox(), MoveAnchorPosition(), operator=(), and SetPosition().
|
private |
Definition at line 1009 of file footprint.h.
Referenced by BuildCourtyardCaches(), Flip(), GetCourtyard(), and SetPosition().
|
private |
Definition at line 1008 of file footprint.h.
Referenced by BuildCourtyardCaches(), Flip(), GetCourtyard(), and SetPosition().
|
mutableprivate |
Definition at line 1010 of file footprint.h.
Referenced by BuildCourtyardCaches(), Flip(), GetCourtyard(), Rotate(), and SetOrientation().
|
private |
Definition at line 952 of file footprint.h.
Referenced by Add(), ApplyDefaultSettings(), CheckNetTies(), FixUuids(), Flip(), GetBoundingBox(), GetBoundingHull(), GetLayerBoundingBox(), GraphicalItems(), HitTest(), HitTestOnLayer(), IsOnLayer(), operator=(), operator==(), Remove(), Rotate(), RunOnChildren(), RunOnDescendants(), SetOrientation(), SetPosition(), ViewGetLayers(), Visit(), and ~FOOTPRINT().
|
private |
Definition at line 951 of file footprint.h.
Referenced by Add(), AddField(), ApplyDefaultSettings(), CheckNetTies(), Fields(), FixUuids(), Flip(), FOOTPRINT(), GetBoundingBox(), GetField(), GetFieldById(), GetFieldByName(), GetFieldCount(), GetFields(), GetFieldText(), HasFieldByName(), IsOnLayer(), MoveAnchorPosition(), operator=(), operator==(), Remove(), RemoveField(), Rotate(), RunOnChildren(), RunOnDescendants(), SetOrientation(), SetPosition(), TransformFPShapesToPolySet(), Visit(), and ~FOOTPRINT().
|
private |
Definition at line 962 of file footprint.h.
Referenced by FOOTPRINT(), GetFileFormatVersionAtLoad(), and SetFileFormatVersionAtLoad().
|
private |
Definition at line 998 of file footprint.h.
Referenced by GetFilters(), and SetFilters().
|
protectedinherited |
Definition at line 487 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::GetTempFlags(), 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=(), PCB_SHAPE::operator==(), LIB_SYMBOL::operator==(), SCH_LINE::Rotate(), EDA_ITEM::SetFlags(), PCB_SHAPE::Similarity(), LIB_SYMBOL::Similarity(), PCB_SHAPE::swapData(), PCB_REFERENCE_IMAGE::swapData(), SCH_ITEM::SwapFlags(), and EDA_ITEM::XorFlags().
|
privateinherited |
Additional transparency for diff'ing items.
Definition at line 166 of file view_item.h.
Referenced by KIGFX::VIEW::DRAW_ITEM_VISITOR::operator()().
|
protectedinherited |
Definition at line 486 of file eda_item.h.
Referenced by ZONE::InitDataFromSrcInCopyCtor(), EDA_ITEM::IsForceVisible(), EDA_ITEM::operator=(), PCB_SHAPE::operator==(), EDA_ITEM::SetForceVisible(), PCB_SHAPE::Similarity(), PCB_SHAPE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
private |
Definition at line 959 of file footprint.h.
Referenced by FOOTPRINT(), GetFPID(), GetFPIDAsString(), GetMsgPanelInfo(), operator=(), ResolveTextVar(), SetFPID(), and SetFPIDAsString().
|
private |
Definition at line 961 of file footprint.h.
Referenced by FOOTPRINT(), GetMsgPanelInfo(), IsLocked(), IsPlaced(), LegacyPadsLocked(), NeedsPlaced(), operator=(), SetIsPlaced(), SetLocked(), and SetNeedsPlaced().
|
protectedinherited |
Definition at line 392 of file board_item.h.
Referenced by BOARD_ITEM::GetParentGroup(), BOARD_ITEM::SetParentGroup(), and BOARD_ITEM::~BOARD_ITEM().
|
private |
Definition at line 955 of file footprint.h.
Referenced by Add(), FixUuids(), Groups(), operator=(), Remove(), RunOnChildren(), RunOnDescendants(), Visit(), and ~FOOTPRINT().
|
mutableprivate |
Definition at line 981 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingHull(), operator=(), and Rotate().
|
private |
Definition at line 1005 of file footprint.h.
Referenced by FOOTPRINT(), GetInitialComments(), operator=(), SetInitialComments(), and ~FOOTPRINT().
|
protectedinherited |
Definition at line 388 of file board_item.h.
Referenced by BOARD_ITEM::IsKnockout(), PCB_SHAPE::operator==(), BOARD_ITEM::SetIsKnockout(), PCB_SHAPE::Similarity(), PCB_SHAPE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
protectedinherited |
Definition at line 390 of file board_item.h.
Referenced by BOARD_ITEM::IsLocked(), PCB_SHAPE::operator==(), BOARD_ITEM::SetLocked(), PCB_SHAPE::Similarity(), PCB_SHAPE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
private |
Definition at line 994 of file footprint.h.
Referenced by FOOTPRINT(), GetKeywords(), GetMsgPanelInfo(), operator=(), and SetKeywords().
|
private |
Definition at line 999 of file footprint.h.
Referenced by FOOTPRINT(), and operator=().
|
protectedinherited |
Definition at line 387 of file board_item.h.
Referenced by PCB_VIA::ConditionallyFlashed(), PCB_VIA::FlashLayer(), FOOTPRINT(), PCB_VIA::GetDrillConstraint(), BOARD_ITEM::GetLayer(), PCB_SHAPE::GetLayer(), BOARD_ITEM::GetLayerName(), BOARD_ITEM::GetLayerSet(), PCB_VIA::GetLayerSet(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), PCB_REFERENCE_IMAGE::GetMsgPanelInfo(), PAD::GetPrincipalLayer(), PCB_TRACK::GetWidthConstraint(), PCB_VIA::GetWidthConstraint(), BOARD_ITEM::IsOnLayer(), PCB_VIA::IsOnLayer(), PCB_SHAPE::IsType(), PCB_VIA::LayerPair(), PCB_REFERENCE_IMAGE::operator==(), PCB_SHAPE::operator==(), PCB_TARGET::operator==(), PCB_TRACK::operator==(), PCB_ARC::operator==(), PCB_VIA::operator==(), PCB_DIMENSION_BASE::PCB_DIMENSION_BASE(), PCB_TARGET::PCB_TARGET(), PCB_TUNING_PATTERN::recoverBaseline(), PCB_VIA::SanitizeLayers(), PCB_MARKER::Serialize(), BOARD_ITEM::SetLayer(), PCB_GENERATOR::SetLayer(), PCB_VIA::SetLayerPair(), PCB_VIA::SetLayerSet(), PCB_VIA::SetTopLayer(), PCB_REFERENCE_IMAGE::Similarity(), PCB_TRACK::Similarity(), PCB_ARC::Similarity(), PCB_VIA::Similarity(), PCB_SHAPE::swapData(), PCB_REFERENCE_IMAGE::swapData(), PCB_VIA::TopLayer(), BOARD_ITEM::ViewGetLayers(), ViewGetLayers(), PCB_REFERENCE_IMAGE::ViewGetLayers(), ViewGetLOD(), PCB_REFERENCE_IMAGE::ViewGetLOD(), PCB_SHAPE::ViewGetLOD(), PCB_TEXT::ViewGetLOD(), PCB_TEXTBOX::ViewGetLOD(), and PCB_TRACK::ViewGetLOD().
|
private |
Definition at line 993 of file footprint.h.
Referenced by FOOTPRINT(), GetLibDescription(), GetMsgPanelInfo(), operator=(), and SetLibDescription().
|
private |
Definition at line 1001 of file footprint.h.
Referenced by FOOTPRINT(), GetLink(), operator=(), and SetLink().
|
private |
Definition at line 988 of file footprint.h.
Referenced by FOOTPRINT(), GetLocalClearance(), operator=(), and SetLocalClearance().
|
private |
Definition at line 989 of file footprint.h.
Referenced by FOOTPRINT(), GetLocalSolderMaskMargin(), operator=(), and SetLocalSolderMaskMargin().
|
private |
Definition at line 990 of file footprint.h.
Referenced by FOOTPRINT(), GetLocalSolderPasteMargin(), operator=(), and SetLocalSolderPasteMargin().
|
private |
Definition at line 991 of file footprint.h.
Referenced by FOOTPRINT(), GetLocalSolderPasteMarginRatio(), operator=(), and SetLocalSolderPasteMarginRatio().
|
private |
Definition at line 985 of file footprint.h.
Referenced by AddNetTiePadGroup(), ClearNetTiePadGroups(), FOOTPRINT(), GetNetTiePadGroups(), IsNetTie(), MapPadNumbersToNetTieGroups(), and operator=().
|
private |
Definition at line 957 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetOrientation(), GetOrientationDegrees(), operator=(), and SetOrientation().
|
private |
Definition at line 953 of file footprint.h.
Referenced by Add(), CheckNetTies(), ClearAllNets(), DuplicateItem(), FindPadByNumber(), FixUuids(), Flip(), GetBoundingBox(), GetBoundingHull(), GetLayerBoundingBox(), GetLikelyAttribute(), GetNetTiePads(), GetNextPadNumber(), GetPad(), GetPadCount(), GetUniquePadCount(), HitTest(), HitTestOnLayer(), IsOnLayer(), MapPadNumbersToNetTieGroups(), MoveAnchorPosition(), operator=(), operator==(), Pads(), Remove(), RunOnChildren(), RunOnDescendants(), SetOrientation(), SetPosition(), Similarity(), TransformPadsToPolySet(), ViewGetLayers(), Visit(), and ~FOOTPRINT().
|
protectedinherited |
Linked list: Link (parent struct)
Definition at line 485 of file eda_item.h.
Referenced by LIB_TEXT::Clone(), LIB_FIELD::Copy(), SCH_FIELD::DoHypertextAction(), SCH_FIELD::GetBoundingBox(), SCH_FIELD::GetCanonicalName(), PCB_FIELD::GetCanonicalName(), SCH_FIELD::GetDrawRotation(), SCH_FIELD::GetMenuImage(), PAD::GetMsgPanelInfo(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), SCH_FIELD::GetName(), PCB_FIELD::GetName(), LIB_ITEM::GetParent(), SCH_SHEET_PIN::GetParent(), BOARD_ITEM::GetParent(), EDA_ITEM::GetParent(), BOARD_ITEM::GetParentAsString(), SCH_FIELD::GetParentPosition(), SCH_FIELD::GetPosition(), SCH_FIELD::GetShownText(), LIB_FIELD::HitTest(), SCH_FIELD::IsReplaceable(), SCH_PIN::IsStacked(), SCH_FIELD::Matches(), EDA_ITEM::operator=(), LIB_FIELD::operator=(), PAD::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(), PAD::Similarity(), LIB_FIELD::Similarity(), PCB_SHAPE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
private |
Definition at line 995 of file footprint.h.
Referenced by FOOTPRINT(), GetPath(), operator=(), and SetPath().
|
private |
Definition at line 958 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingBox(), GetPosition(), Move(), operator=(), Rotate(), and SetPosition().
|
private |
Definition at line 1002 of file footprint.h.
Referenced by FOOTPRINT(), GetBoundingBox(), GetBoundingHull(), GetLayerBoundingBox(), GetPrivateLayers(), operator=(), and SetPrivateLayers().
|
private |
Definition at line 997 of file footprint.h.
Referenced by GetSheetfile(), and SetSheetfile().
|
private |
Definition at line 996 of file footprint.h.
Referenced by GetSheetname(), and SetSheetname().
|
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 494 of file eda_item.h.
Referenced by EDA_ITEM::IsType(), EDA_ITEM::operator=(), and EDA_ITEM::Type().
|
mutableprivate |
Definition at line 979 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingBox(), operator=(), Rotate(), and SetOrientation().
|
inherited |
Definition at line 482 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_ITEM::Duplicate(), LIB_SYMBOL::Duplicate(), BOARD_ITEM::Duplicate(), Duplicate(), SCH_ITEM::Duplicate(), DuplicateItem(), PCB_EDIT_FRAME::ExchangeFootprint(), PAD_TOOL::explodePad(), NETLIST_EXPORTER_ALLEGRO::extractComponentsInfo(), SCH_SHEET_LIST::FillItemMap(), BOARD::FillItemMap(), KIGIT_PCB_MERGE::findSetDifferences(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), SCH_EDIT_FRAME::FocusOnItem(), PCB_PLUGIN::format(), SCH_SEXPR_PLUGIN::Format(), SCH_PIN::GetDefaultNetName(), SCH_SHEET_PATH::GetItem(), BOARD::GetItem(), RC_ITEM::GetJsonViolation(), PAD::GetMsgPanelInfo(), DIALOG_BOARD_REANNOTATE::GetNewRefDes(), SCH_SHEET::getPageNumber(), BOARD_ITEM::GetParentAsString(), SCH_MARKER::GetUUID(), PCB_MARKER::GetUUID(), FIELDS_EDITOR_GRID_DATA_MODEL::GetValue(), ZONE::HigherPriority(), SCH_SHEET_PATH::IsContainedWithin(), LEGACY_PLUGIN::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), PCB_EDIT_FRAME::LoadFootprints(), SCH_LEGACY_PLUGIN::loadHierarchy(), LEGACY_PLUGIN::loadPCB_TARGET(), LEGACY_PLUGIN::loadPCB_TEXT(), SCH_ALTIUM_PLUGIN::LoadSchematicFile(), SCH_EAGLE_PLUGIN::LoadSchematicFile(), SCH_EDIT_FRAME::LoadSheetFromFile(), SYMBOL_EDIT_FRAME::LoadSymbolFromSchematic(), LEGACY_PLUGIN::loadTrackList(), PNS::LOGGER::Log(), NETLIST_EXPORTER_XML::makeSymbols(), SCH_EDIT_FRAME::mapExistingAnnotation(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), BOARD_ITEM::ptr_cmp::operator()(), BOARD::cmp_items::operator()(), BOARD::cmp_drawings::operator()(), PCB_SHAPE::cmp_drawings::operator()(), FOOTPRINT::cmp_drawings::operator()(), CompareByUuid::operator()(), FOOTPRINT::cmp_pads::operator()(), PCB_TRACK::cmp_tracks::operator()(), FOOTPRINT::cmp_zones::operator()(), SCH_ITEM::operator<(), SCH_SYMBOL::operator<(), PAD::operator==(), LIB_FIELD::operator==(), PAD::PAD(), PCB_PARSER::parsePCB_TEXT_effects(), SCH_SEXPR_PARSER::ParseSchematic(), SCH_EDITOR_CONTROL::Paste(), SCH_SHEET_PATH::PathAsString(), PCB_VIA::PCB_VIA(), BOARD_COMMIT::Push(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), SCH_SYMBOL::RemoveInstance(), FIELDS_EDITOR_GRID_DATA_MODEL::RemoveSymbol(), FIELDS_EDITOR_GRID_DATA_MODEL::RenameColumn(), SCH_SCREENS::ReplaceDuplicateTimeStamps(), 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(), SCH_EDITOR_CONTROL::setPastedSheetInstances(), SCH_EDITOR_CONTROL::setPastedSymbolInstances(), FIELDS_EDITOR_GRID_DATA_MODEL::SetValue(), PAD::Similarity(), PCB_DIMENSION_BASE::Similarity(), PCB_FIELD::Similarity(), LIB_FIELD::Similarity(), LIB_PIN::Similarity(), LIB_SHAPE::Similarity(), LIB_TEXT::Similarity(), LIB_TEXTBOX::Similarity(), LIB_SYMBOL::Similarity(), SCH_BUS_ENTRY_BASE::Similarity(), SCH_FIELD::Similarity(), SCH_LABEL_BASE::Similarity(), SCH_PIN::Similarity(), SCH_BITMAP::Similarity(), SCH_JUNCTION::Similarity(), SCH_LINE::Similarity(), SCH_NO_CONNECT::Similarity(), SCH_DRAWING_TOOLS::SingleClickPlace(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), testGroupEqual(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), FIELDS_EDITOR_GRID_DATA_MODEL::updateDataStoreSymbolField(), SCH_EDITOR_CONTROL::updatePastedSheet(), SCH_EDITOR_CONTROL::updatePastedSymbol(), SCH_SHEET_LIST::UpdateSymbolInstanceData(), and NETLIST_EXPORTER_ORCADPCB2::WriteNetlist().
|
privateinherited |
Definition at line 165 of file view_item.h.
Referenced by KIGFX::VIEW::Add(), KIGFX::VIEW::OnDestroy(), KIGFX::VIEW::Remove(), and KIGFX::VIEW_ITEM::~VIEW_ITEM().
|
mutableprivate |
Definition at line 977 of file footprint.h.
Referenced by Flip(), FOOTPRINT(), GetBoundingBox(), operator=(), Rotate(), and SetOrientation().
|
private |
Definition at line 987 of file footprint.h.
Referenced by FOOTPRINT(), GetZoneConnection(), operator=(), and SetZoneConnection().
|
private |
Definition at line 954 of file footprint.h.
Referenced by Add(), CheckNetTies(), DuplicateItem(), FixUuids(), Flip(), GetBoundingBox(), GetBoundingHull(), GetLayerBoundingBox(), HitTest(), HitTestOnLayer(), IsOnLayer(), operator=(), operator==(), Remove(), RunOnChildren(), RunOnDescendants(), 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 169 of file board_item.h.
Referenced by BOARD::GetPosition().