KiCad PCB EDA Suite
|
Information pertinent to a Pcbnew printed circuit board. More...
#include <board.h>
Classes | |
struct | cmp_drawings |
struct | cmp_items |
struct | GroupLegalOpsField |
Public Member Functions | |
void | SetBoardUse (BOARD_USE aUse) |
Set what the board is going to be used for. More... | |
BOARD_USE | GetBoardUse () const |
Get what the board use is. More... | |
void | IncrementTimeStamp () |
int | GetTimeStamp () const |
bool | IsFootprintHolder () const |
Find out if the board is being used to hold a single footprint for editing/viewing. More... | |
void | SetFileName (const wxString &aFileName) |
const wxString & | GetFileName () const |
TRACKS & | Tracks () |
const TRACKS & | Tracks () const |
FOOTPRINTS & | Footprints () |
const FOOTPRINTS & | Footprints () const |
DRAWINGS & | Drawings () |
const DRAWINGS & | Drawings () const |
ZONES & | Zones () |
const ZONES & | Zones () const |
GENERATORS & | Generators () |
const GENERATORS & | Generators () const |
MARKERS & | Markers () |
const MARKERS & | Markers () const |
const BOARD_ITEM_SET | GetItemSet () |
GROUPS & | Groups () |
The groups must maintain the following invariants. More... | |
const GROUPS & | Groups () const |
const std::vector< BOARD_CONNECTED_ITEM * > | AllConnectedItems () |
const std::map< wxString, wxString > & | GetProperties () const |
void | SetProperties (const std::map< wxString, wxString > &aProps) |
void | GetContextualTextVars (wxArrayString *aVars) const |
bool | ResolveTextVar (wxString *token, int aDepth) const |
BOARD () | |
~BOARD () | |
VECTOR2I | GetPosition () const override |
void | SetPosition (const VECTOR2I &aPos) override |
const VECTOR2I | GetFocusPosition () const override |
Similar to GetPosition, but allows items to return their visual center rather than their anchor. More... | |
bool | IsEmpty () const |
void | Move (const VECTOR2I &aMoveVector) override |
Move this object. More... | |
void | SetFileFormatVersionAtLoad (int aVersion) |
int | GetFileFormatVersionAtLoad () const |
void | SetGenerator (const wxString &aGenerator) |
const wxString & | GetGenerator () const |
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 *aBoardItem, REMOVE_MODE aMode=REMOVE_MODE::NORMAL) override |
Removes an item from the container. More... | |
void | FinalizeBulkAdd (std::vector< BOARD_ITEM * > &aNewItems) |
Must be used if Add() is used using a BULK_x ADD_MODE to generate a change event for listeners. More... | |
void | FinalizeBulkRemove (std::vector< BOARD_ITEM * > &aRemovedItems) |
Must be used if Remove() is used using a BULK_x REMOVE_MODE to generate a change event for listeners. More... | |
void | CacheTriangulation (PROGRESS_REPORTER *aReporter=nullptr, const std::vector< ZONE * > &aZones={}) |
FOOTPRINT * | GetFirstFootprint () const |
Get the first footprint on the board or nullptr. More... | |
void | DeleteAllFootprints () |
Remove all footprints from the deque and free the memory associated with them. More... | |
BOARD_ITEM * | GetItem (const KIID &aID) const |
void | FillItemMap (std::map< KIID, EDA_ITEM * > &aMap) |
wxString | ConvertCrossReferencesToKIIDs (const wxString &aSource) const |
Convert cross-references back and forth between ${refDes:field} and ${kiid:field}. More... | |
wxString | ConvertKIIDsToCrossReferences (const wxString &aSource) const |
std::shared_ptr< CONNECTIVITY_DATA > | GetConnectivity () const |
Return a list of missing connections between components/tracks. More... | |
bool | BuildConnectivity (PROGRESS_REPORTER *aReporter=nullptr) |
Build or rebuild the board connectivity database for the board, especially the list of connected items, list of nets and rastnest data Needed after loading a board to have the connectivity database updated. More... | |
void | DeleteMARKERs () |
Delete all MARKERS from the board. More... | |
void | DeleteMARKERs (bool aWarningsAndErrors, bool aExclusions) |
PROJECT * | GetProject () const |
void | SetProject (PROJECT *aProject, bool aReferenceOnly=false) |
Link a board to a given project. More... | |
void | ClearProject () |
std::vector< PCB_MARKER * > | ResolveDRCExclusions (bool aCreateMarkers) |
Rebuild DRC markers from the serialized data in BOARD_DESIGN_SETTINGS. More... | |
void | UpdateRatsnestExclusions () |
Update the visibility flags on the current unconnected ratsnest lines. More... | |
void | ResetNetHighLight () |
Reset all high light data to the init state. More... | |
const std::set< int > & | GetHighLightNetCodes () const |
void | SetHighLightNet (int aNetCode, bool aMulti=false) |
Select the netcode to be highlighted. More... | |
bool | IsHighLightNetON () const |
void | HighLightON (bool aValue=true) |
Enable or disable net highlighting. More... | |
void | HighLightOFF () |
Disable net highlight. More... | |
int | GetCopperLayerCount () const |
void | SetCopperLayerCount (int aCount) |
int | LayerDepth (PCB_LAYER_ID aStartLayer, PCB_LAYER_ID aEndLayer) const |
LSET | GetEnabledLayers () const |
A proxy function that calls the corresponding function in m_BoardSettings. More... | |
void | SetEnabledLayers (LSET aLayerMask) |
A proxy function that calls the correspondent function in m_BoardSettings. More... | |
bool | IsLayerEnabled (PCB_LAYER_ID aLayer) const |
A proxy function that calls the correspondent function in m_BoardSettings tests whether a given layer is enabled. More... | |
bool | IsLayerVisible (PCB_LAYER_ID aLayer) const |
A proxy function that calls the correspondent function in m_BoardSettings tests whether a given layer is visible. More... | |
LSET | GetVisibleLayers () const |
A proxy function that calls the correspondent function in m_BoardSettings. More... | |
void | SetVisibleLayers (LSET aLayerMask) |
A proxy function that calls the correspondent function in m_BoardSettings changes the bit-mask of visible layers. More... | |
GAL_SET | GetVisibleElements () const |
Return a set of all the element categories that are visible. More... | |
void | SetVisibleElements (const GAL_SET &aMask) |
A proxy function that calls the correspondent function in m_BoardSettings. More... | |
void | SetVisibleAlls () |
Change the bit-mask of visible element categories and layers. More... | |
bool | IsElementVisible (GAL_LAYER_ID aLayer) const |
Test whether a given element category is visible. More... | |
void | SetElementVisibility (GAL_LAYER_ID aLayer, bool aNewState) |
Change the visibility of an element category. More... | |
bool | IsFootprintLayerVisible (PCB_LAYER_ID aLayer) const |
Expect either of the two layers on which a footprint can reside, and returns whether that layer is visible. More... | |
BOARD_DESIGN_SETTINGS & | GetDesignSettings () const |
const ZONE_SETTINGS & | GetZoneSettings () const override |
Fetch the zone settings for this container. More... | |
void | SetZoneSettings (const ZONE_SETTINGS &aSettings) override |
Set the zone settings for this container. More... | |
bool | GetTentVias () const |
void | SetTentVias (bool aFlag) |
const PAGE_INFO & | GetPageSettings () const |
void | SetPageSettings (const PAGE_INFO &aPageSettings) |
const PCB_PLOT_PARAMS & | GetPlotOptions () const |
void | SetPlotOptions (const PCB_PLOT_PARAMS &aOptions) |
TITLE_BLOCK & | GetTitleBlock () |
const TITLE_BLOCK & | GetTitleBlock () const |
void | SetTitleBlock (const TITLE_BLOCK &aTitleBlock) |
wxString | GetItemDescription (UNITS_PROVIDER *aUnitsProvider) const override |
Return a user-visible description string of this item. More... | |
EDA_UNITS | GetUserUnits () |
void | SetUserUnits (EDA_UNITS aUnits) |
void | UpdateUserUnits (BOARD_ITEM *aItem, KIGFX::VIEW *aView) |
Update any references within aItem (or its descendants) to the user units. More... | |
bool | GetBoardPolygonOutlines (SHAPE_POLY_SET &aOutlines, OUTLINE_ERROR_HANDLER *aErrorHandler=nullptr, bool aAllowUseArcsInPolygons=false) |
Extract the board outlines and build a closed polygon from lines, arcs and circle items on edge cut layer. More... | |
int | GetOutlinesChainingEpsilon () |
void | SetOutlinesChainingEpsilon (int aValue) |
void | ConvertBrdLayerToPolygonalContours (PCB_LAYER_ID aLayer, SHAPE_POLY_SET &aOutlines) const |
Build a set of polygons which are the outlines of copper items (pads, tracks, vias, texts, zones). More... | |
PCB_LAYER_ID | GetLayerID (const wxString &aLayerName) const |
Return the ID of a layer. More... | |
const wxString | GetLayerName (PCB_LAYER_ID aLayer) const |
Return the name of a aLayer. More... | |
bool | SetLayerName (PCB_LAYER_ID aLayer, const wxString &aLayerName) |
Changes the name of the layer given by aLayer. More... | |
bool | SetLayerDescr (PCB_LAYER_ID aIndex, const LAYER &aLayer) |
Return the type of the copper layer given by aLayer. More... | |
LAYER_T | GetLayerType (PCB_LAYER_ID aLayer) const |
Return the type of the copper layer given by aLayer. More... | |
bool | SetLayerType (PCB_LAYER_ID aLayer, LAYER_T aLayerType) |
Change the type of the layer given by aLayer. More... | |
unsigned | GetNodesCount (int aNet=-1) const |
const std::vector< PAD * > | GetPads () const |
Return a reference to a list of all the pads. More... | |
void | BuildListOfNets () |
NETINFO_ITEM * | FindNet (int aNetcode) const |
Search for a net with the given netcode. More... | |
NETINFO_ITEM * | FindNet (const wxString &aNetname) const |
Search for a net with the given name. More... | |
int | MatchDpSuffix (const wxString &aNetName, wxString &aComplementNet) |
Fetch the coupled netname for a given net. More... | |
NETINFO_ITEM * | DpCoupledNet (const NETINFO_ITEM *aNet) |
const NETINFO_LIST & | GetNetInfo () const |
void | RemoveUnusedNets (BOARD_COMMIT *aCommit) |
NETINFO_LIST::iterator | BeginNets () const |
NETINFO_LIST::iterator | EndNets () const |
unsigned | GetNetCount () const |
BOX2I | ComputeBoundingBox (bool aBoardEdgesOnly=false) const |
Calculate the bounding box containing all board items (or board edge segments). More... | |
const BOX2I | GetBoundingBox () const override |
Return the orthogonal bounding box of this object for display purposes. More... | |
const BOX2I | GetBoardEdgesBoundingBox () const |
Return the board bounding box calculated using exclusively the board edges (graphics on Edge.Cuts layer). 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... | |
INSPECT_RESULT | Visit (INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &scanTypes) override |
May be re-implemented for each derived class in order to handle all the types given by its member data. More... | |
FOOTPRINT * | FindFootprintByReference (const wxString &aReference) const |
Search for a FOOTPRINT within this board with the given reference designator. More... | |
FOOTPRINT * | FindFootprintByPath (const KIID_PATH &aPath) const |
Search for a FOOTPRINT within this board with the given path. More... | |
std::set< wxString > | GetNetClassAssignmentCandidates () const |
Return the set of netname candidates for netclass assignment. More... | |
void | SynchronizeNetsAndNetClasses (bool aResetTrackAndViaSizes) |
Copy NETCLASS info to each NET, based on NET membership in a NETCLASS. More... | |
void | SynchronizeProperties () |
Copy the current project's text variables into the boards property cache. More... | |
double | Similarity (const BOARD_ITEM &aOther) const override |
Return the Similarity. More... | |
bool | operator== (const BOARD_ITEM &aOther) const override |
wxString | GetClass () const override |
Return the class name. More... | |
int | SetAreasNetCodesFromNetNames () |
Set the .m_NetCode member of all copper areas, according to the area Net Name The SetNetCodesFromNetNames is an equivalent to net name, for fast comparisons. More... | |
ZONE * | GetArea (int index) const |
Return the Zone at a given index. More... | |
std::list< ZONE * > | GetZoneList (bool aIncludeZonesInFootprints=false) const |
int | GetAreaCount () const |
ZONE * | AddArea (PICKED_ITEMS_LIST *aNewZonesList, int aNetcode, PCB_LAYER_ID aLayer, VECTOR2I aStartPointPosition, ZONE_BORDER_DISPLAY_STYLE aHatch) |
Add an empty copper area to board areas list. More... | |
bool | TestZoneIntersection (ZONE *aZone1, ZONE *aZone2) |
Test for intersection of 2 copper areas. More... | |
PAD * | GetPad (const VECTOR2I &aPosition, LSET aLayerMask) const |
Find a pad aPosition on aLayer. More... | |
PAD * | GetPad (const VECTOR2I &aPosition) const |
PAD * | GetPad (const PCB_TRACK *aTrace, ENDPOINT_T aEndPoint) const |
Find a pad connected to aEndPoint of aTrace. More... | |
PAD * | GetPadFast (const VECTOR2I &aPosition, LSET aLayerMask) const |
Return pad found at aPosition on aLayerMask using the fast search method. More... | |
PAD * | GetPad (std::vector< PAD * > &aPadList, const VECTOR2I &aPosition, LSET aLayerMask) const |
Locate the pad connected at aPosition on aLayer starting at list position aPad. More... | |
void | GetSortedPadListByXthenYCoord (std::vector< PAD * > &aVector, int aNetCode=-1) const |
First empties then fills the vector with all pads and sorts them by increasing x coordinate, and for increasing y coordinate for same values of x coordinates. More... | |
std::tuple< int, double, double > | GetTrackLength (const PCB_TRACK &aTrack) const |
Return data on the length and number of track segments connected to a given track. More... | |
TRACKS | TracksInNet (int aNetCode) |
Collect all the TRACKs and VIAs that are members of a net given by aNetCode. More... | |
FOOTPRINT * | GetFootprint (const VECTOR2I &aPosition, PCB_LAYER_ID aActiveLayer, bool aVisibleOnly, bool aIgnoreLocked=false) const |
Get a footprint by its bounding rectangle at aPosition on aLayer. More... | |
int | GetMaxClearanceValue () const |
Returns the maximum clearance value for any object on the board. More... | |
void | MapNets (const BOARD *aDestBoard) |
Map all nets in the given board to nets with the same name (if any) in the destination board. More... | |
void | SanitizeNetcodes () |
void | AddListener (BOARD_LISTENER *aListener) |
Add a listener to the board to receive calls whenever something on the board has been modified. More... | |
void | RemoveListener (BOARD_LISTENER *aListener) |
Remove the specified listener. More... | |
void | RemoveAllListeners () |
Remove all listeners. More... | |
void | OnItemChanged (BOARD_ITEM *aItem) |
Notify the board and its listeners that an item on the board has been modified in some way. More... | |
void | OnItemsChanged (std::vector< BOARD_ITEM * > &aItems) |
Notify the board and its listeners that an item on the board has been modified in some way. More... | |
void | OnRatsnestChanged () |
Notify the board and its listeners that the ratsnest has been recomputed. More... | |
wxString | GroupsSanityCheck (bool repair=false) |
Consistency check of internal m_groups structure. More... | |
wxString | GroupsSanityCheckInternal (bool repair) |
GroupLegalOpsField | GroupLegalOps (const PCB_SELECTION &selection) const |
Check which selection tool group operations are legal given the selection. More... | |
bool | LegacyTeardrops () const |
void | SetLegacyTeardrops (bool aFlag) |
virtual void | Delete (BOARD_ITEM *aItem) |
Removes an item from the container and deletes it. More... | |
void | SetParentGroup (PCB_GROUP *aGroup) |
PCB_GROUP * | GetParentGroup () const |
int | GetX () const |
int | GetY () const |
virtual VECTOR2I | GetCenter () const |
This defaults to the center of the bounding box if not overridden. More... | |
void | SetX (int aX) |
void | SetY (int aY) |
virtual bool | IsConnected () const |
Returns information if the object is derived from BOARD_CONNECTED_ITEM. More... | |
virtual bool | IsOnCopperLayer () const |
virtual bool | HasHole () const |
virtual bool | IsTented () const |
virtual std::shared_ptr< SHAPE > | GetEffectiveShape (PCB_LAYER_ID aLayer=UNDEFINED_LAYER, FLASHING aFlash=FLASHING::DEFAULT) const |
Some pad shapes can be complex (rounded/chamfered rectangle), even without considering custom shapes. More... | |
virtual std::shared_ptr< SHAPE_SEGMENT > | GetEffectiveHoleShape () const |
virtual void | RunOnChildren (const std::function< void(BOARD_ITEM *)> &aFunction) const |
Invoke a function on all children. More... | |
virtual void | RunOnDescendants (const std::function< void(BOARD_ITEM *)> &aFunction) const |
Invoke a function on all descendants. More... | |
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 PCB_LAYER_ID | GetLayer () const |
Return the primary layer this item is on. More... | |
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... | |
virtual BOARD_ITEM * | Duplicate () const |
Create a copy of this BOARD_ITEM. More... | |
void | SwapItemData (BOARD_ITEM *aImage) |
Swap data between aItem and aImage. More... | |
virtual bool | IsOnLayer (PCB_LAYER_ID aLayer) const |
Test to see if this object is on the given layer. More... | |
virtual bool | IsKnockout () const |
virtual void | SetIsKnockout (bool aKnockout) |
virtual bool | IsLocked () const |
virtual void | SetLocked (bool aLocked) |
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 | Rotate (const VECTOR2I &aRotCentre, const EDA_ANGLE &aAngle) |
Rotate this object. More... | |
virtual void | Flip (const VECTOR2I &aCentre, bool aFlipLeftRight) |
Flip this object, i.e. 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 | ViewGetLayers (int aLayers[], int &aCount) const override |
Return the all the layers within the VIEW the object is painted on. 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 bool | HitTest (const VECTOR2I &aPosition, int aAccuracy=0) const |
Test if aPosition is inside or on the boundary of this item. More... | |
virtual bool | HitTest (const BOX2I &aRect, bool aContained, int aAccuracy=0) const |
Test if aRect intersects this item. More... | |
virtual VECTOR2I | GetSortPosition () const |
Return the coordinates that should be used for sorting this element visually compared to other elements. More... | |
virtual EDA_ITEM * | Clone () const |
Create a duplicate of this item with linked list members set to NULL. More... | |
wxString | GetTypeDesc () const |
Return a translated description of the type for this EDA_ITEM for display in user facing messages. More... | |
virtual BITMAPS | GetMenuImage () const |
Return a pointer to an image to be used in menus. 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 const BOX2I | ViewBBox () const override |
Return the bounding box of the item covering all its layers. More... | |
virtual void | ViewDraw (int aLayer, VIEW *aView) const |
Draw the parts of the object belonging to layer aLayer. More... | |
virtual double | ViewGetLOD (int aLayer, VIEW *aView) const |
Return the level of detail (LOD) of the item. 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 wxString | GetStandardLayerName (PCB_LAYER_ID aLayerId) |
Return an "English Standard" name of a PCB layer when given aLayerNumber. More... | |
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... | |
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 wxString | layerMaskDescribe () const |
Return a string (to be shown to the user) describing a layer mask. More... | |
virtual void | swapData (BOARD_ITEM *aImage) |
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 |
Private Member Functions | |
BOARD (const BOARD &aOther)=delete | |
BOARD & | operator= (const BOARD &aOther)=delete |
template<typename Func , typename... Args> | |
void | InvokeListeners (Func &&aFunc, Args &&... args) |
Private Attributes | |
int | m_outlinesChainingEpsilon |
the max distance between 2 end point to see them connected when building the board outlines More... | |
BOARD_USE | m_boardUse |
What is this board being used for. More... | |
int | m_timeStamp |
wxString | m_fileName |
MARKERS | m_markers |
DRAWINGS | m_drawings |
FOOTPRINTS | m_footprints |
TRACKS | m_tracks |
GROUPS | m_groups |
ZONES | m_zones |
GENERATORS | m_generators |
LAYER | m_layers [PCB_LAYER_ID_COUNT] |
HIGH_LIGHT_INFO | m_highLight |
HIGH_LIGHT_INFO | m_highLightPrevious |
int | m_fileFormatVersionAtLoad |
wxString | m_generator |
std::map< wxString, wxString > | m_properties |
std::shared_ptr< CONNECTIVITY_DATA > | m_connectivity |
PAGE_INFO | m_paper |
TITLE_BLOCK | m_titles |
PCB_PLOT_PARAMS | m_plotOptions |
PROJECT * | m_project |
EDA_UNITS | m_userUnits |
std::unique_ptr< BOARD_DESIGN_SETTINGS > | m_designSettings |
All of the board design settings are stored as a JSON object inside the project file. More... | |
bool | m_legacyTeardrops = false |
Teardrops in 7.0 were applied as a post-processing step (rather than from pad and via properties). More... | |
NETINFO_LIST | m_NetInfo |
std::vector< BOARD_LISTENER * > | m_listeners |
ZONE_SETTINGS | m_zoneSettings |
KICAD_T | m_structType |
Run time identification, keep private so it can never be changed after a ctor sets it. More... | |
VIEW_ITEM_DATA * | m_viewPrivData |
double | m_forcedTransparency |
Additional transparency for diff'ing items. More... | |
Friends | |
class | PCB_EDIT_FRAME |
BOARD::BOARD | ( | ) |
Definition at line 70 of file board.cpp.
References _, SHAPE_POLY_SET::Append(), B_Mask, NETCLASS::Default, DEFAULT_CHAINING_EPSILON_MM, F_Mask, GAL_LAYER_ID_BITMASK_END, GAL_LAYER_INDEX, GetDesignSettings(), GetStandardLayerName(), IsCopperLayer(), LT_SIGNAL, LT_UNDEFINED, m_connectivity, m_fileFormatVersionAtLoad, m_layers, m_LegacyVisibleItems, m_LegacyVisibleLayers, LAYER::m_name, BOARD_DESIGN_SETTINGS::m_NetSettings, m_outlinesChainingEpsilon, m_SolderMaskBridges, LAYER::m_type, EDA_IU_SCALE::mmToIU(), SHAPE_POLY_SET::NewOutline(), ZONE::Outline(), PCB_LAYER_ID_COUNT, pcbIUScale, Rescue, GAL_SET::set(), ZONE::SetHatchStyle(), ZONE::SetLayerSet(), ZONE::SetMinThickness(), ToLAYER_ID(), and BOARD_DESIGN_SETTINGS::UseCustomTrackViaSize().
BOARD::~BOARD | ( | ) |
Definition at line 130 of file board.cpp.
References DeleteMARKERs(), group, m_drawings, m_footprints, m_generators, m_groups, m_SolderMaskBridges, m_tracks, and m_zones.
|
privatedelete |
|
overridevirtual |
Removes an item from the container.
Implements BOARD_ITEM_CONTAINER.
Definition at line 855 of file board.cpp.
References NETINFO_LIST::AppendNet(), EDA_ITEM::ClearEditFlags(), BOARD_ITEM::GetLayer(), InvokeListeners(), IsCopperLayer(), m_connectivity, m_drawings, m_footprints, m_generators, m_groups, m_markers, m_NetInfo, m_tracks, m_zones, BOARD_LISTENER::OnBoardItemAdded(), PCB_ARC_T, 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_GENERATOR_T, PCB_GROUP_T, PCB_MARKER_T, PCB_NETINFO_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TARGET_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, EDA_ITEM::SetParent(), and EDA_ITEM::Type().
Referenced by NET_SELECTOR_COMBOPOPUP::Accept(), PCB_BASE_FRAME::AddFootprintToBoard(), TEARDROP_MANAGER::AddTeardropsOnTracks(), PCAD2KICAD::PCAD_ARC::AddToBoard(), PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCAD2KICAD::PCAD_LINE::AddToBoard(), PCAD2KICAD::PCAD_PAD::AddToBoard(), PCAD2KICAD::PCAD_PCB::AddToBoard(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), PCAD2KICAD::PCAD_TEXT::AddToBoard(), PCAD2KICAD::PCAD_PAD::AddToFootprint(), ALTIUM_PCB::ConvertArcs6ToBoardItem(), ALTIUM_PCB::ConvertArcs6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertFills6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertPads6ToBoardItem(), ALTIUM_PCB::ConvertPads6ToBoardItemOnNonCopper(), ALTIUM_PCB::ConvertShapeBasedRegions6ToBoardItem(), ALTIUM_PCB::ConvertShapeBasedRegions6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertTexts6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertTracks6ToBoardItem(), ALTIUM_PCB::ConvertTracks6ToBoardItemOnLayer(), CADSTAR_PCB_ARCHIVE_LOADER::createUniqueGroupID(), FOOTPRINT_VIEWER_FRAME::displayFootprint(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), DSN::SPECCTRA_DB::FromSESSION(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadNet(), ZONE_SEARCH_HANDLER::getResultCell(), GROUP_TOOL::Group(), ALTIUM_PCB::HelperCreateBoardOutline(), ALTIUM_PCB::HelperParseDimensions6Center(), ALTIUM_PCB::HelperParseDimensions6Datum(), ALTIUM_PCB::HelperParseDimensions6Leader(), ALTIUM_PCB::HelperParseDimensions6Linear(), ALTIUM_PCB::HelperParseDimensions6Radial(), ALTIUM_PCB::HelperPcpShapeAsBoardKeepoutRegion(), DISPLAY_FOOTPRINTS_FRAME::InitDisplay(), LEGACY_PLUGIN::loadAllSections(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), LoadBoard(), CADSTAR_PCB_ARCHIVE_LOADER::loadComponents(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), LEGACY_PLUGIN::loadDIMENSION(), CADSTAR_PCB_ARCHIVE_LOADER::loadDimensions(), FABMASTER::loadEtch(), FABMASTER::loadFootprints(), FABMASTER::loadGraphics(), CADSTAR_PCB_ARCHIVE_LOADER::loadGroups(), LEGACY_PLUGIN::loadNETINFO_ITEM(), FABMASTER::loadNets(), CADSTAR_PCB_ARCHIVE_LOADER::loadNetVia(), FABMASTER::loadOutline(), LEGACY_PLUGIN::loadPCB_LINE(), LEGACY_PLUGIN::loadPCB_TARGET(), LEGACY_PLUGIN::loadPCB_TEXT(), EAGLE_PLUGIN::loadPlain(), FABMASTER::loadPolygon(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), LEGACY_PLUGIN::loadTrackList(), FABMASTER::loadVias(), FABMASTER::loadZone(), LEGACY_PLUGIN::loadZONE_CONTAINER(), DIALOG_NET_INSPECTOR::onAddNet(), DIALOG_NET_INSPECTOR::onRenameNet(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), PCB_EASYEDAPRO_PARSER::ParseBoard(), PCB_EASYEDA_PARSER::ParseBoard(), PCB_PARSER::parseBOARD_unchecked(), ALTIUM_PCB::ParseComponents6Data(), PCB_PARSER::parseNETINFO_ITEM(), ALTIUM_PCB::ParseNets6Data(), ALTIUM_PCB::ParsePolygons6Data(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), ALTIUM_PCB::ParseVias6Data(), PCB_PARSER::parseZONE(), BOARD_COMMIT::Push(), FOOTPRINT_WIZARD_FRAME::RegenerateFootprint(), DISPLAY_FOOTPRINTS_FRAME::ReloadFootprint(), BOARD_EDITOR_CONTROL::RepairBoard(), BOARD_COMMIT::Revert(), DIALOG_FOOTPRINT_CHECKER::runChecks(), and TEARDROP_MANAGER::UpdateTeardrops().
ZONE * BOARD::AddArea | ( | PICKED_ITEMS_LIST * | aNewZonesList, |
int | aNetcode, | ||
PCB_LAYER_ID | aLayer, | ||
VECTOR2I | aStartPointPosition, | ||
ZONE_BORDER_DISPLAY_STYLE | aHatch | ||
) |
Add an empty copper area to board areas list.
aNewZonesList | is a PICKED_ITEMS_LIST * where to store new areas pickers (useful in undo commands) can be NULL. |
aNetcode | is the netcode of the copper area (0 = no net). |
aLayer | is the layer of area. |
aStartPointPosition | is position of the first point of the polygon outline of this area. |
aHatch | is the hatch option. |
Definition at line 2176 of file board.cpp.
References ZONE::AppendCorner(), m_zones, PICKED_ITEMS_LIST::PushItem(), ZONE::SetHatchStyle(), ZONE::SetLayer(), and BOARD_CONNECTED_ITEM::SetNetCode().
void BOARD::AddListener | ( | BOARD_LISTENER * | aListener | ) |
Add a listener to the board to receive calls whenever something on the board has been modified.
The board does not take ownership of the listener object. Make sure to call RemoveListener before deleting the listener object. The order of listener invocations is not guaranteed. If the specified listener object has been added before, it will not be added again.
Definition at line 2276 of file board.cpp.
References alg::contains(), and m_listeners.
Referenced by DIALOG_GENERATORS::DIALOG_GENERATORS(), DIALOG_NET_INSPECTOR::DIALOG_NET_INSPECTOR(), APPEARANCE_CONTROLS::OnBoardChanged(), DIALOG_GENERATORS::onBoardChanged(), DIALOG_NET_INSPECTOR::onBoardChanged(), PCB_SEARCH_PANE::onBoardChanged(), and PCB_SEARCH_PANE::PCB_SEARCH_PANE().
const std::vector< BOARD_CONNECTED_ITEM * > BOARD::AllConnectedItems | ( | ) |
Definition at line 2232 of file board.cpp.
References Footprints(), pad, Tracks(), and Zones().
Referenced by MapNets(), and SanitizeNetcodes().
|
inline |
Definition at line 841 of file board.h.
References NETINFO_LIST::begin(), and m_NetInfo.
bool BOARD::BuildConnectivity | ( | PROGRESS_REPORTER * | aReporter = nullptr | ) |
Build or rebuild the board connectivity database for the board, especially the list of connected items, list of nets and rastnest data Needed after loading a board to have the connectivity database updated.
Definition at line 182 of file board.cpp.
References GetConnectivity(), and UpdateRatsnestExclusions().
Referenced by PCB_CONTROL::AppendBoard(), TRACKS_CLEANER::deleteDanglingTracks(), KI_TEST::FillZones(), DSN::ImportSpecctraSession(), LoadBoard(), PCB_EDIT_FRAME::OpenProjectFiles(), PCB_EDIT_FRAME::RebuildAndRefresh(), PCB_BASE_FRAME::rebuildConnectivity(), EDIT_TOOL::rebuildConnectivity(), ZONE_FILLER_TOOL::rebuildConnectivity(), SaveBoard(), PCB_EDIT_FRAME::SetBoard(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), BOARD_NETLIST_UPDATER::UpdateNetlist(), and PCB_EDIT_FRAME::UpdateUserInterface().
|
inline |
Definition at line 790 of file board.h.
References NETINFO_LIST::buildListOfNets(), and m_NetInfo.
Referenced by PCB_CONTROL::AppendBoard(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), FOOTPRINT_EDIT_FRAME::ImportFootprint(), LoadBoard(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), PCB_EDIT_FRAME::OpenProjectFiles(), and PCB_EDIT_FRAME::ShowBoardSetupDialog().
void BOARD::CacheTriangulation | ( | PROGRESS_REPORTER * | aReporter = nullptr , |
const std::vector< ZONE * > & | aZones = {} |
||
) |
Definition at line 805 of file board.cpp.
References _, PROGRESS_REPORTER::AdvanceProgress(), GetKiCadThreadPool(), PROGRESS_REPORTER::IsCancelled(), PROGRESS_REPORTER::KeepRefreshing(), m_zones, PROGRESS_REPORTER::Report(), and tp.
Referenced by CONNECTIVITY_DATA::Build(), and PCB_DRAW_PANEL_GAL::DisplayBoard().
|
inlinestatic |
Definition at line 278 of file board.h.
References PCB_T, and EDA_ITEM::Type().
|
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 Add(), FOOTPRINT::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(), FOOTPRINT::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().
void BOARD::ClearProject | ( | ) |
Definition at line 231 of file board.cpp.
References GetDesignSettings(), PROJECT::GetProjectFile(), BOARD_DESIGN_SETTINGS::m_NetSettings, m_project, project, and NESTED_SETTINGS::SetParent().
Referenced by PCB_EDIT_FRAME::doCloseWindow(), PCB_EDIT_FRAME::Files_io_from_id(), DIALOG_BOARD_SETUP::onAuxiliaryAction(), PCB_EDIT_FRAME::OpenProjectFiles(), PCB_EDIT_FRAME::SetBoard(), and SetProject().
|
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().
|
virtualinherited |
Create a duplicate of this item with linked list members set to NULL.
The default version will return NULL in release builds and likely crash the program. In debug builds, a warning message indicating the derived class has not implemented cloning. This really should be a pure virtual function. Due to the fact that there are so many objects derived from EDA_ITEM, the decision was made to return NULL until all the objects derived from EDA_ITEM implement cloning. Once that happens, this function should be made pure.
Reimplemented in LIB_FIELD, LIB_PIN, LIB_SHAPE, LIB_TEXT, LIB_TEXTBOX, SCH_BITMAP, SCH_BUS_WIRE_ENTRY, SCH_BUS_BUS_ENTRY, SCH_FIELD, SCH_JUNCTION, SCH_LABEL, SCH_DIRECTIVE_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_SHAPE, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TEXT, SCH_TEXTBOX, KIGFX::ORIGIN_VIEWITEM, PCB_GROUP, FOOTPRINT, PCB_TUNING_PATTERN, NETINFO_ITEM, PAD, PCB_DIM_ALIGNED, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIM_LEADER, PCB_DIM_CENTER, PCB_FIELD, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_ARC, PCB_VIA, and ZONE.
Definition at line 82 of file eda_item.cpp.
References EDA_ITEM::GetClass().
Referenced by LIB_ITEM::Duplicate(), BOARD_ITEM::Duplicate(), SCH_ITEM::Duplicate(), LIB_SYMBOL::LIB_SYMBOL(), SCH_COMMIT::makeImage(), BOARD_COMMIT::makeImage(), new_clone(), LIB_SYMBOL::operator=(), SCH_LIB_PLUGIN_CACHE::removeSymbol(), PCB_BASE_EDIT_FRAME::saveCopyInUndoList(), CLIPBOARD_IO::SaveSelection(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_DRAWING_TOOLS::TwoClickPlace(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
BOX2I BOARD::ComputeBoundingBox | ( | bool | aBoardEdgesOnly = false | ) | const |
Calculate the bounding box containing all board items (or board edge segments).
aBoardEdgesOnly | is true if we are interested in board edge segments only. |
Definition at line 1389 of file board.cpp.
References Edge_Cuts, GetVisibleLayers(), IsElementVisible(), IsFootprintHolder(), LAYER_HIDDEN_TEXT, m_drawings, m_footprints, m_tracks, m_zones, BOX2< Vec >::Merge(), PCB_SHAPE_T, and PgmOrNull().
Referenced by buildBoardBoundingBoxPoly(), BuildBoardPolygonOutlines(), PLACE_FILE_EXPORTER::GenReportData(), GetBoardEdgesBoundingBox(), GetBoundingBox(), PCBNEW_PRINTOUT::getBoundingBox(), initializePlotter(), BOARD_ADAPTER::InitSettings(), PCBNEW_JOBS_HANDLER::JobExportStep(), EASYEDA_PLUGIN::LoadBoard(), DIALOG_EXPORT_STEP::onExportButton(), PCB_EDIT_FRAME::OnExportVRML(), PCB_EASYEDAPRO_PARSER::ParseBoard(), EXPORT_SVG::Plot(), StartPlotBoard(), and GENCAD_EXPORTER::WriteFile().
void BOARD::ConvertBrdLayerToPolygonalContours | ( | PCB_LAYER_ID | aLayer, |
SHAPE_POLY_SET & | aOutlines | ||
) | const |
Build a set of polygons which are the outlines of copper items (pads, tracks, vias, texts, zones).
Holes in vias or pads are ignored. The polygons are not merged. This is useful to export the shape of copper layers to dxf polygons or 3D viewer/
aLayer | is a copper layer, like B_Cu, etc. |
aOutlines | is the SHAPE_POLY_SET to fill in with items outline. |
Definition at line 2514 of file board.cpp.
References ERROR_INSIDE, GetDesignSettings(), m_drawings, m_footprints, BOARD_DESIGN_SETTINGS::m_MaxError, m_tracks, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_FIELD_T, PCB_SHAPE_T, PCB_TEXT_T, PCB_TEXTBOX_T, text, PCB_DIMENSION_BASE::TransformShapeToPolygon(), PCB_SHAPE::TransformShapeToPolygon(), PCB_TEXT::TransformTextToPolySet(), PCB_TEXTBOX::TransformTextToPolySet(), and Zones().
Referenced by EXPORTER_PCB_VRML::ExportStandardLayers(), EXPORTER_PCB_VRML::ExportVrmlSolderMask(), and PlotLayerOutlines().
wxString BOARD::ConvertCrossReferencesToKIIDs | ( | const wxString & | aSource | ) | const |
Convert cross-references back and forth between ${refDes:field} and ${kiid:field}.
Definition at line 1270 of file board.cpp.
References Footprints().
Referenced by DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow(), and DIALOG_DIMENSION_PROPERTIES::updateDimensionFromDialog().
wxString BOARD::ConvertKIIDsToCrossReferences | ( | const wxString & | aSource | ) | const |
Definition at line 1324 of file board.cpp.
References GetItem(), PCB_FOOTPRINT_T, and EDA_ITEM::Type().
Referenced by DIALOG_DIMENSION_PROPERTIES::TransferDataToWindow(), and DIALOG_TEXTBOX_PROPERTIES::TransferDataToWindow().
|
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().
void BOARD::DeleteAllFootprints | ( | ) |
Remove all footprints from the deque and free the memory associated with them.
Definition at line 1130 of file board.cpp.
References m_footprints.
Referenced by DISPLAY_FOOTPRINTS_FRAME::InitDisplay(), FOOTPRINT_WIZARD_FRAME::RegenerateFootprint(), DISPLAY_FOOTPRINTS_FRAME::ReloadFootprint(), FOOTPRINT_EDIT_FRAME::ReloadFootprint(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), and DISPLAY_FOOTPRINTS_FRAME::~DISPLAY_FOOTPRINTS_FRAME().
void BOARD::DeleteMARKERs | ( | ) |
Delete all MARKERS from the board.
Definition at line 1098 of file board.cpp.
References m_markers.
Referenced by DIALOG_FOOTPRINT_CHECKER::deleteAllMarkers(), DIALOG_DRC::deleteAllMarkers(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), DSN::SPECCTRA_DB::FromSESSION(), and ~BOARD().
void BOARD::DeleteMARKERs | ( | bool | aWarningsAndErrors, |
bool | aExclusions | ||
) |
Definition at line 1108 of file board.cpp.
References m_markers, and RPT_SEVERITY_EXCLUSION.
|
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().
NETINFO_ITEM * BOARD::DpCoupledNet | ( | const NETINFO_ITEM * | aNet | ) |
Definition at line 1713 of file board.cpp.
References FindNet(), NETINFO_ITEM::GetNetname(), and MatchDpSuffix().
Referenced by PCB_TUNING_PATTERN::CreateNew(), PNS_PCBNEW_RULE_RESOLVER::DpCoupledNet(), PCB_TUNING_PATTERN::EditStart(), PCB_TUNING_PATTERN::initBaseLines(), and PCB_CONTROL::UpdateMessagePanel().
|
inline |
Definition at line 321 of file board.h.
References m_drawings.
Referenced by PCB_CONTROL::AppendBoard(), CN_CONNECTIVITY_ALGO::Build(), EXPORTER_STEP::buildBoard3DShapes(), ZONE_FILLER::buildCopperItemClearances(), BOARD_ADAPTER::createLayers(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), PCB_DRAW_PANEL_GAL::DisplayBoard(), DIALOG_CLEANUP_GRAPHICS::doCleanup(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), FillItemMap(), ZONE_FILLER::fillNonCopperZone(), DRC_TEST_PROVIDER::forEachGeometryItem(), PCB_PLUGIN::format(), GENDRILL_WRITER_BASE::genDrillMapFile(), AR_AUTOPLACER::genPlacementRoutingMatrix(), DIALOG_BOARD_STATISTICS::getDataFromPCB(), GetItem(), idf_export_outline(), ALTIUM_PCB::Parse(), PCB_EASYEDAPRO_PARSER::ParseBoard(), PCB_EASYEDA_PARSER::ParseBoard(), PCB_PARSER::parseBOARD_unchecked(), PCB_CONTROL::Paste(), PCB_CONTROL::placeBoardItems(), PlotSolderMaskLayer(), PlotStandardLayer(), PCB_EDIT_FRAME::RunActionPlugin(), DIALOG_FIND::search(), PNS_KICAD_IFACE_BASE::SyncWorld(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testGraphicClearances(), and NETINFO_MAPPING::Update().
|
inline |
Definition at line 322 of file board.h.
References m_drawings.
|
virtualinherited |
Create a copy of this BOARD_ITEM.
Reimplemented in FOOTPRINT.
Definition at line 192 of file board_item.cpp.
References PCB_GROUP::AddItem(), EDA_ITEM::Clone(), BOARD_ITEM::GetParentGroup(), and EDA_ITEM::m_Uuid.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCB_GROUP::DeepDuplicate(), KIGFX::PCB_PAINTER::draw(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), FOOTPRINT::Duplicate(), FOOTPRINT::DuplicateItem(), and ARRAY_CREATOR::Invoke().
|
inline |
Definition at line 849 of file board.h.
References NETINFO_LIST::end(), and m_NetInfo.
Definition at line 1231 of file board.cpp.
References Drawings(), Footprints(), group, m_generators, m_groups, m_markers, EDA_ITEM::m_Uuid, pad, Tracks(), and Zones().
Referenced by WriteDRCReport(), DRC_REPORT::WriteJsonReport(), and DRC_REPORT::WriteTextReport().
void BOARD::FinalizeBulkAdd | ( | std::vector< BOARD_ITEM * > & | aNewItems | ) |
Must be used if Add() is used using a BULK_x ADD_MODE to generate a change event for listeners.
Definition at line 958 of file board.cpp.
References InvokeListeners(), and BOARD_LISTENER::OnBoardItemsAdded().
Referenced by PCB_PARSER::parseBOARD_unchecked(), BOARD_COMMIT::Push(), and BOARD_COMMIT::Revert().
void BOARD::FinalizeBulkRemove | ( | std::vector< BOARD_ITEM * > & | aRemovedItems | ) |
Must be used if Remove() is used using a BULK_x REMOVE_MODE to generate a change event for listeners.
Definition at line 964 of file board.cpp.
References InvokeListeners(), and BOARD_LISTENER::OnBoardItemsRemoved().
Referenced by BOARD_COMMIT::Push(), and BOARD_COMMIT::Revert().
Search for a FOOTPRINT within this board with the given path.
aPath | The path ([sheetUUID, .., symbolUUID]) to search for. |
Definition at line 1740 of file board.cpp.
References m_footprints.
Referenced by PCB_EDIT_FRAME::LoadFootprints().
FOOTPRINT * BOARD::FindFootprintByReference | ( | const wxString & | aReference | ) | const |
Search for a FOOTPRINT within this board with the given reference designator.
Finds only the first one, if there is more than one such FOOTPRINT.
aReference | The reference designator of the FOOTPRINT to find. |
Definition at line 1728 of file board.cpp.
References m_footprints.
Referenced by DSN::SPECCTRA_DB::FromSESSION(), PCB_EDIT_FRAME::LoadFootprints(), and DRC_TEST_PROVIDER_SCHEMATIC_PARITY::testNetlist().
NETINFO_ITEM * BOARD::FindNet | ( | const wxString & | aNetname | ) | const |
Search for a net with the given name.
aNetname | A Netname to search for. |
Definition at line 1657 of file board.cpp.
References NETINFO_LIST::GetNetItem(), and m_NetInfo.
NETINFO_ITEM * BOARD::FindNet | ( | int | aNetcode | ) | const |
Search for a net with the given netcode.
aNetcode | A netcode to search for. |
Definition at line 1642 of file board.cpp.
References NETINFO_LIST::GetNetCount(), NETINFO_LIST::GetNetItem(), m_NetInfo, NETINFO_LIST::OrphanedItem(), and NETINFO_LIST::UNCONNECTED.
Referenced by PCAD2KICAD::PCAD_PAD::AddToFootprint(), GENCAD_EXPORTER::CreateSignalsSection(), DpCoupledNet(), PNS_PCBNEW_RULE_RESOLVER::DpNetPair(), PCB_EDIT_FRAME::Edit_Zone_Params(), DIALOG_COPPER_ZONE::ensureSelectedNetIsVisible(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), DSN::SPECCTRA_DB::FromBOARD(), DSN::SPECCTRA_DB::FromSESSION(), inDiffPairFunc(), DRC_ENGINE::IsNetADiffPair(), LEGACY_PLUGIN::loadNETINFO_ITEM(), LEGACY_PLUGIN::loadPAD(), MapNets(), DIALOG_NET_INSPECTOR::onAddNet(), DIALOG_NET_INSPECTOR::onRenameNet(), NETINFO_MAPPING::iterator::operator*(), PCB_EASYEDAPRO_PARSER::ParseBoard(), PCB_PARSER::parseNETINFO_ITEM(), PCB_PARSER::parsePAD(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), PCB_PARSER::parseZONE(), BOARD_EDITOR_CONTROL::RepairBoard(), SanitizeNetcodes(), BOARD_CONNECTED_ITEM::SetNetCode(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), BOARD_NETLIST_UPDATER::updateComponentPadConnections(), and BOARD_NETLIST_UPDATER::updateCopperZoneNets().
|
virtualinherited |
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). |
Reimplemented in PCB_GROUP, FOOTPRINT, PCB_DIMENSION_BASE, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_ARC, PCB_VIA, ZONE, and PAD.
Definition at line 295 of file board_item.cpp.
References EDA_ITEM::GetClass().
|
inline |
Definition at line 318 of file board.h.
References m_footprints.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), GERBER_JOBFILE_WRITER::addJSONDesignRules(), RENDER_3D_RAYTRACE::addPadsAndVias(), AllConnectedItems(), PCB_CONTROL::AppendBoard(), AR_AUTOPLACER::AR_AUTOPLACER(), AR_AUTOPLACER::AutoplaceFootprints(), CN_CONNECTIVITY_ALGO::Build(), build_pad_testpoints(), EXPORTER_STEP::buildBoard3DShapes(), BuildBoardPolygonOutlines(), ZONE_FILLER::buildCopperItemClearances(), FROM_TO_CACHE::buildEndpointList(), DIALOG_BOARD_REANNOTATE::BuildFootprintList(), GENDRILL_WRITER_BASE::buildHolesList(), DIALOG_NET_INSPECTOR::buildNetsList(), HYPERLYNX_EXPORTER::collectNetObjects(), ConvertCrossReferencesToKIIDs(), GENCAD_EXPORTER::CreateComponentsSection(), BOARD_ADAPTER::createLayers(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), GENCAD_EXPORTER::CreateShapesSection(), GENCAD_EXPORTER::CreateSignalsSection(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), PCB_DRAW_PANEL_GAL::DisplayBoard(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), doPushPadProperties(), DRAWING_TOOL::DrawVia(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), PCB_EDIT_FRAME::Export_IDF3(), EXPORTER_PCB_VRML::ExportFp3DModelsAsLinkedFile(), EXPORTER_PCB_VRML::ExportVRML_File(), ZONE_FILLER::Fill(), FillItemMap(), ZONE_FILLER::fillNonCopperZone(), DSN::SPECCTRA_DB::FlipFOOTPRINTs(), DRC_TEST_PROVIDER::forEachGeometryItem(), PCB_PLUGIN::format(), DSN::SPECCTRA_DB::FromBOARD(), GENDRILL_WRITER_BASE::genDrillMapFile(), IPC2581_PLUGIN::generateBOMSection(), IPC2581_PLUGIN::generateComponents(), IPC2581_PLUGIN::generateDrillLayers(), IPC2581_PLUGIN::generateStepSection(), RENDER_3D_OPENGL::generateViasAndPads(), PLACE_FILE_EXPORTER::GenPositionData(), PLACE_FILE_EXPORTER::GenReportData(), RENDER_3D_OPENGL::get3dModelsSelected(), PCB_BASE_EDIT_FRAME::GetContextualTextVars(), DIALOG_BOARD_STATISTICS::getDataFromPCB(), GetItem(), GetMsgPanelInfo(), NETINFO_ITEM::GetMsgPanelInfo(), PCB_DRAW_PANEL_GAL::GetMsgPanelInfo(), GetNodesCount(), GetPadFast(), GetPads(), GetSortedPadListByXthenYCoord(), DRC_INTERACTIVE_COURTYARD_CLEARANCE::Init(), DIALOG_GENDRILL::InitDisplayParams(), ZONE_FILLER::knockoutThermalReliefs(), RENDER_3D_RAYTRACE::load3DModels(), RENDER_3D_OPENGL::load3dModels(), DRC_ENGINE::loadImplicitRules(), BOARD_INSPECTION_TOOL::LocalRatsnestTool(), BOARD_INSPECTION_TOOL::makeDRCEngine(), AR_AUTOPLACER::nearestPad(), FOOTPRINT_EDIT_FRAME::OnUpdateSaveFootprintToBoard(), PCB_PARSER::parseBOARD_unchecked(), PCB_CONTROL::Paste(), AR_AUTOPLACER::pickFootprint(), PCB_CONTROL::placeBoardItems(), BRDITEMS_PLOTTER::PlotDrillMarks(), PlotInteractiveLayer(), PlotLayerOutlines(), PlotSolderMaskLayer(), PlotStandardLayer(), DIALOG_EXCHANGE_FOOTPRINTS::processMatchingFootprints(), BOARD_REANNOTATE_TOOL::ReannotateDuplicates(), RecreateCmpFile(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), DSN::SPECCTRA_DB::RevertFOOTPRINTs(), DRC_CACHE_GENERATOR::Run(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_FOOTPRINT_CHECKS::Run(), DRC_TEST_PROVIDER_HOLE_SIZE::Run(), DRC_TEST_PROVIDER_LIBRARY_PARITY::Run(), DRC_TEST_PROVIDER_SOLDER_MASK::Run(), PCB_EDIT_FRAME::RunActionPlugin(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), CLIPBOARD_IO::SaveSelection(), DIALOG_FIND::search(), FOOTPRINT_SEARCH_HANDLER::Search(), searchAreas(), searchFootprints(), FOOTPRINT_EDIT_FRAME::SelectFootprintFromBoard(), SetElementVisibility(), ZONE_FILLER::subtractHigherPriorityZones(), PNS_KICAD_IFACE_BASE::SyncWorld(), TestBoardOutlinesGraphicItems(), DRC_INTERACTIVE_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testFootprintCourtyardDefinitions(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testGraphicClearances(), DRC_TEST_PROVIDER_SCHEMATIC_PARITY::testNetlist(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadClearances(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataFromWindow(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), DIALOG_EXPORT_2581::TransferDataToWindow(), NETINFO_MAPPING::Update(), BOARD_NETLIST_UPDATER::UpdateNetlist(), DIALOG_UNUSED_PAD_LAYERS::updatePadsAndVias(), HYPERLYNX_EXPORTER::writeDevices(), GENCAD_EXPORTER::WriteFile(), and HYPERLYNX_EXPORTER::writePadStacks().
|
inline |
Definition at line 319 of file board.h.
References m_footprints.
|
inline |
Definition at line 327 of file board.h.
References m_generators.
Referenced by PCB_PLUGIN::format(), GroupsSanityCheckInternal(), and DIALOG_GENERATORS::RebuildModels().
|
inline |
Definition at line 328 of file board.h.
References m_generators.
|
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().
|
inline |
Return the Zone at a given index.
index | The array type index into a collection of ZONE *. |
Definition at line 984 of file board.h.
References m_zones.
Referenced by UpdateCopyOfZonesList().
|
inline |
|
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(), FOOTPRINT::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(), FOOTPRINT::FootprintNeedsUpdate(), PCB_PLUGIN::format(), fromToFunc(), BOARD_ITEM::GetBoard(), PCBEXPR_CONTEXT::GetBoard(), NETINFO_ITEM::GetBoundingBox(), ZONE::GetBoundingBox(), FOOTPRINT::GetBoundingBox(), FOOTPRINT::GetBoundingHull(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), PCB_BASE_EDIT_FRAME::GetContextualTextVars(), FOOTPRINT::GetCourtyard(), PCB_VIA::GetDrillConstraint(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), PCB_TEXT::GetEffectiveShape(), getFieldFunc(), ZONE::GetInteractingZones(), ZONE::GetItemDescription(), FOOTPRINT::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(), 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(), ResolveDRCExclusions(), FOOTPRINT::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(), UpdateRatsnestExclusions(), FOOTPRINT::ViewBBox(), PAD::ViewBBox(), PCB_TRACK::ViewBBox(), PAD::ViewGetLOD(), PCB_REFERENCE_IMAGE::ViewGetLOD(), PCB_VIA::ViewGetLOD(), FOOTPRINT::~FOOTPRINT(), and ZONE::~ZONE().
|
inline |
Return the board bounding box calculated using exclusively the board edges (graphics on Edge.Cuts layer).
If there are items outside of the area limited by Edge.Cuts graphics, the items will not be taken into account.
Definition at line 885 of file board.h.
References ComputeBoundingBox().
Referenced by GERBER_JOBFILE_WRITER::addJSONGeneralSpecs(), AUTOPLACE_TOOL::autoplace(), BuildBoardPolygonOutlines(), BOARD_NETLIST_UPDATER::estimateFootprintInsertionPosition(), GENDRILL_WRITER_BASE::genDrillMapFile(), AR_AUTOPLACER::genPlacementRoutingMatrix(), PCB_BASE_FRAME::GetBoardBoundingBox(), idf_export_outline(), CADSTAR_PCB_ARCHIVE_PLUGIN::LoadBoard(), PCB_EDIT_FRAME::OnExportIDF3(), and ALTIUM_PCB::Parse().
bool BOARD::GetBoardPolygonOutlines | ( | SHAPE_POLY_SET & | aOutlines, |
OUTLINE_ERROR_HANDLER * | aErrorHandler = nullptr , |
||
bool | aAllowUseArcsInPolygons = false |
||
) |
Extract the board outlines and build a closed polygon from lines, arcs and circle items on edge cut layer.
Any closed outline inside the main outline is a hole. All contours should be closed, i.e. have valid vertices to build a closed polygon.
aOutlines | is the SHAPE_POLY_SET to fill in with outlines/holes. |
aErrorHandler | is an optional DRC_ITEM error handler. |
aAllowUseArcsInPolygons | = an optional option to allow adding arcs in SHAPE_LINE_CHAIN polylines/polygons when building outlines from aShapeList This is mainly for export to STEP files |
Definition at line 2201 of file board.cpp.
References BuildBoardPolygonOutlines(), GetDesignSettings(), GetOutlinesChainingEpsilon(), SHAPE_POLY_SET::PM_STRICTLY_SIMPLE, and SHAPE_POLY_SET::Simplify().
Referenced by EXPORTER_STEP::buildBoard3DShapes(), DSN::SPECCTRA_DB::BuiltBoardOutlines(), BOARD_ADAPTER::createBoardPolygon(), GENCAD_EXPORTER::CreateBoardSection(), DRAWING_TOOL::DrawBoardCharacteristics(), EXPORTER_PCB_VRML::ExportVrmlBoard(), ZONE_FILLER::Fill(), IPC2581_PLUGIN::generateProfile(), AR_AUTOPLACER::genPlacementRoutingMatrix(), DIALOG_BOARD_STATISTICS::getDataFromPCB(), PlotSolderMaskLayer(), PNS_KICAD_IFACE_BASE::SyncWorld(), and HYPERLYNX_EXPORTER::writeBoardInfo().
|
inline |
Get what the board use is.
Definition at line 295 of file board.h.
References m_boardUse.
Referenced by BOARD_ITEM::IsLocked().
|
inlineoverridevirtual |
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 871 of file board.h.
References ComputeBoundingBox().
Referenced by buildBoardBoundingBoxPoly(), PCB_BASE_FRAME::GetBoardBoundingBox(), GetFocusPosition(), DRC_TEST_PROVIDER_MISC::testOutline(), and PANEL_PCBNEW_COLOR_SETTINGS::zoomFitPreview().
|
inlinevirtualinherited |
This defaults to the center of the bounding box if not overridden.
Reimplemented in FOOTPRINT, PAD, PCB_MARKER, PCB_SHAPE, and PCB_ARC.
Definition at line 112 of file board_item.h.
References EDA_ITEM::GetBoundingBox(), and BOX2< Vec >::GetCenter().
Referenced by PCB_GRID_HELPER::computeAnchors(), and PCB_SELECTION_TOOL::FindItem().
|
inlineoverridevirtual |
|
inline |
Return a list of missing connections between components/tracks.
Definition at line 441 of file board.h.
References m_connectivity.
Referenced by TEARDROP_MANAGER::AddTeardropsOnTracks(), BuildConnectivity(), BOARD_NETLIST_UPDATER::cacheCopperZoneConnections(), FROM_TO_CACHE::cacheFromToPaths(), BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), DIALOG_NET_INSPECTOR::calculateViaLength(), TRACKS_CLEANER::cleanup(), PCB_BASE_FRAME::Compile_Ratsnest(), TRACKS_CLEANER::deleteDanglingTracks(), TRACKS_CLEANER::deleteTracksInPads(), PCB_DRAW_PANEL_GAL::DisplayBoard(), PNS_KICAD_IFACE::DisplayRatline(), EDIT_TOOL::DragArcTrack(), ZONE_FILLER::Fill(), EDIT_TOOL::FilletTracks(), PCB_VIA::FlashLayer(), fromToFunc(), NETINFO_ITEM::GetBoundingBox(), TRACKS_CLEANER::getConnectedItems(), GetMsgPanelInfo(), PCB_DRAW_PANEL_GAL::GetMsgPanelInfo(), PCB_VIA::GetOutermostConnectedLayers(), GetTrackLength(), PCB_SELECTION_TOOL::grabUnconnected(), DSN::ImportSpecctraSession(), ROUTER_TOOL::Init(), ROUTER_TOOL::InlineDrag(), TRACKS_CLEANER::mergeCollinearSegments(), DIALOG_DRC::OnDRCItemRClick(), DIALOG_DRC::OnDRCItemSelected(), PCB_BASE_FRAME::PlaceFootprint(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::processItem(), BOARD_COMMIT::Push(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), DIALOG_NET_INSPECTOR::relevantConnectivityItems(), TRACKS_CLEANER::removeShortingTrackSegments(), TEARDROP_MANAGER::RemoveTeardrops(), BOARD_COMMIT::Revert(), ROUTER_TOOL::RouteSelected(), DRC_CACHE_GENERATOR::Run(), DRC_TEST_PROVIDER_CONNECTIVITY::Run(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), RATSNEST_SEARCH_HANDLER::Search(), PCB_SELECTION_TOOL::selectAllConnectedTracks(), PCB_SELECTION_TOOL::SelectAllItemsOnNet(), PCB_SELECTION_TOOL::selectConnections(), PCB_SELECTION_TOOL::selectUnconnected(), TRACKS_CLEANER::testTrackEndpointIsNode(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DIALOG_TRACK_VIA_PROPERTIES::TransferDataFromWindow(), UpdateRatsnestExclusions(), and TEARDROP_MANAGER::UpdateTeardrops().
void BOARD::GetContextualTextVars | ( | wxArrayString * | aVars | ) | const |
Definition at line 369 of file board.cpp.
References alg::contains(), TITLE_BLOCK::GetContextualTextVars(), GetProject(), GetTextVars(), and GetTitleBlock().
Referenced by PCB_BASE_EDIT_FRAME::GetContextualTextVars().
int BOARD::GetCopperLayerCount | ( | ) | const |
Definition at line 625 of file board.cpp.
References BOARD_DESIGN_SETTINGS::GetCopperLayerCount(), and GetDesignSettings().
Referenced by GERBER_JOBFILE_WRITER::addJSONDesignRules(), GERBER_JOBFILE_WRITER::addJSONFilesAttributes(), GERBER_JOBFILE_WRITER::addJSONGeneralSpecs(), GERBER_JOBFILE_WRITER::addJSONMaterialStackup(), PCB_CONTROL::AppendBoard(), GENDRILL_WRITER_BASE::BuildFileFunctionAttributeString(), DSN::SPECCTRA_DB::buildLayerMaps(), PANEL_SETUP_LAYERS::CheckCopperLayerCount(), compute_pad_access_code(), EXPORTER_PCB_VRML::ComputeLayer3D_Zpos(), GENCAD_EXPORTER::CreateComponentsSection(), GENCAD_EXPORTER::CreatePadsShapesSection(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), GENCAD_EXPORTER::CreateRoutesSection(), DIALOG_COPPER_ZONE::DIALOG_COPPER_ZONE(), DIALOG_RULE_AREA_PROPERTIES::DIALOG_RULE_AREA_PROPERTIES(), DIALOG_SWAP_LAYERS::DIALOG_SWAP_LAYERS(), KIGFX::PCB_PAINTER::draw(), ZONE_FILLER::Fill(), PCB_TRACK::Flip(), PCB_ARC::Flip(), PCB_VIA::Flip(), DSN::SPECCTRA_DB::FromBOARD(), GetGerberFileFunctionAttribute(), DIALOG_TRACK_VIA_PROPERTIES::getLayerDepth(), BOARD_ADAPTER::InitSettings(), LayerDepth(), BOARD_ITEM::layerMaskDescribe(), DSN::SPECCTRA_DB::makeIMAGE(), DSN::SPECCTRA_DB::makePADSTACK(), DSN::SPECCTRA_DB::makeVIA(), APPEARANCE_CONTROLS::rebuildLayerContextMenu(), DRC_CACHE_GENERATOR::Run(), PCB_BASE_FRAME::SwitchLayer(), PANEL_SETUP_BOARD_STACKUP::synchronizeWithBoard(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadClearances(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), DIALOG_SWAP_LAYERS::TransferDataFromWindow(), DIALOG_SWAP_LAYERS::TransferDataToWindow(), PANEL_SETUP_LAYERS::TransferDataToWindow(), and via_access_code().
BOARD_DESIGN_SETTINGS & BOARD::GetDesignSettings | ( | ) | const |
Definition at line 766 of file board.cpp.
References m_designSettings.
Referenced by AddGerberX2Header(), ZONE_FILLER::addHatchFillTypeOnZone(), GERBER_JOBFILE_WRITER::addJSONDesignRules(), GERBER_JOBFILE_WRITER::addJSONGeneralSpecs(), GERBER_JOBFILE_WRITER::addJSONMaterialStackup(), IPC2581_PLUGIN::addShape(), BOARD_ADAPTER::addText(), FOOTPRINT::ApplyDefaultSettings(), BOARD(), CONNECTIVITY_DATA::Build(), build_pad_testpoints(), build_via_testpoints(), EXPORTER_STEP::buildBoard3DShapes(), ZONE_FILLER::buildCopperItemClearances(), PAD::BuildEffectivePolygon(), PAD::BuildEffectiveShapes(), DIALOG_GLOBAL_EDIT_TEARDROPS::buildFilterLists(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::buildFilterLists(), EXPORTER_STEP::buildFootprint3DShapes(), EXPORTER_STEP::buildGraphic3DShape(), ZONE::BuildSmoothedPoly(), ZONE_FILLER::buildThermalSpokes(), EXPORTER_STEP::buildTrack3DShape(), EXPORTER_STEP::calculatePcbThickness(), DIALOG_NET_INSPECTOR::calculateViaLength(), CADSTAR_PCB_ARCHIVE_LOADER::calculateZonePriorities(), EDIT_TOOL::ChangeTrackWidth(), GRAPHICS_CLEANER::CleanupBoard(), NETINFO_ITEM::Clear(), FOOTPRINT_EDIT_FRAME::Clear_Pcb(), ClearProject(), collidesWithArea(), ZONE_CREATE_HELPER::commitZone(), FOOTPRINT_EDIT_FRAME::CommonSettingsChanged(), EXPORTER_PCB_VRML::ComputeLayer3D_Zpos(), ConvertBrdLayerToPolygonalContours(), BOARD_ADAPTER::createBoardPolygon(), MICROWAVE_TOOL::createInductorBetween(), BOARD_ADAPTER::createLayers(), PCB_TUNING_PATTERN::CreateNew(), GENCAD_EXPORTER::CreatePadsShapesSection(), BOARD_ADAPTER::createPadWithMargin(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), CONVERT_TOOL::CreatePolys(), GENCAD_EXPORTER::CreateRoutesSection(), ROUTER_TOOL::CustomTrackWidthDialog(), DIALOG_BOARD_SETUP::DIALOG_BOARD_SETUP(), DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME(), ROUTER_TOOL::DpDimensionsDialog(), KIGFX::PCB_PAINTER::draw(), DRAWING_TOOL::DrawBoardCharacteristics(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::DrawVia(), PCB_TUNING_PATTERN::EditPush(), enclosedByAreaFunc(), TRACK_WIDTH_MENU::eventHandler(), DIFF_PAIR_MENU::eventHandler(), VIA_SIZE_MENU::eventHandler(), EVT_GRID_CMD_CELL_CHANGED(), PCB_EDIT_FRAME::Export_IDF3(), EXPORTER_PCB_VRML::EXPORTER_PCB_VRML(), PCB_EDIT_FRAME::ExportToGenCAD(), ZONE_FILLER::fillCopperZone(), ZONE_FILLER::fillNonCopperZone(), FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), PCB_PLUGIN::formatGeneral(), PCB_PLUGIN::formatSetup(), DSN::SPECCTRA_DB::FromBOARD(), DSN::SPECCTRA_DB::FromSESSION(), IPC2581_PLUGIN::generateCadLayers(), IPC2581_PLUGIN::generateContentStackup(), PCB_BASE_FRAME::GetAuxOrigin(), GetBoardPolygonOutlines(), GetCopperLayerCount(), PCB_BASE_FRAME::GetDesignSettings(), FOOTPRINT_EDIT_FRAME::GetDesignSettings(), PCB_VIA::GetDrillConstraint(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), GetEnabledLayers(), PCB_BASE_FRAME::GetGridOrigin(), CADSTAR_PCB_ARCHIVE_LOADER::getHatchCodeAngle(), BOARD_ADAPTER::GetHolePlatingThickness(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadHatchCodeGap(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadHatchCodeThickness(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadNet(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadPad(), BOARD_ADAPTER::GetLayerColors(), CADSTAR_PCB_ARCHIVE_LOADER::getLineThickness(), PCB_VIA::GetMinAnnulus(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), BOARD_CONNECTED_ITEM::GetOwnClearance(), PAD::GetOwnClearance(), PCB_MARKER::GetSeverity(), PCB_BASE_FRAME::GetSeverity(), PAD::GetSolderMaskExpansion(), GetTrackLength(), PCB_TRACK::GetWidthConstraint(), PCB_VIA::GetWidthConstraint(), PCB_BASE_FRAME::GetZoneSettings(), GetZoneSettings(), ROUTER_TOOL::handleLayerSwitch(), ALTIUM_PCB::HelperCreateBoardOutline(), PANEL_SETUP_BOARD_FINISH::ImportSettingsFrom(), PANEL_SETUP_BOARD_STACKUP::ImportSettingsFrom(), PANEL_SETUP_CONSTRAINTS::ImportSettingsFrom(), PANEL_SETUP_MASK_AND_PASTE::ImportSettingsFrom(), PANEL_SETUP_TEARDROPS::ImportSettingsFrom(), PANEL_SETUP_TEXT_AND_GRAPHICS::ImportSettingsFrom(), PANEL_SETUP_TRACKS_AND_VIAS::ImportSettingsFrom(), PANEL_SETUP_TUNING_PATTERNS::ImportSettingsFrom(), PNS_KICAD_IFACE_BASE::ImportSizes(), DIALOG_PLOT::init_Dialog(), initializePlotter(), BOARD_ADAPTER::InitSettings(), IsLayerEnabled(), IsLayerVisible(), PNS_PCBNEW_RULE_RESOLVER::IsNetTieExclusion(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDrill(), ZONE_FILLER::knockoutThermalReliefs(), EAGLE_PLUGIN::LoadBoard(), EASYEDA_PLUGIN::LoadBoard(), LoadBoard(), CADSTAR_PCB_ARCHIVE_LOADER::loadBoardStackup(), CADSTAR_PCB_ARCHIVE_LOADER::loadDesignRules(), PCB_BASE_FRAME::loadFootprint(), FABMASTER::loadFootprints(), LEGACY_PLUGIN::loadGENERAL(), DRC_ENGINE::loadImplicitRules(), LEGACY_PLUGIN::loadNETCLASS(), FABMASTER::loadOutline(), EAGLE_PLUGIN::loadPlain(), FABMASTER::loadPolygon(), LEGACY_PLUGIN::loadSETUP(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), FABMASTER::loadVias(), BOARD_INSPECTION_TOOL::makeDRCEngine(), DSN::SPECCTRA_DB::makeIMAGE(), DSN::SPECCTRA_DB::makePADSTACK(), CONVERT_TOOL::makePolysFromChainedSegs(), CONVERT_TOOL::makePolysFromClosedGraphics(), CONVERT_TOOL::makePolysFromOpenGraphics(), PAD::MergePrimitivesAsPolygon(), NETINFO_ITEM::NETINFO_ITEM(), NewBoard(), DIALOG_BOARD_SETUP::onAuxiliaryAction(), DIALOG_TEXTBOX_PROPERTIES::onBorderChecked(), APPEARANCE_CONTROLS::onNetclassContextMenu(), PANEL_SETUP_RULES::onScintillaCharAdded(), PCB_EDIT_FRAME::OpenProjectFiles(), EAGLE_PLUGIN::packageWire(), DIALOG_PAD_PROPERTIES::padValuesOK(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), PANEL_SETUP_BOARD_FINISH::PANEL_SETUP_BOARD_FINISH(), PANEL_SETUP_BOARD_STACKUP::PANEL_SETUP_BOARD_STACKUP(), PANEL_SETUP_CONSTRAINTS::PANEL_SETUP_CONSTRAINTS(), PANEL_SETUP_MASK_AND_PASTE::PANEL_SETUP_MASK_AND_PASTE(), PANEL_SETUP_TEXT_AND_GRAPHICS::PANEL_SETUP_TEXT_AND_GRAPHICS(), PANEL_SETUP_TRACKS_AND_VIAS::PANEL_SETUP_TRACKS_AND_VIAS(), ALTIUM_PCB::Parse(), PCB_EASYEDAPRO_PARSER::ParseBoard(), ALTIUM_PCB::ParseBoard6Data(), PCB_PARSER::parseBoardStackup(), ALTIUM_PCB::ParseClasses6Data(), PCB_PARSER::parseFOOTPRINT_unchecked(), PCB_PARSER::parseGeneralSection(), PCB_PARSER::parseNETCLASS(), ALTIUM_PCB::ParseRules6Data(), PCB_PARSER::parseSetup(), PLACE_FILE_EXPORTER::PLACE_FILE_EXPORTER(), EXPORT_SVG::Plot(), DIALOG_PLOT::Plot(), PlotOneBoardLayer(), PlotSolderMaskLayer(), PlotStandardLayer(), BRDITEMS_PLOTTER::PlotText(), ROUTER_TOOL::prepareInteractive(), DIALOG_GLOBAL_EDIT_TEARDROPS::processItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::processItem(), PNS_PCBNEW_RULE_RESOLVER::QueryConstraint(), PCB_EDIT_FRAME::RebuildAndRefresh(), APPEARANCE_CONTROLS::rebuildNets(), PAD_TOOL::RecombinePad(), PCB_EDIT_FRAME::RecordDRCExclusions(), DIALOG_PLOT::reInitDialog(), DRC_TOOL::Reset(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::Run(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), DRC_TEST_PROVIDER_SOLDER_MASK::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), PCB_BASE_EDIT_FRAME::SetBoard(), SetCopperLayerCount(), SetEnabledLayers(), PCB_BASE_FRAME::SetGridOrigin(), NETINFO_ITEM::SetNetClass(), DIALOG_PLOT::SetPlotFormat(), SetProject(), PCB_BASE_FRAME::SetZoneSettings(), SetZoneSettings(), PCB_TUNING_PATTERN::ShowPropertiesDialog(), PNS_KICAD_IFACE_BASE::StackupHeight(), SynchronizeNetsAndNetClasses(), PNS_KICAD_IFACE_BASE::syncTextItem(), TEARDROP_MANAGER::TEARDROP_MANAGER(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), DRC_TEST_PROVIDER_MISC::testOutline(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testZoneLayer(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataFromWindow(), PANEL_SETUP_RULES::TransferDataFromWindow(), ZONE::TransformSmoothedOutlineToPolygon(), TRACK_WIDTH_MENU::update(), DIFF_PAIR_MENU::update(), VIA_SIZE_MENU::update(), DIALOG_GENDRILL::UpdateDrillParams(), PCB_CONTROL::UpdateMessagePanel(), ROUTER_TOOL::updateSizesAfterLayerSwitch(), PANEL_PREVIEW_3D_MODEL::View3DSettings(), WriteDRCReport(), DRC_REPORT::WriteJsonReport(), HYPERLYNX_EXPORTER::writeStackupInfo(), and DRC_REPORT::WriteTextReport().
|
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().
|
virtualinherited |
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 in PCB_DIMENSION_BASE, PCB_MARKER, PCB_TARGET, PCB_GROUP, FOOTPRINT, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_ARC, PCB_VIA, ZONE, and PAD.
Definition at line 227 of file board_item.cpp.
References EDA_ITEM::GetClass(), and UNIMPLEMENTED_FOR.
Referenced by CN_VISITOR::checkZoneItemConnection(), collidesWithArea(), collidesWithCourtyard(), DRAWING_TOOL::DrawVia(), PCB_SELECTION_TOOL::hitTestDistance(), DRC_RTREE::Insert(), CN_VISITOR::operator()(), DRAWING_TOOL::PlaceTuningPattern(), DRC_RTREE::QueryColliding(), ROUTER_PREVIEW_ITEM::ROUTER_PREVIEW_ITEM(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), and PCB_CONTROL::UpdateMessagePanel().
LSET BOARD::GetEnabledLayers | ( | ) | const |
A proxy function that calls the corresponding function in m_BoardSettings.
Definition at line 649 of file board.cpp.
References GetDesignSettings(), and BOARD_DESIGN_SETTINGS::GetEnabledLayers().
Referenced by PCB_CONTROL::AppendBoard(), PCB_ONE_LAYER_SELECTOR::buildList(), SELECT_COPPER_LAYERS_PAIR_DIALOG::buildList(), DIALOG_NET_INSPECTOR::DIALOG_NET_INSPECTOR(), DIALOG_PLOT::DIALOG_PLOT(), KIGFX::PCB_PAINTER::draw(), DRC_ENGINE::EvalRules(), ZONE_FILLER::Fill(), PCB_PLUGIN::format(), PCB_PLUGIN::formatBoardLayers(), GENDRILL_WRITER_BASE::GenDrillReportFile(), IPC2581_PLUGIN::generateCadLayers(), IPC2581_PLUGIN::generateLayerFeatures(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), PCB_LAYER_BOX_SELECTOR::getEnabledLayers(), PANEL_SETUP_LAYERS::getNonRemovableLayers(), PANEL_SETUP_LAYERS::getRemovedLayersWithItems(), PANEL_SETUP_BOARD_STACKUP::ImportSettingsFrom(), DIALOG_PLOT::init_Dialog(), DIALOG_EXPORT_SVG::initDialog(), HYPERLYNX_PAD_STACK::IsEmpty(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), BOARD_ITEM::layerMaskDescribe(), padNeedsUpdate(), PANEL_SETUP_BOARD_STACKUP::PANEL_SETUP_BOARD_STACKUP(), PCB_EASYEDAPRO_PARSER::ParseBoard(), DIALOG_PLOT::Plot(), PCB_CONTROL::pruneItemLayers(), APPEARANCE_CONTROLS::rebuildLayers(), CADSTAR_PCB_ARCHIVE_LOADER::remapUnsureLayers(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_SLIVER_CHECKER::Run(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), DIALOG_PRINT_PCBNEW::TransferDataToWindow(), PANEL_SETUP_LAYERS::TransferDataToWindow(), PCB_PROPERTIES_PANEL::updateLists(), PCB_EDIT_FRAME::UpdateUserInterface(), PAD::ViewGetLOD(), and HYPERLYNX_EXPORTER::writeSinglePadStack().
|
inline |
Definition at line 380 of file board.h.
References m_fileFormatVersionAtLoad.
Referenced by PCB_EDIT_FRAME::OpenProjectFiles().
|
inline |
Definition at line 313 of file board.h.
References m_fileName.
Referenced by AddGerberX2Header(), GERBER_JOBFILE_WRITER::addJSONGeneralSpecs(), PCB_EDIT_FRAME::canCloseWindow(), DIALOG_GEN_FOOTPRINT_POSITION::CreateAsciiFiles(), DIALOG_GEN_FOOTPRINT_POSITION::CreateGerberFiles(), GENCAD_EXPORTER::CreateHeaderInfoData(), DIALOG_BOARD_STATISTICS::DIALOG_BOARD_STATISTICS(), DIALOG_EXPORT_2581::DIALOG_EXPORT_2581(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), PCB_DRAW_PANEL_GAL::DisplayBoard(), PCB_EDIT_FRAME::doCloseWindow(), EXPORTER_STEP::Export(), PCB_EDIT_FRAME::Export_IDF3(), EXPORTER_STEP::EXPORTER_STEP(), BOARD_EDITOR_CONTROL::ExportSpecctraDSN(), DIALOG_EXPORT_SVG::ExportSVGFile(), PCB_EDIT_FRAME::ExportToGenCAD(), PCB_EDIT_FRAME::Files_io_from_id(), PCB_EDIT_FRAME::GenD356File(), DIALOG_GENDRILL::GenDrillAndMapFiles(), GENDRILL_WRITER_BASE::GenDrillReportFile(), IPC2581_PLUGIN::generateBOMSection(), IPC2581_PLUGIN::generateContentSection(), IPC2581_PLUGIN::generateStepSection(), PCB_EDIT_FRAME::GenFootprintsReport(), PCB_EDIT_FRAME::GetCurrentFileName(), PCB_BASE_EDIT_FRAME::GetDesignRulesPath(), PCBNEW_JOBS_HANDLER::getDrawingSheetProxyView(), GENDRILL_WRITER_BASE::getDrillFileName(), PCB_EDIT_FRAME::GetLastPath(), PANEL_SETUP_RULES::ImportSettingsFrom(), BOARD_EDITOR_CONTROL::ImportSpecctraSession(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), PCBNEW_JOBS_HANDLER::JobExportPdf(), PCBNEW_JOBS_HANDLER::JobExportPos(), FABMASTER::loadFootprints(), PCB_EDIT_FRAME::onBoardLoaded(), DIALOG_IMPORT_SETTINGS::OnBrowseClicked(), PCB_EDIT_FRAME::OnExportHyperlynx(), PCB_EDIT_FRAME::OnExportIDF3(), PCB_EDIT_FRAME::OnExportSTEP(), PCB_EDIT_FRAME::OnExportVRML(), DIALOG_GENDRILL::OnGenReportFile(), DIALOG_EXPORT_SVG::OnOutputDirectoryBrowseClicked(), DIALOG_GEN_FOOTPRINT_POSITION::OnOutputDirectoryBrowseClicked(), DIALOG_GENDRILL::OnOutputDirectoryBrowseClicked(), DIALOG_PLOT::OnOutputDirectoryBrowseClicked(), PLOT_CONTROLLER::OpenPlotfile(), ALTIUM_PCB::ParseModelsData(), EXPORT_SVG::Plot(), DIALOG_PLOT::Plot(), PCB_EDIT_FRAME::RecreateBOMFileFromBoard(), PCB_EDIT_FRAME::RecreateCmpFileFromBoard(), ResolveTextVar(), DIALOG_BOARD_STATISTICS::saveReportClicked(), PCB_EDIT_FRAME::SetLastPath(), StartPlotBoard(), PCB_EDIT_FRAME::UpdateTitle(), HYPERLYNX_EXPORTER::writeBoardInfo(), WriteDRCReport(), DRC_REPORT::WriteJsonReport(), and DRC_REPORT::WriteTextReport().
|
inline |
Get the first footprint on the board or nullptr.
This is used primarily by the footprint editor which knows there is only one.
Definition at line 414 of file board.h.
References m_footprints.
Referenced by FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), BuildFootprintPolygonOutlines(), FOOTPRINT_EDIT_FRAME::CanCloseFPFromBoard(), FOOTPRINT_EDIT_FRAME::canCloseWindow(), FOOTPRINT_EDIT_FRAME::ClearModify(), BOARD_ADAPTER::createBoardPolygon(), FOOTPRINT_EDITOR_CONTROL::CutCopyFootprint(), DIALOG_FOOTPRINT_CHECKER::DIALOG_FOOTPRINT_CHECKER(), DIALOG_CLEANUP_GRAPHICS::doCleanup(), FOOTPRINT_EDITOR_CONTROL::DuplicateFootprint(), PAD_TOOL::EnumeratePads(), PAD_TOOL::explodePad(), FOOTPRINT_EDITOR_CONTROL::ExportFootprint(), PCB_TOOL_BASE::footprint(), PCB_VIEWER_TOOLS::footprint(), FOOTPRINT_EDIT_FRAME::GetDocumentExtents(), FOOTPRINT_EDIT_FRAME::GetLoadedFPID(), DISPLAY_FOOTPRINTS_FRAME::GetModel(), FOOTPRINT_EDIT_FRAME::GetModel(), FOOTPRINT_VIEWER_FRAME::GetModel(), FOOTPRINT_WIZARD_FRAME::GetModel(), FP_TREE_SYNCHRONIZING_ADAPTER::GetValue(), GROUP_TOOL::Group(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), FOOTPRINT_EDITOR_CONTROL::Init(), PCB_CONTROL::InteractiveDelete(), ARRAY_CREATOR::Invoke(), FOOTPRINT_EDIT_FRAME::IsContentModified(), FOOTPRINT_EDIT_FRAME::IsCurrentFPFromBoard(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), FOOTPRINT_EDIT_FRAME::OnUpdateSaveFootprintToBoard(), FOOTPRINT_EDIT_FRAME::OpenProjectFiles(), PCB_CONTROL::Paste(), pasteFootprintItemsToFootprintEditor(), FOOTPRINT_EDITOR_CONTROL::Properties(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), DIALOG_FOOTPRINT_CHECKER::runChecks(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), FOOTPRINT_EDIT_FRAME::setupUIConditions(), GROUP_TOOL::Ungroup(), DISPLAY_FOOTPRINTS_FRAME::UpdateMsgPanel(), FOOTPRINT_WIZARD_FRAME::UpdateMsgPanel(), FOOTPRINT_EDIT_FRAME::UpdateTitle(), and DIALOG_FOOTPRINT_CHECKER::~DIALOG_FOOTPRINT_CHECKER().
|
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(), Remove(), FOOTPRINT::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().
|
inlineoverridevirtual |
Similar to GetPosition, but allows items to return their visual center rather than their anchor.
Reimplemented from EDA_ITEM.
Definition at line 370 of file board.h.
References GetBoundingBox(), and BOX2< Vec >::GetCenter().
|
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().
FOOTPRINT * BOARD::GetFootprint | ( | const VECTOR2I & | aPosition, |
PCB_LAYER_ID | aActiveLayer, | ||
bool | aVisibleOnly, | ||
bool | aIgnoreLocked = false |
||
) | const |
Get a footprint by its bounding rectangle at aPosition on aLayer.
If more than one footprint is at aPosition, then the closest footprint on the active layer is returned. The distance is calculated via manhattan distance from the center of the bounding rectangle to aPosition.
aPosition | A VECTOR2I object containing the position to test. |
aActiveLayer | Layer to test. |
aVisibleOnly | Search only the visible layers if true. |
aIgnoreLocked | Ignore locked footprints when true. |
Definition at line 2092 of file board.cpp.
References BOX2< Vec >::GetHeight(), BOX2< Vec >::GetWidth(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), IsBackLayer(), IsFootprintLayerVisible(), m_footprints, VECTOR2< T >::x, and VECTOR2< T >::y.
|
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=().
|
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 |
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 383 of file board.h.
References m_generator.
Referenced by PCB_EDIT_FRAME::OpenProjectFiles().
|
inline |
Definition at line 493 of file board.h.
References m_highLight, and HIGH_LIGHT_INFO::m_netCodes.
Referenced by DIALOG_GLOBAL_EDIT_TEARDROPS::buildFilterLists(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::buildFilterLists(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), and DIALOG_NET_INSPECTOR::OnBoardHighlightNetChanged().
BOARD_ITEM * BOARD::GetItem | ( | const KIID & | aID | ) | const |
Definition at line 1139 of file board.cpp.
References Drawings(), Footprints(), DELETED_BOARD_ITEM::GetInstance(), group, m_generators, m_groups, m_markers, m_NetInfo, EDA_ITEM::m_Uuid, niluuid, pad, Tracks(), and Zones().
Referenced by CollisionMatchesExpected(), ConvertKIIDsToCrossReferences(), PCB_BASE_FRAME::FocusOnItems(), PCB_BASE_FRAME::GetItem(), BOARD_INSPECTION_TOOL::InspectDRCError(), InvalidMatchesExpected(), DIALOG_DRC::OnDRCItemSelected(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), DIALOG_GENERATORS::OnItemSelected(), DIALOG_GENERATORS::OnRebuildTypeClick(), DIALOG_CLEANUP_GRAPHICS::OnSelectItem(), DIALOG_CLEANUP_TRACKS_AND_VIAS::OnSelectItem(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), ResolveDRCExclusions(), ResolveTextVar(), BOARD_COMMIT::Revert(), and DRC_TEST_PROVIDER_DISALLOW::Run().
|
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 1066 of file board.cpp.
References _.
const BOARD_ITEM_SET BOARD::GetItemSet | ( | ) |
Definition at line 2607 of file board.cpp.
References m_drawings, m_footprints, m_groups, m_markers, m_tracks, and m_zones.
Referenced by KIGIT_PCB_MERGE::compareBoards(), PCB_EDIT_FRAME::RebuildAndRefresh(), and PCB_EDIT_FRAME::RunActionPlugin().
|
inlinevirtualinherited |
Return the primary layer this item is on.
Reimplemented in FOOTPRINT, PAD, PCB_SHAPE, and ZONE.
Definition at line 225 of file board_item.h.
References BOARD_ITEM::m_layer.
Referenced by CN_CONNECTIVITY_ALGO::Add(), Add(), CN_LIST::Add(), BOARD_ADAPTER::addFootprintShapes(), STEP_PCB_MODEL::AddTrackSegment(), TEARDROP_MANAGER::areItemsInSameZone(), BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), EXPORTER_STEP::buildTrack3DShape(), PNS::ITEM::collideSimple(), TEARDROP_MANAGER::computeTeardropPolygon(), PCB_TUNING_PATTERN::CreateNew(), PCB_BASE_FRAME::CreateNewFootprint(), TEARDROP_MANAGER::createTeardrop(), BOARD_ADAPTER::createTrack(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_REFERENCE_IMAGE_PROPERTIES::DIALOG_REFERENCE_IMAGE_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), EDIT_TOOL::DragArcTrack(), KIGFX::PCB_PAINTER::draw(), PCB_TUNING_PATTERN::EditStart(), extractDiffPairCoupledItems(), EDIT_TOOL::FilletTracks(), TEARDROP_MANAGER::findAnchorPointsOnTrack(), TEARDROP_MANAGER::findTouchingTrack(), PCB_DIMENSION_BASE::Flip(), PCB_TARGET::Flip(), PCB_TEXT::Flip(), PCB_TRACK::Flip(), PCB_ARC::Flip(), PCB_PLUGIN::format(), FOOTPRINT::GetBoundingBox(), FOOTPRINT::GetLayer(), PAD::GetLayer(), PCB_GENERATOR::GetLayerSet(), getMatchingTextItem(), PCB_TRACK::GetMsgPanelInfo(), PCB_VIA::GetMsgPanelInfo(), GetPad(), FP_TEXT_GRID_TABLE::GetValueAsLong(), GENERAL_COLLECTOR::Inspect(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectConstraints(), BOARD_INSPECTION_TOOL::InspectDRCError(), BOARD_ITEM::IsOnCopperLayer(), itemIsIncludedByFilter(), FABMASTER::loadFootprints(), CADSTAR_PCB_ARCHIVE_LOADER::makeTracksFromShapes(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnAddField(), BOARD::cmp_items::operator()(), BOARD::cmp_drawings::operator()(), PCB_SHAPE::cmp_drawings::operator()(), FOOTPRINT::cmp_drawings::operator()(), PCB_TRACK::cmp_tracks::operator()(), PCB_REFERENCE_IMAGE_DESC::PCB_REFERENCE_IMAGE_DESC(), DRAWING_TOOL::PlaceImportedGraphics(), DRAWING_TOOL::PlaceTuningPattern(), BRDITEMS_PLOTTER::PlotDimension(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), BRDITEMS_PLOTTER::PlotPcbTarget(), DRC_ENGINE::ProcessAssertions(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), processTextItem(), PCB_CONTROL::pruneItemLayers(), PCB_TUNING_PATTERN::Remove(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), PCB_SELECTION_TOOL::Selectable(), FP_TEXT_GRID_TABLE::SetValueAsLong(), PCB_TUNING_PATTERN::ShowPropertiesDialog(), PCB_TARGET::Similarity(), PCB_TEXT::StyleFromSettings(), EDIT_TOOL::Swap(), GLOBAL_EDIT_TOOL::swapBoardItem(), PNS_KICAD_IFACE_BASE::syncArc(), PNS_KICAD_IFACE_BASE::syncTextItem(), PNS_KICAD_IFACE_BASE::syncTrack(), PNS_KICAD_IFACE_BASE::SyncWorld(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_MISC::testTextVars(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), TRACK_VIA_DESC::TRACK_VIA_DESC(), DIALOG_DIMENSION_PROPERTIES::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), DIALOG_REFERENCE_IMAGE_PROPERTIES::TransferDataToWindow(), PCB_TUNING_PATTERN::Update(), PCB_CONTROL::UpdateMessagePanel(), PCB_TEXT::ViewGetLayers(), PCB_TRACK::ViewGetLayers(), PCB_TEXT::ViewGetLOD(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), and DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem().
PCB_LAYER_ID BOARD::GetLayerID | ( | const wxString & | aLayerName | ) | const |
Return the ID of a layer.
Definition at line 516 of file board.cpp.
References GetStandardLayerName(), m_layers, PCB_LAYER_ID_COUNT, ToLAYER_ID(), and UNDEFINED_LAYER.
Referenced by PCBEXPR_VAR_REF::GetValue(), and PCB_PARSER::parseBoardStackup().
|
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(), GetLayerName(), 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 FOOTPRINT::ResolveTextVar().
wxString BOARD::GetLayerName | ( | PCB_LAYER_ID | aLayer | ) | const |
Return the name of a aLayer.
aLayer | is the PCB_LAYER_ID of the layer. |
Definition at line 536 of file board.cpp.
References GetStandardLayerName(), IsLayerEnabled(), m_layers, and LAYER::m_userName.
Referenced by GERBER_JOBFILE_WRITER::addJSONMaterialStackup(), DSN::SPECCTRA_DB::buildLayerMaps(), PCB_PROPERTIES_PANEL::createPGProperty(), PANEL_PCBNEW_COLOR_SETTINGS::createSwatches(), DIALOG_NET_INSPECTOR::DIALOG_NET_INSPECTOR(), DIALOG_PLOT::DIALOG_PLOT(), GRID_CELL_LAYER_RENDERER::Draw(), DRAWING_TOOL::DrawSpecificationStackup(), PCB_PLUGIN::formatBoardLayers(), GENDRILL_WRITER_BASE::GenDrillReportFile(), IPC2581_PLUGIN::generateCadLayers(), IPC2581_PLUGIN::generateContentStackup(), IPC2581_PLUGIN::generateDrillLayers(), IPC2581_PLUGIN::generateLayerSetDrill(), BOARD_ITEM::GetLayerName(), PCB_LAYER_BOX_SELECTOR::getLayerName(), PCB_LAYER_SELECTOR::getLayerName(), ZONE_SEARCH_HANDLER::getResultCell(), GRID_CELL_LAYER_SELECTOR::GetValue(), PRIVATE_LAYERS_GRID_TABLE::GetValue(), DIALOG_PLOT::init_Dialog(), DIALOG_EXPORT_SVG::initDialog(), DIALOG_PAD_PROPERTIES::initValues(), BOARD_INSPECTION_TOOL::InspectClearance(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::layerDesc(), DRC_TEST_PROVIDER_SLIVER_CHECKER::layerDesc(), BOARD_ITEM::layerMaskDescribe(), PCB_VIA::layerMaskDescribe(), PANEL_SETUP_BOARD_STACKUP::lazyBuildRowUI(), CADSTAR_PCB_ARCHIVE_LOADER::Load(), PCBNEW_PRINTOUT::OnPrintPage(), PCB_PARSER::parseBOARD_unchecked(), DIALOG_PLOT::Plot(), APPEARANCE_CONTROLS::rebuildLayers(), RENDER_3D_OPENGL::reload(), BOARD_INSPECTION_TOOL::reportHeader(), DIALOG_GLOBAL_DELETION::SetCurrentLayer(), ZONE_SETTINGS::SetupLayersList(), PANEL_SETUP_LAYERS::showBoardLayerNames(), StartPlotBoard(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), DIALOG_PRINT_PCBNEW::TransferDataToWindow(), BOARD_NETLIST_UPDATER::updateCopperZoneNets(), DIALOG_BOARD_STATISTICS::updateDrillGrid(), DIALOG_PAD_PROPERTIES::UpdateLayersDropdown(), HYPERLYNX_EXPORTER::writeDevices(), WriteDRCReport(), HYPERLYNX_EXPORTER::writeNetObjects(), HYPERLYNX_EXPORTER::writeSinglePadStack(), and HYPERLYNX_EXPORTER::writeStackupInfo().
|
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().
LAYER_T BOARD::GetLayerType | ( | PCB_LAYER_ID | aLayer | ) | const |
Return the type of the copper layer given by aLayer.
aLayer | A layer index, like B_Cu, etc. |
Definition at line 570 of file board.cpp.
References IsCopperLayer(), IsLayerEnabled(), LT_SIGNAL, m_layers, and LAYER::m_type.
Referenced by PCB_PLUGIN::formatBoardLayers(), DSN::SPECCTRA_DB::FromBOARD(), GetGerberFileFunctionAttribute(), ALTIUM_PCB::ParsePolygons6Data(), PANEL_SETUP_LAYERS::showLayerTypes(), and PANEL_SETUP_LAYERS::TransferDataFromWindow().
int BOARD::GetMaxClearanceValue | ( | ) | const |
Returns the maximum clearance value for any object on the board.
This considers the clearances from board design settings as well as embedded clearances in footprints, pads and zones. Includes electrical, physical, hole and edge clearances.
Definition at line 783 of file board.cpp.
References m_designSettings, m_footprints, m_zones, and pad.
Referenced by ZONE_FILLER::Fill(), DRC_CACHE_GENERATOR::Run(), PNS_KICAD_IFACE_BASE::SyncWorld(), and PAD::ViewBBox().
|
virtualinherited |
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 in LIB_FIELD, LIB_PIN, LIB_SHAPE, LIB_TEXT, LIB_TEXTBOX, SCH_BITMAP, SCH_BUS_WIRE_ENTRY, SCH_BUS_BUS_ENTRY, SCH_FIELD, SCH_JUNCTION, SCH_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_SHAPE, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TEXT, SCH_TEXTBOX, GERBER_DRAW_ITEM, PCB_GROUP, FOOTPRINT, PAD, PCB_DIM_ALIGNED, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIM_LEADER, PCB_DIM_CENTER, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, and ZONE.
Definition at line 288 of file eda_item.cpp.
Referenced by SELECTION_TOOL::doSelectionMenu().
|
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 1457 of file board.cpp.
References _, Footprints(), GetConnectivity(), m_tracks, pad, and PCB_VIA_T.
Referenced by PCB_CONTROL::UpdateMessagePanel().
std::set< wxString > BOARD::GetNetClassAssignmentCandidates | ( | ) | const |
Return the set of netname candidates for netclass assignment.
Definition at line 1752 of file board.cpp.
References m_NetInfo.
Referenced by DIALOG_BOARD_SETUP::DIALOG_BOARD_SETUP(), and PANEL_SETUP_RULES::onScintillaCharAdded().
|
inline |
Definition at line 858 of file board.h.
References NETINFO_LIST::GetNetCount(), and m_NetInfo.
Referenced by GENCAD_EXPORTER::CreateSignalsSection(), PCB_EASYEDAPRO_PARSER::ParseBoard(), PCB_EASYEDA_PARSER::ParseToBoardItemContainer(), and PCB_PARSER::parseZONE().
|
inline |
Definition at line 827 of file board.h.
References m_NetInfo.
Referenced by BOARD_EDITOR_CONTROL::AssignNetclass(), BOOST_AUTO_TEST_CASE(), CONNECTIVITY_DATA::Build(), DIALOG_GLOBAL_EDIT_TEARDROPS::buildFilterLists(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::buildFilterLists(), DIALOG_NET_INSPECTOR::buildNetsList(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), DSN::SPECCTRA_DB::exportNETCLASS(), DSN::SPECCTRA_DB::FromBOARD(), IPC2581_PLUGIN::generateLayerFeatures(), IPC2581_PLUGIN::generateLogicalNets(), FABMASTER::loadEtch(), FABMASTER::loadFootprints(), PCB_EDIT_FRAME::LoadProjectSettings(), FABMASTER::loadVias(), FABMASTER::loadZone(), FABMASTER::loadZones(), main(), APPEARANCE_CONTROLS::onNetclassContextMenu(), DIALOG_COPPER_ZONE::readNetInformation(), NET_GRID_TABLE::Rebuild(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), PCB_EDIT_FRAME::SaveProjectLocalSettings(), PCB_EDIT_FRAME::saveProjectSettings(), DIALOG_FIND::search(), NETS_SEARCH_HANDLER::Search(), RATSNEST_SEARCH_HANDLER::Search(), APPEARANCE_CONTROLS::showNetclass(), PCB_PROPERTIES_PANEL::updateLists(), BOARD_NETLIST_UPDATER::UpdateNetlist(), and HYPERLYNX_EXPORTER::writeNets().
unsigned BOARD::GetNodesCount | ( | int | aNet = -1 | ) | const |
aNet | Only count nodes belonging to this net. |
Definition at line 1372 of file board.cpp.
References Footprints(), and pad.
Referenced by DIALOG_NET_INSPECTOR::OnBoardItemAdded(), and DIALOG_NET_INSPECTOR::updateNet().
|
inline |
Definition at line 695 of file board.h.
References m_outlinesChainingEpsilon.
Referenced by BOARD_ADAPTER::createBoardPolygon(), GetBoardPolygonOutlines(), and DRC_TEST_PROVIDER_MISC::testOutline().
PAD * BOARD::GetPad | ( | const PCB_TRACK * | aTrace, |
ENDPOINT_T | aEndPoint | ||
) | const |
Find a pad connected to aEndPoint of aTrace.
aTrace | A pointer to a PCB_TRACK object to hit test against. |
aEndPoint | The end point of aTrace the hit test against. |
Definition at line 1857 of file board.cpp.
References PCB_TRACK::GetEndPoint(), BOARD_ITEM::GetLayer(), and GetPad().
Find a pad aPosition on aLayer.
aPosition | A VECTOR2I object containing the position to hit test. |
aLayerMask | A layer or layers to mask the hit test. |
Definition at line 1837 of file board.cpp.
References LSET::AllCuMask(), m_footprints, and pad.
Referenced by GetPad().
PAD * BOARD::GetPad | ( | std::vector< PAD * > & | aPadList, |
const VECTOR2I & | aPosition, | ||
LSET | aLayerMask | ||
) | const |
Locate the pad connected at aPosition on aLayer starting at list position aPad.
This function uses a fast search in this sorted pad list and it is faster than GetPadFast(). This list is a sorted pad list must be built before calling this function.
aPadList | is the list of pads candidates (a std::vector<PAD*>). |
aPosition | A VECTOR2I object containing the position to test. |
aLayerMask | A layer or layers to mask the hit test. |
Definition at line 1886 of file board.cpp.
References delta, pad, VECTOR2< T >::x, and VECTOR2< T >::y.
Return pad found at aPosition on aLayerMask using the fast search method.
The fast search method only works if the pad list has already been built.
aPosition | A VECTOR2I object containing the position to hit test. |
aLayerMask | A layer or layers to mask the hit test. |
Definition at line 1867 of file board.cpp.
References Footprints(), and pad.
const std::vector< PAD * > BOARD::GetPads | ( | ) | const |
Return a reference to a list of all the pads.
The returned list is not sorted and contains pointers to PADS, but those pointers do not convey ownership of the respective PADs.
Definition at line 2218 of file board.cpp.
References Footprints(), and pad.
Referenced by GENCAD_EXPORTER::CreatePadsShapesSection(), and DIALOG_COPPER_ZONE::sortNetsByPadCount().
|
inline |
Definition at line 649 of file board.h.
References m_paper.
Referenced by PCB_CONTROL::AppendBoard(), BOARD_NETLIST_UPDATER::estimateFootprintInsertionPosition(), PCB_PLUGIN::formatGeneral(), PCBNEW_JOBS_HANDLER::getDrawingSheetProxyView(), PCB_BASE_FRAME::GetPageSettings(), PCB_BASE_FRAME::GetPageSizeIU(), initializePlotter(), EASYEDA_PLUGIN::LoadBoard(), ALTIUM_PCB::Parse(), PCB_EASYEDAPRO_PARSER::ParseBoard(), EXPORT_SVG::Plot(), PCB_EDIT_FRAME::RebuildAndRefresh(), PCB_EDIT_FRAME::SetBoard(), PCB_EDIT_FRAME::SetPageSettings(), and StartPlotBoard().
|
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(), FOOTPRINT::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(), Remove(), FOOTPRINT::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 652 of file board.h.
References m_plotOptions.
Referenced by AddGerberX2Header(), BOARD_ADAPTER::addShape(), PLACEFILE_GERBER_WRITER::CreatePlaceFile(), PCB_PLUGIN::formatSetup(), PCB_BASE_FRAME::GetPlotSettings(), BOARD_ADAPTER::GetVisibleLayers(), PANEL_SETUP_FORMATTING::ImportSettingsFrom(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), and DIALOG_GENDRILL::UpdateDrillParams().
|
overridevirtual |
Reimplemented from EDA_ITEM.
Definition at line 450 of file board.cpp.
References BOARD_ITEM::ZeroOffset.
|
inline |
Definition at line 457 of file board.h.
References m_project.
Referenced by AddGerberX2Header(), GERBER_JOBFILE_WRITER::addJSONGeneralSpecs(), EXPORTER_STEP::buildFootprint3DShapes(), GENCAD_EXPORTER::CreateHeaderInfoData(), BOARD_INSPECTION_TOOL::DiffFootprint(), EXPORTER_STEP::EXPORTER_STEP(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), GetContextualTextVars(), PCBNEW_JOBS_HANDLER::getDrawingSheetProxyView(), GetFootprintLibraryTable(), idf_export_footprint(), PANEL_SETUP_RULES::ImportSettingsFrom(), PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportPdf(), PCBNEW_JOBS_HANDLER::JobExportStep(), PCBNEW_JOBS_HANDLER::JobExportSvg(), RENDER_3D_RAYTRACE::load3DModels(), RENDER_3D_OPENGL::load3dModels(), PCBNEW_JOBS_HANDLER::loadOverrideDrawingSheet(), DIALOG_PLOT::Plot(), APPEARANCE_CONTROLS::rebuildNets(), ResolveTextVar(), DRC_TEST_PROVIDER_LIBRARY_PARITY::Run(), SaveBoard(), ROUTER_TOOL::saveRouterDebugLog(), PCB_EDIT_FRAME::SetPageSettings(), StartPlotBoard(), DRC_TEST_PROVIDER_MISC::testTextVars(), DIALOG_FOOTPRINT_ASSOCIATIONS::TransferDataToWindow(), and WriteDRCReport().
|
inline |
Definition at line 348 of file board.h.
References m_properties.
Referenced by PCB_CONTROL::AppendBoard(), PCB_PLUGIN::formatProperties(), PCBNEW_JOBS_HANDLER::getDrawingSheetProxyView(), PCB_EDIT_FRAME::SetPageSettings(), and StartPlotBoard().
void BOARD::GetSortedPadListByXthenYCoord | ( | std::vector< PAD * > & | aVector, |
int | aNetCode = -1 |
||
) | const |
First empties then fills the vector with all pads and sorts them by increasing x coordinate, and for increasing y coordinate for same values of x coordinates.
The vector only holds pointers to the pads and those pointers are only references to pads which are owned by the BOARD through other links.
aVector | Where to put the pad pointers. |
aNetCode | = the netcode filter: = -1 to build the full pad list. = a given netcode to build the pad list relative to the given net |
Definition at line 1994 of file board.cpp.
References Footprints(), pad, and sortPadsByXthenYCoord().
|
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().
|
inlinestatic |
Return an "English Standard" name of a PCB layer when given aLayerNumber.
This function is static so it can be called without a BOARD instance. Use GetLayerName() if want the layer names of a specific BOARD, which could be different than the default if the user has renamed any copper layers.
aLayerId | is the layer identifier (index) to fetch. |
Definition at line 742 of file board.h.
References LayerName().
Referenced by BOARD(), GRID_CELL_LAYER_RENDERER::Draw(), DIALOG_EXPORT_SVG::ExportSVGFile(), GetLayerID(), BOARD_ITEM::GetLayerName(), PCB_LAYER_BOX_SELECTOR::getLayerName(), GetLayerName(), and GRID_CELL_LAYER_SELECTOR::GetValue().
|
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().
|
inline |
Definition at line 646 of file board.h.
References PCB_PLOT_PARAMS::GetPlotViaOnMaskLayer(), and m_plotOptions.
Referenced by PANEL_SETUP_MASK_AND_PASTE::TransferDataToWindow().
|
inline |
Definition at line 299 of file board.h.
References m_timeStamp.
Referenced by FOOTPRINT::BuildCourtyardCaches(), FOOTPRINT::GetBoundingBox(), FOOTPRINT::GetBoundingHull(), and DRC_ENGINE::RunTests().
|
inline |
Definition at line 655 of file board.h.
References m_titles.
Referenced by AddGerberX2Header(), GERBER_JOBFILE_WRITER::addJSONGeneralSpecs(), PCB_CONTROL::AppendBoard(), GENCAD_EXPORTER::CreateHeaderInfoData(), PCB_PLUGIN::formatGeneral(), GetContextualTextVars(), PCBNEW_JOBS_HANDLER::getDrawingSheetProxyView(), PCB_BASE_FRAME::GetTitleBlock(), ResolveTextVar(), PCB_EDIT_FRAME::SetPageSettings(), and StartPlotBoard().
|
inline |
std::tuple< int, double, double > BOARD::GetTrackLength | ( | const PCB_TRACK & | aTrack | ) | const |
Return data on the length and number of track segments connected to a given track.
This uses the connectivity data for the board to calculate connections
aTrack | Starting track (can also be a via) to check against for connection. |
Definition at line 2009 of file board.cpp.
References SEG::A, SEG::B, ERROR_INSIDE, EuclideanNorm(), BOARD_ITEM::GetBoard(), GetConnectivity(), GetDesignSettings(), BOARD_STACKUP::GetLayerDistance(), BOARD_DESIGN_SETTINGS::GetStackupDescriptor(), SEG::Length(), BOARD_DESIGN_SETTINGS::m_UseHeightForLengthCalcs, pad, PCB_ARC_T, PCB_VIA_T, and via.
Referenced by PCB_TUNING_PATTERN::GetMsgPanelInfo(), NETINFO_ITEM::GetMsgPanelInfo(), and PCB_TRACK::GetMsgPanelInfo().
|
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().
|
inline |
Definition at line 661 of file board.h.
References m_userUnits.
Referenced by PCB_DIMENSION_BASE::SetUnitsMode().
GAL_SET BOARD::GetVisibleElements | ( | ) | const |
Return a set of all the element categories that are visible.
Definition at line 709 of file board.cpp.
References PROJECT::GetLocalSettings(), m_project, PROJECT_LOCAL_SETTINGS::m_VisibleItems, and GAL_SET::set().
Referenced by APPEARANCE_CONTROLS::getVisibleObjects(), and PCB_EDIT_FRAME::setupUIConditions().
LSET BOARD::GetVisibleLayers | ( | ) | const |
A proxy function that calls the correspondent function in m_BoardSettings.
Definition at line 663 of file board.cpp.
References LSET::AllLayersMask(), PROJECT::GetLocalSettings(), m_project, and PROJECT_LOCAL_SETTINGS::m_VisibleLayers.
Referenced by ComputeBoundingBox(), KIGFX::PCB_PAINTER::draw(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), GENDRILL_WRITER_BASE::genDrillMapFile(), PCB_BASE_FRAME::GetCollectorsGuide(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), APPEARANCE_CONTROLS::getVisibleLayers(), DIALOG_DRC::OnDRCItemSelected(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), EDIT_TOOL::Properties(), PCB_SELECTION_TOOL::Selectable(), PCB_BASE_FRAME::SetPlotSettings(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), and PAD::ViewGetLOD().
|
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().
std::list< ZONE * > BOARD::GetZoneList | ( | bool | aIncludeZonesInFootprints = false | ) | const |
Definition at line 2156 of file board.cpp.
References m_footprints, and Zones().
|
overridevirtual |
Fetch the zone settings for this container.
Reimplemented from BOARD_ITEM_CONTAINER.
Definition at line 772 of file board.cpp.
References BOARD_DESIGN_SETTINGS::GetDefaultZoneSettings(), and GetDesignSettings().
Referenced by LEGACY_PLUGIN::loadSETUP().
BOARD::GroupLegalOpsField BOARD::GroupLegalOps | ( | const PCB_SELECTION & | selection | ) | const |
Check which selection tool group operations are legal given the selection.
Definition at line 2433 of file board.cpp.
References BOARD::GroupLegalOpsField::create, PCB_GROUP_T, BOARD::GroupLegalOpsField::removeItems, and BOARD::GroupLegalOpsField::ungroup.
|
inline |
The groups must maintain the following invariants.
These are checked by GroupsSanityCheck():
Definition at line 343 of file board.h.
References m_groups.
Referenced by PCB_CONTROL::AppendBoard(), PCB_PLUGIN::format(), GroupsSanityCheckInternal(), PCB_CONTROL::Paste(), and PCB_CONTROL::placeBoardItems().
|
inline |
wxString BOARD::GroupsSanityCheck | ( | bool | repair = false | ) |
Consistency check of internal m_groups structure.
repair | if true, modify groups structure until it passes the sanity check. |
Definition at line 2351 of file board.cpp.
References GroupsSanityCheckInternal().
Referenced by PCB_PARSER::resolveGroups(), and PCB_PLUGIN::SaveBoard().
wxString BOARD::GroupsSanityCheckInternal | ( | bool | repair | ) |
repair | if true, make one modification to groups structure that brings it closer to passing the sanity check. |
Definition at line 2364 of file board.cpp.
References Generators(), group, Groups(), and Remove().
Referenced by GroupsSanityCheck().
|
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(), FOOTPRINT::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.
|
inline |
void BOARD::HighLightON | ( | bool | aValue = true | ) |
Enable or disable net highlighting.
If a netcode >= 0 has been set with SetHighLightNet and aValue is true, the net will be highlighted. If aValue is false, net highlighting will be disabled regardless of the highlight netcode being set.
Definition at line 2341 of file board.cpp.
References InvokeListeners(), m_highLight, HIGH_LIGHT_INFO::m_highLightOn, and BOARD_LISTENER::OnBoardHighlightNetChanged().
Referenced by PCB_EDIT_FRAME::ExecuteRemoteCommand(), BOARD_INSPECTION_TOOL::highlightNet(), HighLightOFF(), and APPEARANCE_CONTROLS::onNetclassContextMenu().
|
inlinevirtualinherited |
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 in PCB_TUNING_PATTERN, LIB_ITEM, LIB_PIN, LIB_SHAPE, LIB_TEXT, LIB_TEXTBOX, SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_JUNCTION, SCH_LABEL_BASE, SCH_LINE, SCH_NO_CONNECT, SCH_PIN, SCH_SHAPE, SCH_SHEET, SCH_SYMBOL, SCH_TEXT, SCH_TEXTBOX, DS_DRAW_ITEM_BASE, DS_DRAW_ITEM_POLYPOLYGONS, DS_DRAW_ITEM_RECT, DS_DRAW_ITEM_TEXT, DS_DRAW_ITEM_BITMAP, PCB_GROUP, FOOTPRINT, PAD, PCB_DIMENSION_BASE, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, PCB_ARC, ZONE, and GERBER_DRAW_ITEM.
Definition at line 225 of file eda_item.h.
|
inlinevirtualinherited |
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 in RATSNEST_VIEW_ITEM, SCH_SHEET, PCB_DIMENSION_BASE, PCB_TEXT, PCB_TEXTBOX, LIB_FIELD, LIB_ITEM, LIB_PIN, LIB_SHAPE, LIB_TEXT, LIB_TEXTBOX, SCH_BITMAP, SCH_BUS_ENTRY_BASE, SCH_FIELD, SCH_JUNCTION, SCH_LABEL_BASE, SCH_LINE, SCH_MARKER, SCH_NO_CONNECT, SCH_PIN, SCH_SHAPE, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TEXT, SCH_TEXTBOX, DS_DRAW_ITEM_BASE, DS_DRAW_ITEM_LINE, DS_DRAW_ITEM_POLYPOLYGONS, DS_DRAW_ITEM_RECT, DS_DRAW_ITEM_PAGE, DS_DRAW_ITEM_TEXT, DS_DRAW_ITEM_BITMAP, PCB_GROUP, FOOTPRINT, PCB_TUNING_PATTERN, PAD, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TARGET, PCB_TRACK, PCB_ARC, PCB_VIA, ZONE, and GERBER_DRAW_ITEM.
Definition at line 212 of file eda_item.h.
Referenced by PCB_GRID_HELPER::AlignToNearestPad(), PL_SELECTION_TOOL::guessSelectionCandidates(), EE_SELECTION_TOOL::GuessSelectionCandidates(), LIB_ITEM::HitTest(), DS_DRAW_ITEM_BASE::HitTest(), EE_COLLECTOR::Inspect(), GENERAL_COLLECTOR::Inspect(), GERBER_COLLECTOR::Inspect(), PCB_SELECTION_TOOL::selectionContains(), and PCB_SELECTION_TOOL::selectMultiple().
void BOARD::IncrementTimeStamp | ( | ) |
Definition at line 251 of file board.cpp.
References m_CachesMutex, m_CopperItemRTreeCache, m_CopperZoneRTreeCache, m_DRCCopperZones, m_DRCMaxClearance, m_DRCMaxPhysicalClearance, m_DRCZones, m_EnclosedByAreaCache, m_IntersectsAreaCache, m_IntersectsBCourtyardCache, m_IntersectsCourtyardCache, m_IntersectsFCourtyardCache, m_LayerExpressionCache, m_timeStamp, m_ZoneBBoxCache, and m_ZoneIsolatedIslandsMap.
Referenced by ZONE_FILLER_TOOL::FillAllZones(), DRC_ENGINE::InitEngine(), PCB_BASE_FRAME::OnModify(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), BOARD_COMMIT::Revert(), DRC_ENGINE::RunTests(), and ZONE_FILLER_TOOL::ZoneFillDirty().
|
inlineprivate |
Definition at line 1252 of file board.h.
References m_listeners.
Referenced by Add(), FinalizeBulkAdd(), FinalizeBulkRemove(), HighLightON(), OnItemChanged(), OnItemsChanged(), OnRatsnestChanged(), Remove(), ResetNetHighLight(), SetHighLightNet(), and SynchronizeNetsAndNetClasses().
|
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().
|
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().
bool BOARD::IsElementVisible | ( | GAL_LAYER_ID | aLayer | ) | const |
Test whether a given element category is visible.
aLayer | is from the enum by the same name. |
Definition at line 715 of file board.cpp.
References GAL_LAYER_ID_START, PROJECT::GetLocalSettings(), m_project, and PROJECT_LOCAL_SETTINGS::m_VisibleItems.
Referenced by ComputeBoundingBox(), KIGFX::PCB_PAINTER::draw(), FOOTPRINT::GetBoundingBox(), PCB_BASE_FRAME::GetCollectorsGuide(), PCB_SELECTION_TOOL::getCollectorsGuide(), BOARD_ADAPTER::GetVisibleLayers(), PCB_EDIT_FRAME::IsElementVisible(), IsFootprintLayerVisible(), PCB_SELECTION_TOOL::Selectable(), PCBNEW_PRINTOUT::setupViewLayers(), and PCB_DRAW_PANEL_GAL::SyncLayersVisibility().
|
inline |
Definition at line 372 of file board.h.
References m_drawings, m_footprints, m_tracks, and m_zones.
Referenced by BOARD_NETLIST_UPDATER::estimateFootprintInsertionPosition(), PCB_EDITOR_CONDITIONS::hasItemsFunc(), EDIT_TOOL::Init(), and DIALOG_BOARD_REANNOTATE::OnApplyClick().
|
inlineinherited |
Definition at line 107 of file eda_item.h.
References ENTERED, and EDA_ITEM::m_flags.
Referenced by KIGFX::PCB_PAINTER::draw().
|
inline |
Find out if the board is being used to hold a single footprint for editing/viewing.
Definition at line 306 of file board.h.
References m_boardUse.
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), ComputeBoundingBox(), BOARD_ADAPTER::createBoardPolygon(), PCB_DRAW_PANEL_GAL::DisplayBoard(), FOOTPRINT::GetBoundingBox(), FOOTPRINT::GetBoundingHull(), FOOTPRINT::GetLayerBoundingBox(), BOARD_ADAPTER::InitSettings(), and PCB_BASE_FRAME::loadFootprint().
bool BOARD::IsFootprintLayerVisible | ( | PCB_LAYER_ID | aLayer | ) | const |
Expect either of the two layers on which a footprint can reside, and returns whether that layer is visible.
aLayer | is one of the two allowed layers for footprints: F_Cu or B_Cu |
Definition at line 754 of file board.cpp.
References B_Cu, F_Cu, IsElementVisible(), LAYER_FOOTPRINTS_BK, and LAYER_FOOTPRINTS_FR.
Referenced by GetFootprint().
|
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().
|
inline |
Definition at line 509 of file board.h.
References m_highLight, and HIGH_LIGHT_INFO::m_highLightOn.
Referenced by PCB_EDIT_FRAME::ExecuteRemoteCommand(), and DIALOG_NET_INSPECTOR::OnBoardHighlightNetChanged().
|
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().
bool BOARD::IsLayerEnabled | ( | PCB_LAYER_ID | aLayer | ) | const |
A proxy function that calls the correspondent function in m_BoardSettings tests whether a given layer is enabled.
aLayer | = The layer to be tested |
Definition at line 675 of file board.cpp.
References GetDesignSettings(), and BOARD_DESIGN_SETTINGS::IsLayerEnabled().
Referenced by IPC2581_PLUGIN::addPadStack(), GRID_CELL_LAYER_SELECTOR::BeginEdit(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_REFERENCE_IMAGE_PROPERTIES::DIALOG_REFERENCE_IMAGE_PROPERTIES(), DIALOG_TEXTBOX_PROPERTIES::DIALOG_TEXTBOX_PROPERTIES(), ALTIUM_PCB::GetKicadLayersToIterate(), GetLayerName(), GetLayerType(), BOARD_ADAPTER::Is3dLayerEnabled(), PCB_LAYER_SELECTOR::isLayerEnabled(), SetLayerName(), SetLayerType(), PANEL_SETUP_LAYERS::setUserDefinedLayerCheckBoxes(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
bool BOARD::IsLayerVisible | ( | PCB_LAYER_ID | aLayer | ) | const |
A proxy function that calls the correspondent function in m_BoardSettings tests whether a given layer is visible.
aLayer | is the layer to be tested. |
Definition at line 655 of file board.cpp.
References GetDesignSettings(), PROJECT::GetLocalSettings(), BOARD_DESIGN_SETTINGS::IsLayerEnabled(), m_project, and PROJECT_LOCAL_SETTINGS::m_VisibleLayers.
Referenced by FOOTPRINT::GetBoundingBox(), PCB_BASE_FRAME::GetDocumentExtents(), BOARD_ADAPTER::GetVisibleLayers(), ROUTER_TOOL::handleLayerSwitch(), BOARD_ADAPTER::Is3dLayerEnabled(), PCB_CONTROL::LayerNext(), PCB_CONTROL::LayerPrev(), PCB_SELECTION_TOOL::Selectable(), PCB_DRAW_PANEL_GAL::SyncLayersVisibility(), and PCB_REFERENCE_IMAGE::ViewGetLOD().
|
virtualinherited |
Reimplemented in FOOTPRINT, and PAD.
Definition at line 73 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), GetBoardUse(), BOARD_ITEM::GetParentGroup(), BOARD_ITEM::IsLocked(), and BOARD_ITEM::m_isLocked.
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), KI_TEST::CheckFpShape(), KI_TEST::CheckFpZone(), DIALOG_GROUP_PROPERTIES::DIALOG_GROUP_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), EDIT_TOOL::DragArcTrack(), EDIT_TOOL::FilletTracks(), PCB_PLUGIN::format(), DSN::SPECCTRA_DB::FromSESSION(), PCB_GROUP::GetMsgPanelInfo(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_SHAPE::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), ZONE::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfoBase_Common(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), PCB_SELECTION_CONDITIONS::HasLockedItems(), PCB_SELECTION_CONDITIONS::HasUnlockedItems(), ROUTER_TOOL::InlineDrag(), GENERAL_COLLECTOR::Inspect(), PCB_CONTROL::InteractiveDelete(), BOARD_ITEM::IsLocked(), PAD::IsLocked(), PCB_SELECTION_TOOL::itemPassesFilter(), CADSTAR_PCB_ARCHIVE_LOADER::makeTracksFromShapes(), TRACKS_CLEANER::mergeCollinearSegments(), BOARD_EDITOR_CONTROL::modifyLockSelected(), PCB_POINT_EDITOR::OnSelectionChange(), ZONE_SETTINGS::operator<<(), LINE_FILLET_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), processTextItem(), PCB_SELECTION_TOOL::RequestSelection(), PNS_KICAD_IFACE_BASE::syncArc(), PNS_KICAD_IFACE_BASE::syncTrack(), PNS_KICAD_IFACE_BASE::syncVia(), DIALOG_REFERENCE_IMAGE_PROPERTIES::TransferDataToWindow(), DIALOG_TEXTBOX_PROPERTIES::TransferDataToWindow(), BOARD_ITEM::ViewGetLayers(), PCB_SHAPE::ViewGetLayers(), PCB_TEXT::ViewGetLayers(), PCB_TEXTBOX::ViewGetLayers(), PCB_TRACK::ViewGetLayers(), and PCB_VIA::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().
|
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(), FOOTPRINT::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().
|
inlinevirtualinherited |
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 in PCB_GROUP, FOOTPRINT, PAD, PCB_VIA, and ZONE.
Definition at line 290 of file board_item.h.
References BOARD_ITEM::m_layer.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), DRC_TEST_PROVIDER_SOLDER_MASK::checkMaskAperture(), CN_VISITOR::checkZoneItemConnection(), BOARD_ADAPTER::createLayers(), existsOnLayerFunc(), GRAPHICS_CLEANER::fixBoardOutlines(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), GENERAL_COLLECTOR::Inspect(), PCB_LAYER_COLLECTOR::Inspect(), BOARD_INSPECTION_TOOL::InspectClearance(), isEdge(), PNS_KICAD_IFACE::IsItemVisible(), BOARD_COMMIT::Push(), ROUTER_PREVIEW_ITEM::ROUTER_PREVIEW_ITEM(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), PCB_EDIT_FRAME::SetActiveLayer(), PCB_BASE_EDIT_FRAME::ShowGraphicItemPropertiesDialog(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskBridges(), and PCB_CONTROL::UpdateMessagePanel().
|
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().
int BOARD::LayerDepth | ( | PCB_LAYER_ID | aStartLayer, |
PCB_LAYER_ID | aEndLayer | ||
) | const |
Definition at line 637 of file board.cpp.
References B_Cu, F_Cu, GetCopperLayerCount(), and ToLAYER_ID().
Referenced by DIALOG_TRACK_VIA_PROPERTIES::getLayerDepth().
|
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(), GetCopperLayerCount(), GetEnabledLayers(), 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 1209 of file board.h.
References m_legacyTeardrops.
Referenced by DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), PCB_PLUGIN::formatGeneral(), DIALOG_TRACK_VIA_PROPERTIES::onCurvedEdgesUpdateUi(), DIALOG_PAD_PROPERTIES::onTeardropCurvePointsUpdateUi(), DIALOG_PAD_PROPERTIES::onTeardropsUpdateUi(), DIALOG_TRACK_VIA_PROPERTIES::onTeardropsUpdateUi(), DIALOG_PAD_PROPERTIES::OnUpdateUI(), PCB_SELECTION_TOOL::Selectable(), and TEARDROP_MANAGER::UpdateTeardrops().
void BOARD::MapNets | ( | const BOARD * | aDestBoard | ) |
Map all nets in the given board to nets with the same name (if any) in the destination board.
This allows us to share layouts which came from the same hierarchical sheet in the schematic.
Definition at line 2252 of file board.cpp.
References AllConnectedItems(), FindNet(), and NETINFO_ITEM::SetNetCode().
|
inline |
Definition at line 330 of file board.h.
References m_markers.
Referenced by PCB_DRAW_PANEL_GAL::DisplayBoard(), DRC_ITEMS_PROVIDER::GetCount(), DIALOG_DRC::OnDRCItemRClick(), DIALOG_PLOT::reInitDialog(), ResolveDRCExclusions(), DIALOG_FIND::search(), DRC_ITEMS_PROVIDER::SetSeverities(), and UpdateRatsnestExclusions().
|
inline |
int BOARD::MatchDpSuffix | ( | const wxString & | aNetName, |
wxString & | aComplementNet | ||
) |
Fetch the coupled netname for a given net.
This accepts netnames suffixed by 'P', 'N', '+', '-', as well as additional numbers and underscores following the suffix. So NET_P_123 is a valid positive net name matched to NET_N_123.
Definition at line 1663 of file board.cpp.
Referenced by DpCoupledNet(), PNS_PCBNEW_RULE_RESOLVER::DpNetPair(), and PNS_PCBNEW_RULE_RESOLVER::DpNetPolarity().
|
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.
|
overridevirtual |
Move this object.
aMoveVector | the move vector for this object. |
Reimplemented from BOARD_ITEM.
Definition at line 462 of file board.cpp.
References GENERAL_COLLECTOR::BoardLevelItems, and Visit().
Referenced by CADSTAR_PCB_ARCHIVE_PLUGIN::LoadBoard(), EASYEDA_PLUGIN::LoadBoard(), ALTIUM_PCB::Parse(), and PCB_EASYEDAPRO_PARSER::ParseBoard().
|
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.
void BOARD::OnItemChanged | ( | BOARD_ITEM * | aItem | ) |
Notify the board and its listeners that an item on the board has been modified in some way.
Definition at line 2301 of file board.cpp.
References InvokeListeners(), and BOARD_LISTENER::OnBoardItemChanged().
Referenced by PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), and BOARD_COMMIT::Revert().
void BOARD::OnItemsChanged | ( | std::vector< BOARD_ITEM * > & | aItems | ) |
Notify the board and its listeners that an item on the board has been modified in some way.
Definition at line 2307 of file board.cpp.
References InvokeListeners(), and BOARD_LISTENER::OnBoardItemsChanged().
Referenced by BOARD_COMMIT::Push(), BOARD_COMMIT::Revert(), and DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataFromWindow().
void BOARD::OnRatsnestChanged | ( | ) |
Notify the board and its listeners that the ratsnest has been recomputed.
Definition at line 2313 of file board.cpp.
References InvokeListeners(), and BOARD_LISTENER::OnBoardRatsnestChanged().
Referenced by PCB_BASE_FRAME::Compile_Ratsnest(), BOARD_COMMIT::Push(), and BOARD_COMMIT::Revert().
|
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().
|
overridevirtual |
Implements BOARD_ITEM.
Definition at line 2622 of file board.cpp.
References TITLE_BLOCK::GetComment(), TITLE_BLOCK::GetContextualTextVars(), PAGE_INFO::GetCustomHeightMils(), PAGE_INFO::GetCustomWidthMils(), NETINFO_LIST::GetNetCount(), PAGE_INFO::GetPaperId(), PAGE_INFO::GetSizeMils(), PAGE_INFO::GetWxOrientation(), m_designSettings, m_NetInfo, m_paper, m_properties, m_titles, NETINFO_LIST::NetsByName(), and EDA_ITEM::Type().
|
overridevirtual |
Removes an item from the container.
Implements BOARD_ITEM_CONTAINER.
Definition at line 970 of file board.cpp.
References alg::delete_matching(), EDA_ITEM::GetFlags(), NETINFO_LIST::GetNetItem(), BOARD_ITEM::GetParentGroup(), InvokeListeners(), m_connectivity, m_drawings, m_footprints, m_generators, m_groups, m_markers, m_NetInfo, m_tracks, m_zones, BOARD_LISTENER::OnBoardItemRemoved(), pad, PCB_ARC_T, 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_GENERATOR_T, PCB_GROUP_T, PCB_MARKER_T, PCB_NETINFO_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TARGET_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, PCB_GROUP::RemoveItem(), NETINFO_LIST::RemoveNet(), EDA_ITEM::SetFlags(), STRUCT_DELETED, EDA_ITEM::Type(), and NETINFO_LIST::UNCONNECTED.
Referenced by NET_SELECTOR_COMBOPOPUP::Accept(), TRACKS_CLEANER::deleteDanglingTracks(), TEARDROP_MANAGER::DeleteTrackToTrackTeardrops(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), GroupsSanityCheckInternal(), FABMASTER::loadZones(), TRACKS_CLEANER::mergeCollinearSegments(), DIALOG_NET_INSPECTOR::onDeleteNet(), DIALOG_NET_INSPECTOR::onRenameNet(), BOARD_COMMIT::Push(), TRACKS_CLEANER::removeItems(), TEARDROP_MANAGER::RemoveTeardrops(), BOARD_COMMIT::Revert(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), GROUP_TOOL::Ungroup(), and TEARDROP_MANAGER::UpdateTeardrops().
void BOARD::RemoveAllListeners | ( | ) |
Remove all listeners.
Definition at line 2295 of file board.cpp.
References m_listeners.
Referenced by PCB_EDIT_FRAME::~PCB_EDIT_FRAME().
void BOARD::RemoveListener | ( | BOARD_LISTENER * | aListener | ) |
Remove the specified listener.
If it has not been added before, it will do nothing.
Definition at line 2283 of file board.cpp.
References m_listeners.
Referenced by DIALOG_GENERATORS::~DIALOG_GENERATORS(), and DIALOG_NET_INSPECTOR::~DIALOG_NET_INSPECTOR().
|
inline |
Definition at line 832 of file board.h.
References m_NetInfo, and NETINFO_LIST::RemoveUnusedNets().
Referenced by DISPLAY_FOOTPRINTS_FRAME::InitDisplay(), DISPLAY_FOOTPRINTS_FRAME::ReloadFootprint(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), and BOARD_NETLIST_UPDATER::UpdateNetlist().
|
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().
void BOARD::ResetNetHighLight | ( | ) |
Reset all high light data to the init state.
Definition at line 2319 of file board.cpp.
References HIGH_LIGHT_INFO::Clear(), InvokeListeners(), m_highLight, m_highLightPrevious, and BOARD_LISTENER::OnBoardHighlightNetChanged().
Referenced by PCB_EDIT_FRAME::Clear_Pcb(), BOARD_INSPECTION_TOOL::ClearHighlight(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), and BOARD_INSPECTION_TOOL::highlightNet().
std::vector< PCB_MARKER * > BOARD::ResolveDRCExclusions | ( | bool | aCreateMarkers | ) |
Rebuild DRC markers from the serialized data in BOARD_DESIGN_SETTINGS.
aCreateMarkers | if true, create markers from serialized data; if false only use serialized data to set existing markers to excluded. The former is used on board load; the later after a DRC. |
Definition at line 320 of file board.cpp.
References PCB_MARKER::Deserialize(), BOARD_ITEM::GetBoard(), DELETED_BOARD_ITEM::GetInstance(), GetItem(), MARKER_BASE::GetRCItem(), m_designSettings, Markers(), and MARKER_BASE::SetExcluded().
Referenced by LoadBoard().
bool BOARD::ResolveTextVar | ( | wxString * | token, |
int | aDepth | ||
) | const |
Definition at line 393 of file board.cpp.
References GetFileName(), GetItem(), GetProject(), PROJECT::GetProjectName(), GetTitleBlock(), m_project, m_properties, PCB_FOOTPRINT_T, FOOTPRINT::ResolveTextVar(), and EDA_ITEM::Type().
Referenced by DIALOG_GEN_FOOTPRINT_POSITION::CreateAsciiFiles(), DIALOG_GEN_FOOTPRINT_POSITION::CreateGerberFiles(), DIALOG_EXPORT_SVG::ExportSVGFile(), DIALOG_GENDRILL::GenDrillAndMapFiles(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), DIALOG_PLOT::OnOutputDirectoryBrowseClicked(), PLOT_CONTROLLER::OpenPlotfile(), and DIALOG_PLOT::Plot().
Rotate this object.
aRotCentre | the rotation center point. |
Reimplemented in PCB_REFERENCE_IMAGE, ZONE, PCB_GROUP, FOOTPRINT, PCB_TUNING_PATTERN, PAD, PCB_DIMENSION_BASE, PCB_DIM_ORTHOGONAL, PCB_MARKER, PCB_SHAPE, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, and PCB_ARC.
Definition at line 289 of file board_item.cpp.
References EDA_ITEM::GetClass().
Referenced by EDIT_TOOL::MoveExact(), and TransformItem().
|
inlinevirtualinherited |
Invoke a function on all children.
Reimplemented in PCB_GROUP, and FOOTPRINT.
Definition at line 195 of file board_item.h.
Referenced by BOARD_COMMIT::dirtyIntersectingZones(), and PCB_PARSER::resolveGroups().
|
inlinevirtualinherited |
Invoke a function on all descendants.
Reimplemented in PCB_GROUP, and FOOTPRINT.
Definition at line 201 of file board_item.h.
Referenced by BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), PCB_BASE_FRAME::FocusOnItems(), ARRAY_CREATOR::Invoke(), PCB_GRID_HELPER::queryVisible(), PCB_SELECTION_TOOL::RequestSelection(), and CLIPBOARD_IO::SaveSelection().
void BOARD::SanitizeNetcodes | ( | ) |
Definition at line 2266 of file board.cpp.
References AllConnectedItems(), FindNet(), and NETINFO_LIST::ORPHANED.
Referenced by PCB_BASE_EDIT_FRAME::PutDataInPreviousState().
|
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().
int BOARD::SetAreasNetCodesFromNetNames | ( | ) |
Set the .m_NetCode member of all copper areas, according to the area Net Name The SetNetCodesFromNetNames is an equivalent to net name, for fast comparisons.
However the Netcode is an arbitrary equivalence, it must be set after each netlist read or net change Must be called after pad netcodes are calculated
Definition at line 1803 of file board.cpp.
References NETINFO_ITEM::GetNetCode(), NETINFO_ITEM::SetNetCode(), NETINFO_LIST::UNCONNECTED, and Zones().
Referenced by NETINFO_LIST::buildListOfNets().
|
inline |
Set what the board is going to be used for.
aUse | is the flag |
Definition at line 288 of file board.h.
References m_boardUse.
Referenced by FOOTPRINT_EDIT_FRAME::Clear_Pcb(), DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME(), FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), and PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL().
|
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().
void BOARD::SetCopperLayerCount | ( | int | aCount | ) |
Definition at line 631 of file board.cpp.
References GetDesignSettings(), and BOARD_DESIGN_SETTINGS::SetCopperLayerCount().
Referenced by PCAD2KICAD::PCAD_PCB::AddToBoard(), PCB_CONTROL::AppendBoard(), PCB_EDIT_FRAME::Clear_Pcb(), FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), EAGLE_PLUGIN::LoadBoard(), EASYEDA_PLUGIN::LoadBoard(), CADSTAR_PCB_ARCHIVE_LOADER::loadBoardStackup(), LEGACY_PLUGIN::loadGENERAL(), EAGLE_PLUGIN::loadLayerDefs(), ALTIUM_PCB::ParseBoard6Data(), and PCB_PARSER::parseLayers().
void BOARD::SetElementVisibility | ( | GAL_LAYER_ID | aLayer, |
bool | aNewState | ||
) |
Change the visibility of an element category.
aLayer | is from the enum by the same name. |
aNewState | is the new visibility state of the element category. |
Definition at line 721 of file board.cpp.
References Footprints(), GAL_LAYER_ID_START, PROJECT::GetLocalSettings(), LAYER_RATSNEST, m_project, PROJECT_LOCAL_SETTINGS::m_VisibleItems, pad, GAL_SET::set(), Tracks(), and Zones().
Referenced by APPEARANCE_CONTROLS::onObjectVisibilityChanged(), PCB_EDIT_FRAME::SetElementVisibility(), APPEARANCE_CONTROLS::SetObjectVisible(), SetVisibleAlls(), and SetVisibleElements().
void BOARD::SetEnabledLayers | ( | LSET | aLayerMask | ) |
A proxy function that calls the correspondent function in m_BoardSettings.
aLayerMask | the new bit-mask of enabled layers. |
Definition at line 669 of file board.cpp.
References GetDesignSettings(), and BOARD_DESIGN_SETTINGS::SetEnabledLayers().
Referenced by PCB_CONTROL::AppendBoard(), PCB_EDIT_FRAME::Clear_Pcb(), FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), CADSTAR_PCB_ARCHIVE_LOADER::loadBoardStackup(), LEGACY_PLUGIN::loadGENERAL(), FABMASTER::loadLayers(), PCB_EASYEDAPRO_PARSER::ParseBoard(), PCB_PARSER::parseLayers(), CADSTAR_PCB_ARCHIVE_LOADER::remapUnsureLayers(), and PANEL_SETUP_LAYERS::TransferDataFromWindow().
|
inline |
Definition at line 379 of file board.h.
References m_fileFormatVersionAtLoad.
Referenced by LEGACY_PLUGIN::LoadBoard(), and PCB_PARSER::parseHeader().
|
inline |
Definition at line 311 of file board.h.
References m_fileName.
Referenced by FOOTPRINT_EDIT_FRAME::Clear_Pcb(), PCB_EDIT_FRAME::Clear_Pcb(), PCB_EDIT_FRAME::doAutoSave(), PCB_EDIT_FRAME::Files_io_from_id(), FABMASTER::LoadBoard(), ALTIUM_CIRCUIT_STUDIO_PLUGIN::LoadBoard(), ALTIUM_CIRCUIT_MAKER_PLUGIN::LoadBoard(), ALTIUM_DESIGNER_PLUGIN::LoadBoard(), SOLIDWORKS_PCB_PLUGIN::LoadBoard(), CLIPBOARD_IO::LoadBoard(), EAGLE_PLUGIN::LoadBoard(), EASYEDA_PLUGIN::LoadBoard(), EASYEDAPRO_PLUGIN::LoadBoard(), FABMASTER_PLUGIN::LoadBoard(), PCB_PLUGIN::LoadBoard(), LEGACY_PLUGIN::LoadBoard(), PCAD_PLUGIN::LoadBoard(), PCB_EDIT_FRAME::OpenProjectFiles(), and PCB_EDIT_FRAME::SavePcbFile().
|
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(), FOOTPRINT::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(), Remove(), FOOTPRINT::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().
|
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 |
Definition at line 382 of file board.h.
References m_generator.
Referenced by PCB_PARSER::parseBOARD_unchecked().
void BOARD::SetHighLightNet | ( | int | aNetCode, |
bool | aMulti = false |
||
) |
Select the netcode to be highlighted.
aNetCode | is the net to highlight. |
aMulti | is true if you want to add a highlighted net without clearing the old one. |
Definition at line 2328 of file board.cpp.
References InvokeListeners(), m_highLight, HIGH_LIGHT_INFO::m_netCodes, and BOARD_LISTENER::OnBoardHighlightNetChanged().
Referenced by PCB_EDIT_FRAME::ExecuteRemoteCommand(), BOARD_INSPECTION_TOOL::highlightNet(), and APPEARANCE_CONTROLS::onNetclassContextMenu().
|
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().
|
inlineinherited |
Definition at line 156 of file eda_item.h.
References EDA_ITEM::ClearFlags(), IS_SHOWN_AS_BITMAP, and EDA_ITEM::SetFlags().
|
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(), FOOTPRINT::Flip(), PCB_DIMENSION_BASE::Flip(), PCB_TARGET::Flip(), PCB_TEXT::Flip(), PCB_TRACK::Flip(), PCB_ARC::Flip(), FOOTPRINT::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().
bool BOARD::SetLayerDescr | ( | PCB_LAYER_ID | aIndex, |
const LAYER & | aLayer | ||
) |
Return the type of the copper layer given by aLayer.
Definition at line 504 of file board.cpp.
References arrayDim(), and m_layers.
Referenced by PCB_PARSER::parseLayers().
bool BOARD::SetLayerName | ( | PCB_LAYER_ID | aLayer, |
const wxString & | aLayerName | ||
) |
Changes the name of the layer given by aLayer.
aLayer | A layer, like B_Cu, etc. |
aLayerName | The new layer name |
Definition at line 552 of file board.cpp.
References IsLayerEnabled(), m_layers, and LAYER::m_userName.
Referenced by FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), EASYEDA_PLUGIN::LoadBoard(), CADSTAR_PCB_ARCHIVE_LOADER::loadBoardStackup(), EAGLE_PLUGIN::loadLayerDefs(), FABMASTER::loadLayers(), LEGACY_PLUGIN::loadSETUP(), PCB_EASYEDAPRO_PARSER::ParseBoard(), ALTIUM_PCB::ParseBoard6Data(), and PANEL_SETUP_LAYERS::TransferDataFromWindow().
|
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().
bool BOARD::SetLayerType | ( | PCB_LAYER_ID | aLayer, |
LAYER_T | aLayerType | ||
) |
Change the type of the layer given by aLayer.
aLayer | A layer index, like B_Cu, etc. |
aLayerType | The new layer type. |
Definition at line 582 of file board.cpp.
References IsCopperLayer(), IsLayerEnabled(), m_layers, and LAYER::m_type.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::loadBoardStackup(), EAGLE_PLUGIN::loadLayerDefs(), LEGACY_PLUGIN::loadSETUP(), ALTIUM_PCB::ParseBoard6Data(), and PANEL_SETUP_LAYERS::TransferDataFromWindow().
|
inline |
Definition at line 1210 of file board.h.
References m_legacyTeardrops.
Referenced by PCB_PARSER::parseGeneralSection(), PCB_PARSER::parseZONE(), and DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataFromWindow().
|
inlinevirtualinherited |
Reimplemented in PCB_GROUP, and FOOTPRINT.
Definition at line 299 of file board_item.h.
References BOARD_ITEM::m_isLocked.
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), EDIT_TOOL::DragArcTrack(), ZONE_SETTINGS::ExportSetting(), EDIT_TOOL::FilletTracks(), ROUTER_TOOL::InlineDrag(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), CADSTAR_PCB_ARCHIVE_LOADER::loadNetTracks(), DSN::SPECCTRA_DB::makeTRACK(), CADSTAR_PCB_ARCHIVE_LOADER::makeTracksFromShapes(), BOARD_EDITOR_CONTROL::modifyLockSelected(), PCB_PARSER::Parse(), PCB_PARSER::parsePCB_TEXT_effects(), ALTIUM_PCB::ParsePolygons6Data(), processTextItem(), CLIPBOARD_IO::SaveSelection(), PCB_GROUP::SetLocked(), DIALOG_REFERENCE_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow(), and DIALOG_TRACK_VIA_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 696 of file board.h.
References m_outlinesChainingEpsilon.
|
inline |
Definition at line 650 of file board.h.
References m_paper.
Referenced by PCB_CONTROL::AppendBoard(), LEGACY_PLUGIN::loadSHEET(), PCB_PARSER::parsePAGE_INFO(), EXPORT_SVG::Plot(), and PCB_BASE_FRAME::SetPageSettings().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL.
Definition at line 100 of file eda_item.h.
References EDA_ITEM::m_parent.
Referenced by Add(), FOOTPRINT::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 653 of file board.h.
References m_plotOptions.
Referenced by LEGACY_PLUGIN::loadSETUP(), PCB_PARSER::parseSetup(), PCB_BASE_FRAME::SetPlotSettings(), and DIALOG_GENDRILL::UpdateDrillParams().
|
overridevirtual |
void BOARD::SetProject | ( | PROJECT * | aProject, |
bool | aReferenceOnly = false |
||
) |
Link a board to a given project.
Should be called immediately after loading board in order for everything to work.
aProject | is a loaded project to link to. |
aReferenceOnly | avoids taking ownership of settings stored in project if true |
Definition at line 192 of file board.cpp.
References ClearProject(), GetDesignSettings(), PROJECT::GetProjectFile(), m_LegacyDesignSettingsLoaded, m_LegacyNetclassesLoaded, BOARD_DESIGN_SETTINGS::m_NetSettings, m_project, and project.
Referenced by CreateEmptyBoard(), LoadBoard(), NewBoard(), DIALOG_BOARD_SETUP::onAuxiliaryAction(), PCB_EDIT_FRAME::OpenProjectFiles(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), and PCB_EDIT_FRAME::SetBoard().
|
inline |
Definition at line 349 of file board.h.
References m_properties.
Referenced by PCB_CONTROL::AppendBoard(), PCB_PARSER::parseBOARD_unchecked(), and SynchronizeProperties().
|
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().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 90 of file board_item.cpp.
|
inline |
Definition at line 647 of file board.h.
References m_plotOptions, and PCB_PLOT_PARAMS::SetPlotViaOnMaskLayer().
Referenced by PANEL_SETUP_MASK_AND_PASTE::TransferDataFromWindow().
|
inline |
Definition at line 657 of file board.h.
References m_titles.
Referenced by PCB_CONTROL::AppendBoard(), LEGACY_PLUGIN::loadSHEET(), PCB_PARSER::parseTITLE_BLOCK(), and PCB_BASE_FRAME::SetTitleBlock().
|
inline |
Definition at line 662 of file board.h.
References m_userUnits.
Referenced by PCB_BASE_FRAME::SetBoard(), and PCB_BASE_FRAME::unitsChangeRefresh().
void BOARD::SetVisibleAlls | ( | ) |
Change the bit-mask of visible element categories and layers.
Definition at line 698 of file board.cpp.
References GAL_LAYER_ID_BITMASK_END, GAL_LAYER_ID_START, SetElementVisibility(), and SetVisibleLayers().
Referenced by EVT_GRID_CMD_CELL_CHANGED(), and FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME().
void BOARD::SetVisibleElements | ( | const GAL_SET & | aMask | ) |
A proxy function that calls the correspondent function in m_BoardSettings.
aMask | is the new bit-mask of visible element bitmap or-ed from enum GAL_LAYER_ID |
Definition at line 688 of file board.cpp.
References GAL_LAYER_ID_START, and SetElementVisibility().
Referenced by LEGACY_PLUGIN::loadSETUP(), and APPEARANCE_CONTROLS::setVisibleObjects().
void BOARD::SetVisibleLayers | ( | LSET | aLayerMask | ) |
A proxy function that calls the correspondent function in m_BoardSettings changes the bit-mask of visible layers.
aLayerMask | is the new bit-mask of visible layers. |
Definition at line 681 of file board.cpp.
References PROJECT::GetLocalSettings(), m_project, and PROJECT_LOCAL_SETTINGS::m_VisibleLayers.
Referenced by PCB_CONTROL::AppendBoard(), PCB_EDIT_FRAME::Clear_Pcb(), FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), GENDRILL_WRITER_BASE::genDrillMapFile(), CADSTAR_PCB_ARCHIVE_LOADER::loadBoardStackup(), LEGACY_PLUGIN::loadGENERAL(), CADSTAR_PCB_ARCHIVE_LOADER::remapUnsureLayers(), SetVisibleAlls(), APPEARANCE_CONTROLS::setVisibleLayers(), and PANEL_SETUP_LAYERS::TransferDataFromWindow().
|
inlineinherited |
Definition at line 117 of file board_item.h.
References BOARD_ITEM::GetY(), and EDA_ITEM::SetPosition().
Referenced by FOOTPRINT::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 FOOTPRINT::AutoPositionFields(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), and TRACK_VIA_DESC::TRACK_VIA_DESC().
|
overridevirtual |
Set the zone settings for this container.
aSettings | new Zone settings for this container |
Reimplemented from BOARD_ITEM_CONTAINER.
Definition at line 778 of file board.cpp.
References GetDesignSettings(), and BOARD_DESIGN_SETTINGS::SetDefaultZoneSettings().
Referenced by LEGACY_PLUGIN::loadSETUP().
|
inlineoverridevirtual |
Return the Similarity.
Because we compare board to board, we just return 1.0 here
Implements BOARD_ITEM.
|
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.
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE, PCB_TEXT, and PCB_TEXTBOX.
Definition at line 301 of file board_item.h.
|
protectedvirtualinherited |
Reimplemented in PCB_GROUP, FOOTPRINT, PCB_TUNING_PATTERN, PAD, PCB_DIM_ALIGNED, PCB_DIM_ORTHOGONAL, PCB_DIM_RADIAL, PCB_DIM_LEADER, PCB_DIM_CENTER, PCB_SHAPE, PCB_TARGET, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_ARC, PCB_VIA, ZONE, and PCB_REFERENCE_IMAGE.
Definition at line 169 of file board_item.cpp.
Referenced by BOARD_ITEM::SwapItemData().
|
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 BOARD::SynchronizeNetsAndNetClasses | ( | bool | aResetTrackAndViaSizes | ) |
Copy NETCLASS info to each NET, based on NET membership in a NETCLASS.
Must be called after a Design Rules edit, or after reading a netlist (or editing the list of nets) Also this function removes the non existing nets in netclasses and add net nets in default netclass (this happens after reading a netlist)
Definition at line 1775 of file board.cpp.
References GetDesignSettings(), InvokeListeners(), m_NetInfo, BOARD_DESIGN_SETTINGS::m_NetSettings, m_project, BOARD_LISTENER::OnBoardNetSettingsChanged(), BOARD_DESIGN_SETTINGS::SetCustomDiffPairGap(), BOARD_DESIGN_SETTINGS::SetCustomDiffPairViaGap(), BOARD_DESIGN_SETTINGS::SetCustomDiffPairWidth(), BOARD_DESIGN_SETTINGS::SetCustomTrackWidth(), BOARD_DESIGN_SETTINGS::SetCustomViaDrill(), BOARD_DESIGN_SETTINGS::SetCustomViaSize(), and BOARD_DESIGN_SETTINGS::UseCustomTrackViaSize().
Referenced by PCB_CONTROL::AppendBoard(), BOARD_EDITOR_CONTROL::AssignNetclass(), NETINFO_LIST::buildListOfNets(), FOOTPRINT_EDIT_FRAME::Clear_Pcb(), DSN::ExportBoardToSpecctraFile(), LoadBoard(), DRC_ENGINE::loadImplicitRules(), SaveBoard(), PCB_EDIT_FRAME::SavePcbCopy(), PCB_EDIT_FRAME::SavePcbFile(), PCB_EDIT_FRAME::ShowBoardSetupDialog(), and BOARD_NETLIST_UPDATER::UpdateNetlist().
void BOARD::SynchronizeProperties | ( | ) |
Copy the current project's text variables into the boards property cache.
Definition at line 1766 of file board.cpp.
References PROJECT::GetTextVars(), PROJECT::IsNullProject(), m_project, and SetProperties().
Referenced by PCB_EDIT_FRAME::SavePcbFile().
Test for intersection of 2 copper areas.
aZone1 | is the area reference. |
aZone2 | is the area to compare for intersection calculations. |
Definition at line 113 of file edit_zone_helpers.cpp.
References SHAPE_POLY_SET::BBox(), SEG::Collide(), SHAPE_POLY_SET::Contains(), ZONE::GetLayerSet(), BOX2< Vec >::Intersects(), SHAPE_POLY_SET::IterateSegmentsWithHoles(), SHAPE_POLY_SET::IterateWithHoles(), and ZONE::Outline().
Referenced by BOARD_EDITOR_CONTROL::ZoneMerge().
|
inline |
Definition at line 315 of file board.h.
References m_tracks.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), GERBER_JOBFILE_WRITER::addJSONDesignRules(), RENDER_3D_RAYTRACE::addPadsAndVias(), AllConnectedItems(), PCB_CONTROL::AppendBoard(), CN_CONNECTIVITY_ALGO::Build(), build_via_testpoints(), EXPORTER_STEP::buildBoard3DShapes(), ZONE_FILLER::buildCopperItemClearances(), GENDRILL_WRITER_BASE::buildHolesList(), TEARDROP_MANAGER::buildTrackCaches(), TRACKS_CLEANER::cleanup(), HYPERLYNX_EXPORTER::collectNetObjects(), BOARD_ADAPTER::createLayers(), GENCAD_EXPORTER::CreatePadsShapesSection(), GENCAD_EXPORTER::CreateRoutesSection(), GENCAD_EXPORTER::CreateTracksInfoData(), TRACKS_CLEANER::deleteDanglingTracks(), TRACKS_CLEANER::deleteTracksInPads(), PCB_DRAW_PANEL_GAL::DisplayBoard(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), EXPORTER_PCB_VRML::ExportVrmlViaHoles(), ZONE_FILLER::Fill(), FillItemMap(), DRC_TEST_PROVIDER::forEachGeometryItem(), PCB_PLUGIN::format(), DSN::SPECCTRA_DB::FromBOARD(), DSN::SPECCTRA_DB::FromSESSION(), IPC2581_PLUGIN::generateDrillLayers(), IPC2581_PLUGIN::generateLayerFeatures(), RENDER_3D_OPENGL::generateViasAndPads(), DIALOG_BOARD_STATISTICS::getDataFromPCB(), GetItem(), NETINFO_ITEM::GetMsgPanelInfo(), PCB_DRAW_PANEL_GAL::GetMsgPanelInfo(), DIALOG_GENDRILL::InitDisplayParams(), ALTIUM_PCB::Parse(), PCB_PARSER::parseBOARD_unchecked(), PCB_CONTROL::placeBoardItems(), BRDITEMS_PLOTTER::PlotDrillMarks(), PlotLayerOutlines(), PlotSolderMaskLayer(), PlotStandardLayer(), TRACKS_CLEANER::removeShortingTrackSegments(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTIVITY::Run(), DRC_TEST_PROVIDER_HOLE_SIZE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), PCB_EDIT_FRAME::RunActionPlugin(), SetElementVisibility(), snapToNearestTrack(), PNS_KICAD_IFACE_BASE::SyncWorld(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataFromWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataFromWindow(), NETINFO_MAPPING::Update(), BOARD_NETLIST_UPDATER::updateCopperZoneNets(), PCB_CONTROL::UpdateMessagePanel(), DIALOG_UNUSED_PAD_LAYERS::updatePadsAndVias(), TEARDROP_MANAGER::UpdateTeardrops(), and HYPERLYNX_EXPORTER::writePadStacks().
|
inline |
TRACKS BOARD::TracksInNet | ( | int | aNetCode | ) |
Collect all the TRACKs and VIAs that are members of a net given by aNetCode.
Used from python.
aNetCode | gives the id of the net. |
Definition at line 482 of file board.cpp.
References BOARD_CONNECTED_ITEM::GetNetCode(), GENERAL_COLLECTOR::Tracks, and Visit().
|
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(), FOOTPRINT::CoverageRatio(), enclosedByAreaFunc(), FOOTPRINT::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(), Add(), FOOTPRINT::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(), ClassOf(), BOARD_CONNECTED_ITEM::ClassOf(), FOOTPRINT::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(), ConvertKIIDsToCrossReferences(), SCHEMATIC::ConvertKIIDsToRefs(), PAD_TOOL::copyPadSettings(), FOOTPRINT::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(), FOOTPRINT::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(), FOOTPRINT::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==(), operator==(), FOOTPRINT::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(), Remove(), CN_CONNECTIVITY_ALGO::Remove(), FOOTPRINT::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(), 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(), FOOTPRINT::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(), FOOTPRINT::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().
void BOARD::UpdateRatsnestExclusions | ( | ) |
Update the visibility flags on the current unconnected ratsnest lines.
Definition at line 289 of file board.cpp.
References BOARD_ITEM::GetBoard(), GetConnectivity(), CN_EDGE::GetSourceNode(), CN_EDGE::GetTargetNode(), MARKER_BASE::MARKER_RATSNEST, Markers(), and CN_EDGE::SetVisible().
Referenced by BuildConnectivity(), PCB_BASE_FRAME::Compile_Ratsnest(), DIALOG_DRC::OnDRCItemRClick(), BOARD_COMMIT::Push(), PCB_EDIT_FRAME::ResolveDRCExclusions(), and BOARD_COMMIT::Revert().
void BOARD::UpdateUserUnits | ( | BOARD_ITEM * | aItem, |
KIGFX::VIEW * | aView | ||
) |
Update any references within aItem (or its descendants) to the user units.
Primarily for automatic-unit dimensions.
Definition at line 1072 of file board.cpp.
References PCB_DIMENSION_BASE::GetUnitsMode(), PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, KIGFX::VIEW::Update(), PCB_DIMENSION_BASE::UpdateUnits(), and EDA_ITEM::Visit().
Referenced by PCB_BASE_FRAME::AddFootprintToBoard(), LoadBoard(), and BOARD_EDITOR_CONTROL::PlaceFootprint().
|
overridevirtualinherited |
Return the bounding box of the item covering all its layers.
Implements KIGFX::VIEW_ITEM.
Reimplemented in LIB_PIN, SCH_PIN, GERBER_DRAW_ITEM, DS_PROXY_VIEW_ITEM, KIGFX::ORIGIN_VIEWITEM, KIGFX::PREVIEW::ARC_ASSISTANT, KIGFX::PREVIEW::CENTRELINE_RECT_ITEM, KIGFX::PREVIEW::POLYGON_ITEM, KIGFX::PREVIEW::RULER_ITEM, KIGFX::PREVIEW::SELECTION_AREA, KIGFX::PREVIEW::TWO_POINT_ASSISTANT, EDIT_POINTS, FOOTPRINT, TUNING_STATUS_VIEW_ITEM, PCB_TUNING_PATTERN, PAD, PCB_DIMENSION_BASE, PCB_DIM_CENTER, PCB_MARKER, PCB_SHAPE, PCB_TEXT, PCB_TRACK, RATSNEST_VIEW_ITEM, ROUTER_PREVIEW_ITEM, and MY_DRAWING.
Definition at line 273 of file eda_item.cpp.
References EDA_ITEM::GetBoundingBox().
Referenced by EDIT_TOOL::doMoveSelection(), GERBVIEW_FRAME::GetDocumentExtents(), EDIT_TOOL::Rotate(), and PCB_SHAPE::ViewBBox().
|
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().
|
overridevirtualinherited |
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 EDA_ITEM.
Reimplemented in PCB_GROUP, FOOTPRINT, PCB_TUNING_PATTERN, PAD, PCB_MARKER, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, and ZONE.
Definition at line 147 of file board_item.cpp.
References BOARD_ITEM::IsLocked(), LAYER_LOCKED_ITEM_SHADOW, and BOARD_ITEM::m_layer.
|
inlinevirtualinherited |
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 in SCH_LINE, GERBER_DRAW_ITEM, PCB_GROUP, FOOTPRINT, PAD, PCB_FIELD, PCB_REFERENCE_IMAGE, PCB_SHAPE, PCB_TEXT, PCB_TEXTBOX, PCB_TRACK, PCB_VIA, and ZONE.
Definition at line 141 of file view_item.h.
Referenced by PNS_KICAD_IFACE::IsItemVisible(), KIGFX::VIEW::DRAW_ITEM_VISITOR::operator()(), EE_GRID_HELPER::queryVisible(), and PCB_GRID_HELPER::queryVisible().
|
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 scanTypes[], 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. |
scanTypes | Which KICAD_T types are of interest and the order to process them in. |
Reimplemented from EDA_ITEM.
Definition at line 1495 of file board.cpp.
References GetClass(), m_drawings, m_footprints, m_generators, m_groups, m_markers, m_tracks, m_zones, PCB_ARC_T, 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_GENERATOR_T, PCB_GROUP_T, PCB_MARKER_T, PCB_PAD_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_T, PCB_TARGET_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, and PCB_ZONE_T.
Referenced by Move(), PCB_CONTROL::Paste(), PCB_SELECTION_TOOL::RebuildSelection(), and TracksInNet().
|
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 324 of file board.h.
References m_zones.
Referenced by GERBER_JOBFILE_WRITER::addJSONDesignRules(), AllConnectedItems(), PCB_CONTROL::AppendBoard(), TEARDROP_MANAGER::areItemsInSameZone(), CN_CONNECTIVITY_ALGO::Build(), ZONE_FILLER::buildCopperItemClearances(), EXPORTER_STEP::buildZones3DShape(), BOARD_NETLIST_UPDATER::cacheCopperZoneConnections(), HYPERLYNX_EXPORTER::collectNetObjects(), ConvertBrdLayerToPolygonalContours(), BOARD_ADAPTER::createLayers(), TEARDROP_MANAGER::DeleteTrackToTrackTeardrops(), BOARD_COMMIT::dirtyIntersectingZones(), PCB_DRAW_PANEL_GAL::DisplayBoard(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), DIALOG_COPPER_ZONE::ExportSetupToOtherCopperZones(), ZONE_FILLER::Fill(), FillItemMap(), ZONE_FILLER::fillNonCopperZone(), KI_TEST::FillZones(), DRC_TEST_PROVIDER::forEachGeometryItem(), PCB_PLUGIN::format(), DSN::SPECCTRA_DB::FromBOARD(), GetItem(), GetZoneList(), PNS_KICAD_IFACE::HideItem(), DRC_ENGINE::loadImplicitRules(), FABMASTER::loadZones(), BOARD_INSPECTION_TOOL::makeDRCEngine(), FABMASTER::orderZones(), PCB_PARSER::parseBOARD_unchecked(), PCB_CONTROL::placeBoardItems(), PlotSolderMaskLayer(), PlotStandardLayer(), BOARD_COMMIT::Push(), TEARDROP_MANAGER::RemoveTeardrops(), DRC_CACHE_GENERATOR::Run(), DRC_TEST_PROVIDER_SLIVER_CHECKER::Run(), PCB_EDIT_FRAME::RunActionPlugin(), SaveCopyOfZones(), DIALOG_FIND::search(), ZONE_SEARCH_HANDLER::Search(), searchAreas(), SetAreasNetCodesFromNetNames(), SetElementVisibility(), ZONE_FILLER::subtractHigherPriorityZones(), PNS_KICAD_IFACE_BASE::SyncWorld(), DRC_INTERACTIVE_COURTYARD_CLEARANCE::testCourtyardClearances(), NETINFO_MAPPING::Update(), BOARD_NETLIST_UPDATER::updateCopperZoneNets(), and TEARDROP_MANAGER::UpdateTeardrops().
|
inline |
|
friend |
|
private |
What is this board being used for.
Definition at line 1265 of file board.h.
Referenced by GetBoardUse(), IsFootprintHolder(), and SetBoardUse().
std::mutex BOARD::m_CachesMutex |
Definition at line 1225 of file board.h.
Referenced by ZONE::CacheBoundingBox(), PCBEXPR_LAYER_VALUE::EqualTo(), existsOnLayerFunc(), IncrementTimeStamp(), intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), intersectsFrontCourtyardFunc(), DRC_CACHE_GENERATOR::Run(), and DRC_TEST_PROVIDER_DISALLOW::Run().
|
private |
std::shared_ptr<DRC_RTREE> BOARD::m_CopperItemRTreeCache |
Definition at line 1233 of file board.h.
Referenced by IncrementTimeStamp(), DRC_CACHE_GENERATOR::Run(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testGraphicClearances(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadClearances(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances().
Definition at line 1232 of file board.h.
Referenced by collidesWithArea(), IncrementTimeStamp(), DRC_CACHE_GENERATOR::Run(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), and CONNECTIVITY_DATA::TestTrackEndpointDangling().
|
private |
All of the board design settings are stored as a JSON object inside the project file.
The object itself is located here because the alternative is to require a valid project be passed in when constructing a BOARD, since things in the BOARD constructor rely on access to the BOARD_DESIGN_SETTINGS object.
A reference to this object is set up in the PROJECT_FILE for the PROJECT this board is part of, so that the JSON load/store operations work. This link is established when boards are loaded from disk.
Definition at line 1304 of file board.h.
Referenced by GetDesignSettings(), GetMaxClearanceValue(), operator==(), and ResolveDRCExclusions().
|
private |
Definition at line 1270 of file board.h.
Referenced by Add(), ComputeBoundingBox(), ConvertBrdLayerToPolygonalContours(), Drawings(), GetItemSet(), IsEmpty(), Remove(), Visit(), and ~BOARD().
std::vector<ZONE*> BOARD::m_DRCCopperZones |
Definition at line 1238 of file board.h.
Referenced by IncrementTimeStamp(), DRC_CACHE_GENERATOR::Run(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testGraphicClearances(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadClearances(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
int BOARD::m_DRCMaxClearance |
Definition at line 1239 of file board.h.
Referenced by IncrementTimeStamp(), DRC_CACHE_GENERATOR::Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testGraphicClearances(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadClearances(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances().
int BOARD::m_DRCMaxPhysicalClearance |
Definition at line 1240 of file board.h.
Referenced by IncrementTimeStamp(), DRC_CACHE_GENERATOR::Run(), and DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run().
std::vector<ZONE*> BOARD::m_DRCZones |
Definition at line 1237 of file board.h.
Referenced by IncrementTimeStamp(), DRC_CACHE_GENERATOR::Run(), and DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones().
std::unordered_map<PTR_PTR_LAYER_CACHE_KEY, bool> BOARD::m_EnclosedByAreaCache |
Definition at line 1230 of file board.h.
Referenced by enclosedByAreaFunc(), and IncrementTimeStamp().
|
private |
Definition at line 1282 of file board.h.
Referenced by BOARD(), GetFileFormatVersionAtLoad(), and SetFileFormatVersionAtLoad().
|
private |
Definition at line 1268 of file board.h.
Referenced by GetFileName(), and SetFileName().
|
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().
|
private |
Definition at line 1271 of file board.h.
Referenced by Add(), ComputeBoundingBox(), ConvertBrdLayerToPolygonalContours(), DeleteAllFootprints(), FindFootprintByPath(), FindFootprintByReference(), Footprints(), GetFirstFootprint(), GetFootprint(), GetItemSet(), GetMaxClearanceValue(), GetPad(), GetZoneList(), IsEmpty(), Remove(), Visit(), and ~BOARD().
|
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 1283 of file board.h.
Referenced by GetGenerator(), and SetGenerator().
|
private |
Definition at line 1275 of file board.h.
Referenced by Add(), FillItemMap(), Generators(), GetItem(), Remove(), Visit(), and ~BOARD().
|
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 1273 of file board.h.
Referenced by Add(), FillItemMap(), GetItem(), GetItemSet(), Groups(), Remove(), Visit(), and ~BOARD().
|
private |
Definition at line 1279 of file board.h.
Referenced by GetHighLightNetCodes(), HighLightON(), IsHighLightNetON(), ResetNetHighLight(), and SetHighLightNet().
|
private |
Definition at line 1280 of file board.h.
Referenced by ResetNetHighLight().
std::unordered_map<PTR_PTR_LAYER_CACHE_KEY, bool> BOARD::m_IntersectsAreaCache |
Definition at line 1229 of file board.h.
Referenced by IncrementTimeStamp(), and DRC_TEST_PROVIDER_DISALLOW::Run().
std::unordered_map<PTR_PTR_CACHE_KEY, bool> BOARD::m_IntersectsBCourtyardCache |
Definition at line 1228 of file board.h.
Referenced by IncrementTimeStamp(), and intersectsBackCourtyardFunc().
std::unordered_map<PTR_PTR_CACHE_KEY, bool> BOARD::m_IntersectsCourtyardCache |
Definition at line 1226 of file board.h.
Referenced by IncrementTimeStamp(), and intersectsCourtyardFunc().
std::unordered_map<PTR_PTR_CACHE_KEY, bool> BOARD::m_IntersectsFCourtyardCache |
Definition at line 1227 of file board.h.
Referenced by IncrementTimeStamp(), and intersectsFrontCourtyardFunc().
|
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().
|
protectedinherited |
Definition at line 387 of file board_item.h.
Referenced by PCB_VIA::ConditionallyFlashed(), PCB_VIA::FlashLayer(), FOOTPRINT::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(), FOOTPRINT::ViewGetLayers(), PCB_REFERENCE_IMAGE::ViewGetLayers(), FOOTPRINT::ViewGetLOD(), PCB_REFERENCE_IMAGE::ViewGetLOD(), PCB_SHAPE::ViewGetLOD(), PCB_TEXT::ViewGetLOD(), PCB_TEXTBOX::ViewGetLOD(), and PCB_TRACK::ViewGetLOD().
std::unordered_map< wxString, LSET > BOARD::m_LayerExpressionCache |
Definition at line 1231 of file board.h.
Referenced by PCBEXPR_LAYER_VALUE::EqualTo(), existsOnLayerFunc(), and IncrementTimeStamp().
|
private |
Definition at line 1277 of file board.h.
Referenced by BOARD(), GetLayerID(), GetLayerName(), GetLayerType(), SetLayerDescr(), SetLayerName(), and SetLayerType().
bool BOARD::m_LegacyCopperEdgeClearanceLoaded |
Definition at line 360 of file board.h.
Referenced by PCB_EDIT_FRAME::OpenProjectFiles(), and PCB_PARSER::parseDefaults().
bool BOARD::m_LegacyDesignSettingsLoaded |
True if the legacy board design settings were loaded from a file.
Definition at line 359 of file board.h.
Referenced by CADSTAR_PCB_ARCHIVE_PLUGIN::LoadBoard(), EAGLE_PLUGIN::LoadBoard(), LEGACY_PLUGIN::loadSETUP(), PCB_EDIT_FRAME::OpenProjectFiles(), PCB_PARSER::parseSetup(), and SetProject().
bool BOARD::m_LegacyNetclassesLoaded |
True if netclasses were loaded from the file.
Definition at line 363 of file board.h.
Referenced by CADSTAR_PCB_ARCHIVE_PLUGIN::LoadBoard(), EAGLE_PLUGIN::LoadBoard(), LEGACY_PLUGIN::loadSETUP(), PCB_PARSER::parseBOARD_unchecked(), ALTIUM_PCB::ParseClasses6Data(), and SetProject().
|
private |
Teardrops in 7.0 were applied as a post-processing step (rather than from pad and via properties).
If this flag is set, then auto-teardrop-generation will be disabled.
Definition at line 1310 of file board.h.
Referenced by LegacyTeardrops(), and SetLegacyTeardrops().
GAL_SET BOARD::m_LegacyVisibleItems |
Definition at line 356 of file board.h.
Referenced by BOARD(), LoadBoard(), PCB_EDIT_FRAME::OpenProjectFiles(), and PCB_PARSER::parseSetup().
LSET BOARD::m_LegacyVisibleLayers |
Visibility settings stored in board prior to 6.0, only used for loading legacy files.
Definition at line 355 of file board.h.
Referenced by BOARD(), LoadBoard(), PCB_EDIT_FRAME::OpenProjectFiles(), and PCB_PARSER::parseLayers().
|
private |
Definition at line 1314 of file board.h.
Referenced by AddListener(), InvokeListeners(), RemoveAllListeners(), and RemoveListener().
|
private |
Definition at line 1269 of file board.h.
Referenced by Add(), DeleteMARKERs(), FillItemMap(), GetItem(), GetItemSet(), Markers(), Remove(), and Visit().
|
private |
Definition at line 1312 of file board.h.
Referenced by Add(), BeginNets(), BuildListOfNets(), EndNets(), FindNet(), GetItem(), GetNetClassAssignmentCandidates(), GetNetCount(), GetNetInfo(), operator==(), Remove(), RemoveUnusedNets(), and SynchronizeNetsAndNetClasses().
|
private |
the max distance between 2 end point to see them connected when building the board outlines
Definition at line 1262 of file board.h.
Referenced by BOARD(), GetOutlinesChainingEpsilon(), and SetOutlinesChainingEpsilon().
|
private |
Definition at line 1288 of file board.h.
Referenced by GetPageSettings(), operator==(), and SetPageSettings().
|
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 1290 of file board.h.
Referenced by GetPlotOptions(), GetTentVias(), SetPlotOptions(), and SetTentVias().
|
private |
Definition at line 1291 of file board.h.
Referenced by ClearProject(), GetProject(), GetVisibleElements(), GetVisibleLayers(), IsElementVisible(), IsLayerVisible(), ResolveTextVar(), SetElementVisibility(), SetProject(), SetVisibleLayers(), SynchronizeNetsAndNetClasses(), and SynchronizeProperties().
|
private |
Definition at line 1285 of file board.h.
Referenced by GetProperties(), operator==(), ResolveTextVar(), and SetProperties().
ZONE* BOARD::m_SolderMaskBridges |
Definition at line 1241 of file board.h.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), BOARD(), DRC_TEST_PROVIDER_SOLDER_MASK::buildRTrees(), PCB_SELECTION_TOOL::itemPassesFilter(), and ~BOARD().
|
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().
|
private |
Definition at line 1266 of file board.h.
Referenced by GetTimeStamp(), and IncrementTimeStamp().
|
private |
Definition at line 1289 of file board.h.
Referenced by GetTitleBlock(), operator==(), and SetTitleBlock().
|
private |
Definition at line 1272 of file board.h.
Referenced by Add(), ComputeBoundingBox(), ConvertBrdLayerToPolygonalContours(), GetItemSet(), GetMsgPanelInfo(), IsEmpty(), Remove(), Tracks(), Visit(), and ~BOARD().
|
private |
Definition at line 1292 of file board.h.
Referenced by GetUserUnits(), and SetUserUnits().
|
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(), FOOTPRINT::Duplicate(), SCH_ITEM::Duplicate(), FOOTPRINT::DuplicateItem(), PCB_EDIT_FRAME::ExchangeFootprint(), PAD_TOOL::explodePad(), NETLIST_EXPORTER_ALLEGRO::extractComponentsInfo(), SCH_SHEET_LIST::FillItemMap(), 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(), 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::opera