KiCad PCB EDA Suite
|
Handle a list of polygons defining a copper zone. More...
#include <zone.h>
Public Types | |
enum | COMPARE_FLAGS : int { DRC = 0x01 } |
Public Member Functions | |
ZONE (BOARD_ITEM_CONTAINER *parent) | |
ZONE (const ZONE &aZone) | |
ZONE & | operator= (const ZONE &aOther) |
~ZONE () | |
bool | IsConnected () const override |
Not all ZONEs are really BOARD_CONNECTED_ITEMs.... | |
void | InitDataFromSrcInCopyCtor (const ZONE &aZone) |
Copy aZone data to me. | |
bool | IsConflicting () const |
For rule areas which exclude footprints (and therefore participate in courtyard conflicts during move). | |
VECTOR2I | GetPosition () const override |
void | SetPosition (const VECTOR2I &aPos) override |
void | SetAssignedPriority (unsigned aPriority) |
unsigned | GetAssignedPriority () const |
bool | HigherPriority (const ZONE *aOther) const |
bool | SameNet (const ZONE *aOther) const |
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. | |
wxString | GetFriendlyName () const override |
void | SetLayerSet (const LSET &aLayerSet) override |
virtual LSET | GetLayerSet () const override |
Return a std::bitset of all layers on which the item physically resides. | |
const wxString & | GetZoneName () const |
void | SetZoneName (const wxString &aName) |
bool | Matches (const EDA_SEARCH_DATA &aSearchData, void *aAuxData) const override |
Compare the item against the search criteria in aSearchData. | |
const BOX2I | GetBoundingBox () const override |
void | CacheBoundingBox () |
Used to preload the zone bounding box cache so we don't have to worry about mutex-locking it each time. | |
std::optional< int > | GetLocalClearance () const override |
void | SetLocalClearance (std::optional< int > aClearance) |
std::optional< int > | GetLocalClearance (wxString *aSource) const override |
Return any local clearances set in the "classic" (ie: pre-rule) system. | |
bool | IsOnCopperLayer () const override |
virtual void | SetLayer (PCB_LAYER_ID aLayer) override |
Set the layer this item is on. | |
virtual PCB_LAYER_ID | GetLayer () const override |
Return the primary layer this item is on. | |
PCB_LAYER_ID | GetFirstLayer () const |
virtual bool | IsOnLayer (PCB_LAYER_ID) const override |
Test to see if this object is on the given layer. | |
virtual void | ViewGetLayers (int aLayers[], int &aCount) const override |
Return the all the layers within the VIEW the object is painted on. | |
double | ViewGetLOD (int aLayer, KIGFX::VIEW *aView) const override |
Return the level of detail (LOD) of the item. | |
void | SetFillMode (ZONE_FILL_MODE aFillMode) |
ZONE_FILL_MODE | GetFillMode () const |
void | SetThermalReliefGap (int aThermalReliefGap) |
int | GetThermalReliefGap () const |
int | GetThermalReliefGap (PAD *aPad, wxString *aSource=nullptr) const |
void | SetThermalReliefSpokeWidth (int aThermalReliefSpokeWidth) |
int | GetThermalReliefSpokeWidth () const |
double | CalculateFilledArea () |
Compute the area currently occupied by the zone fill. | |
double | CalculateOutlineArea () |
Compute the area of the zone outline (not the filled area). | |
double | GetFilledArea () |
This area is cached from the most recent call to CalculateFilledArea(). | |
double | GetOutlineArea () |
This area is cached from the most recent call to CalculateOutlineArea(). | |
std::mutex & | GetLock () |
int | GetFillFlag (PCB_LAYER_ID aLayer) |
void | SetFillFlag (PCB_LAYER_ID aLayer, bool aFlag) |
bool | IsFilled () const |
void | SetIsFilled (bool isFilled) |
bool | NeedRefill () const |
void | SetNeedRefill (bool aNeedRefill) |
ZONE_CONNECTION | GetPadConnection () const |
void | SetPadConnection (ZONE_CONNECTION aPadConnection) |
int | GetMinThickness () const |
void | SetMinThickness (int aMinThickness) |
int | GetHatchThickness () const |
void | SetHatchThickness (int aThickness) |
int | GetHatchGap () const |
void | SetHatchGap (int aStep) |
EDA_ANGLE | GetHatchOrientation () const |
void | SetHatchOrientation (const EDA_ANGLE &aStep) |
int | GetHatchSmoothingLevel () const |
void | SetHatchSmoothingLevel (int aLevel) |
double | GetHatchSmoothingValue () const |
void | SetHatchSmoothingValue (double aValue) |
double | GetHatchHoleMinArea () const |
void | SetHatchHoleMinArea (double aPct) |
int | GetHatchBorderAlgorithm () const |
void | SetHatchBorderAlgorithm (int aAlgo) |
int | GetSelectedCorner () const |
void | SetSelectedCorner (int aCorner) |
int | GetLocalFlags () const |
void | SetLocalFlags (int aFlags) |
SHAPE_POLY_SET * | Outline () |
const SHAPE_POLY_SET * | Outline () const |
void | SetOutline (SHAPE_POLY_SET *aOutline) |
virtual std::shared_ptr< SHAPE > | GetEffectiveShape (PCB_LAYER_ID aLayer=UNDEFINED_LAYER, FLASHING aFlash=FLASHING::DEFAULT) const override |
Some pad shapes can be complex (rounded/chamfered rectangle), even without considering custom shapes. | |
bool | HitTest (const VECTOR2I &aPosition, int aAccuracy=0) const override |
Test if a point is near an outline edge or a corner of this zone. | |
bool | HitTestFilledArea (PCB_LAYER_ID aLayer, const VECTOR2I &aRefPos, int aAccuracy=0) const |
Test if the given VECTOR2I is within the bounds of a filled area of this zone. | |
bool | HitTestCutout (const VECTOR2I &aRefPos, int *aOutlineIdx=nullptr, int *aHoleIdx=nullptr) const |
Test if the given point is contained within a cutout of the zone. | |
void | GetInteractingZones (PCB_LAYER_ID aLayer, std::vector< ZONE * > *aSameNetCollidingZones, std::vector< ZONE * > *aOtherNetIntersectingZones) const |
Some intersecting zones, despite being on the same layer with the same net, cannot be merged due to other parameters such as fillet radius. | |
void | TransformSolidAreasShapesToPolygon (PCB_LAYER_ID aLayer, SHAPE_POLY_SET &aBuffer) const |
Convert solid areas full shapes to polygon set (the full shape is the polygon area with a thick outline) Used in 3D view Arcs (ends of segments) are approximated by segments. | |
void | TransformSmoothedOutlineToPolygon (SHAPE_POLY_SET &aBuffer, int aClearance, int aError, ERROR_LOC aErrorLoc, SHAPE_POLY_SET *aBoardOutline) const |
Convert the outlines shape to a polygon with no holes inflated (optional) by max( aClearanceValue, the zone clearance) (holes are linked to external outline by overlapping segments) Used in filling zones calculations Circles (vias) and arcs (ends of tracks) are approximated by segments. | |
void | TransformShapeToPolygon (SHAPE_POLY_SET &aBuffer, PCB_LAYER_ID aLayer, int aClearance, int aError, ERROR_LOC aErrorLoc, bool ignoreLineWidth=false) const override |
Convert the zone shape to a closed polygon Used in filling zones calculations Circles and arcs are approximated by segments. | |
bool | HitTestForCorner (const VECTOR2I &refPos, int aAccuracy, SHAPE_POLY_SET::VERTEX_INDEX *aCornerHit=nullptr) const |
Test if the given VECTOR2I is near a corner. | |
bool | HitTestForEdge (const VECTOR2I &refPos, int aAccuracy, SHAPE_POLY_SET::VERTEX_INDEX *aCornerHit=nullptr) const |
Test if the given VECTOR2I is near a segment defined by 2 corners. | |
bool | HitTest (const BOX2I &aRect, bool aContained=true, int aAccuracy=0) const override |
Test if aRect intersects this item. | |
bool | UnFill () |
Removes the zone filling. | |
void | Move (const VECTOR2I &offset) override |
Move the outlines. | |
void | MoveEdge (const VECTOR2I &offset, int aEdge) |
Move the outline Edge. | |
void | Rotate (const VECTOR2I &aCentre, const EDA_ANGLE &aAngle) override |
Rotate the outlines. | |
virtual void | Flip (const VECTOR2I &aCentre, FLIP_DIRECTION aFlipDirection) override |
Flip this object, i.e. | |
void | Mirror (const VECTOR2I &aMirrorRef, FLIP_DIRECTION aFlipDirection) override |
Mirror the outlines relative to a given horizontal axis the layer is not changed. | |
wxString | GetClass () const override |
int | GetNumCorners (void) const |
Access to m_Poly parameters. | |
SHAPE_POLY_SET::ITERATOR | Iterate () |
Return an iterator to visit all points of the zone's main outline without holes. | |
SHAPE_POLY_SET::ITERATOR | IterateWithHoles () |
Return an iterator to visit all points of the zone's main outline with holes. | |
SHAPE_POLY_SET::CONST_ITERATOR | CIterateWithHoles () const |
Return an iterator to visit all points of the zone's main outline with holes. | |
void | RemoveAllContours (void) |
const VECTOR2I & | GetCornerPosition (int aCornerIndex) const |
void | SetCornerPosition (int aCornerIndex, const VECTOR2I &new_pos) |
void | NewHole () |
Create a new hole on the zone; i.e., a new contour on the zone's outline. | |
bool | AppendCorner (VECTOR2I aPosition, int aHoleIdx, bool aAllowDuplication=false) |
Add a new corner to the zone outline (to the main outline or a hole) | |
ZONE_BORDER_DISPLAY_STYLE | GetHatchStyle () const |
void | SetHatchStyle (ZONE_BORDER_DISPLAY_STYLE aStyle) |
bool | HasFilledPolysForLayer (PCB_LAYER_ID aLayer) const |
const std::shared_ptr< SHAPE_POLY_SET > & | GetFilledPolysList (PCB_LAYER_ID aLayer) const |
SHAPE_POLY_SET * | GetFill (PCB_LAYER_ID aLayer) |
void | CacheTriangulation (PCB_LAYER_ID aLayer=UNDEFINED_LAYER) |
Create a list of triangles that "fill" the solid areas used for instance to draw these solid areas on OpenGL. | |
void | SetFilledPolysList (PCB_LAYER_ID aLayer, const SHAPE_POLY_SET &aPolysList) |
Set the list of filled polygons. | |
bool | IsIsland (PCB_LAYER_ID aLayer, int aPolyIdx) const |
Check if a given filled polygon is an insulated island. | |
void | SetIsIsland (PCB_LAYER_ID aLayer, int aPolyIdx) |
bool | BuildSmoothedPoly (SHAPE_POLY_SET &aSmoothedPoly, PCB_LAYER_ID aLayer, SHAPE_POLY_SET *aBoardOutline, SHAPE_POLY_SET *aSmoothedPolyWithApron=nullptr) const |
void | SetCornerSmoothingType (int aType) |
int | GetCornerSmoothingType () const |
void | SetCornerRadius (unsigned int aRadius) |
unsigned int | GetCornerRadius () const |
void | RemoveCutout (int aOutlineIdx, int aHoleIdx) |
Remove a cutout from the zone. | |
void | AddPolygon (std::vector< VECTOR2I > &aPolygon) |
Add a polygon to the zone outline. | |
void | AddPolygon (const SHAPE_LINE_CHAIN &aPolygon) |
wxString | GetItemDescription (UNITS_PROVIDER *aUnitsProvider, bool aFull) const override |
Return a user-visible description string of this item. | |
BITMAPS | GetMenuImage () const override |
Return a pointer to an image to be used in menus. | |
EDA_ITEM * | Clone () const override |
Create a duplicate of this item with linked list members set to NULL. | |
bool | IsTeardropArea () const |
void | SetTeardropAreaType (TEARDROP_TYPE aType) |
Set the type of teardrop if the zone is a teardrop area for non teardrop area, the type must be TEARDROP_TYPE::TD_NONE. | |
TEARDROP_TYPE | GetTeardropAreaType () const |
bool | HasKeepoutParametersSet () const |
Accessor to determine if any keepout parameters are set. | |
bool | GetIsRuleArea () const |
Accessors to parameters used in Rule Area zones: | |
bool | GetRuleAreaPlacementEnabled () const |
RULE_AREA_PLACEMENT_SOURCE_TYPE | GetRuleAreaPlacementSourceType () const |
wxString | GetRuleAreaPlacementSource () const |
bool | GetDoNotAllowCopperPour () const |
bool | GetDoNotAllowVias () const |
bool | GetDoNotAllowTracks () const |
bool | GetDoNotAllowPads () const |
bool | GetDoNotAllowFootprints () const |
void | SetIsRuleArea (bool aEnable) |
void | SetRuleAreaPlacementEnabled (bool aEnabled) |
void | SetRuleAreaPlacementSourceType (RULE_AREA_PLACEMENT_SOURCE_TYPE aType) |
void | SetRuleAreaPlacementSource (const wxString &aSource) |
void | SetDoNotAllowCopperPour (bool aEnable) |
void | SetDoNotAllowVias (bool aEnable) |
void | SetDoNotAllowTracks (bool aEnable) |
void | SetDoNotAllowPads (bool aEnable) |
void | SetDoNotAllowFootprints (bool aEnable) |
ISLAND_REMOVAL_MODE | GetIslandRemovalMode () const |
void | SetIslandRemovalMode (ISLAND_REMOVAL_MODE aRemove) |
long long int | GetMinIslandArea () const |
void | SetMinIslandArea (long long int aArea) |
int | GetBorderHatchPitch () const |
HatchBorder related methods. | |
void | SetBorderDisplayStyle (ZONE_BORDER_DISPLAY_STYLE aBorderHatchStyle, int aBorderHatchPitch, bool aRebuilBorderdHatch) |
Set all hatch parameters for the zone. | |
void | SetBorderHatchPitch (int aPitch) |
Set the hatch pitch parameter for the zone. | |
void | UnHatchBorder () |
Clear the zone's hatch. | |
void | HatchBorder () |
Compute the hatch lines depending on the hatch parameters and stores it in the zone's attribute m_borderHatchLines. | |
const std::vector< SEG > & | GetHatchLines () const |
void | BuildHashValue (PCB_LAYER_ID aLayer) |
Build the hash value of m_FilledPolysList, and store it internally in m_filledPolysHash. | |
HASH_128 | GetHashValue (PCB_LAYER_ID aLayer) |
double | Similarity (const BOARD_ITEM &aOther) const override |
Return a measure of how likely the other object is to represent the same object. | |
bool | operator== (const ZONE &aOther) const |
bool | operator== (const BOARD_ITEM &aOther) const override |
NETINFO_ITEM * | GetNet () const |
Return #NET_INFO object for a given item. | |
void | SetNet (NETINFO_ITEM *aNetInfo) |
Set a NET_INFO object for the item. | |
int | GetNetCode () const |
bool | SetNetCode (int aNetCode, bool aNoAssert) |
Set net using a net code. | |
void | SetNetCode (int aNetCode) |
wxString | GetNetname () const |
wxString | GetNetnameMsg () const |
const wxString & | GetShortNetname () const |
const wxString & | GetDisplayNetname () const |
virtual int | GetOwnClearance (PCB_LAYER_ID aLayer, wxString *aSource=nullptr) const |
Return an item's "own" clearance in internal units. | |
virtual std::optional< int > | GetClearanceOverrides (wxString *aSource) const |
Return any clearance overrides set in the "classic" (ie: pre-rule) system. | |
virtual NETCLASS * | GetEffectiveNetClass () const |
Return the NETCLASS for this item. | |
wxString | GetNetClassName () const |
Returns the name of the effective netclass. | |
wxString | GetNetClassVariableSubstitutionName () const |
void | SetLocalRatsnestVisible (bool aVisible) |
bool | GetLocalRatsnestVisible () const |
TEARDROP_PARAMETERS & | GetTeardropParams () |
const TEARDROP_PARAMETERS & | GetTeardropParams () const |
void | SetTeardropsEnabled (bool aEnable) |
bool | GetTeardropsEnabled () const |
void | SetTeardropBestLengthRatio (double aRatio) |
double | GetTeardropBestLengthRatio () const |
void | SetTeardropMaxLength (int aMaxLength) |
int | GetTeardropMaxLength () const |
void | SetTeardropBestWidthRatio (double aRatio) |
double | GetTeardropBestWidthRatio () const |
void | SetTeardropMaxWidth (int aMaxWidth) |
int | GetTeardropMaxWidth () const |
void | SetTeardropCurved (bool aCurve) |
bool | GetTeardropCurved () const |
void | SetTeardropPreferZoneConnections (bool aPrefer) |
bool | GetTeardropPreferZoneConnections () const |
void | SetTeardropAllowSpanTwoTracks (bool aAllow) |
bool | GetTeardropAllowSpanTwoTracks () const |
void | SetTeardropMaxTrackWidth (double aRatio) |
double | GetTeardropMaxTrackWidth () const |
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. | |
void | SetX (int aX) |
void | SetY (int aY) |
virtual bool | HasHole () const |
virtual bool | HasDrilledHole () const |
virtual bool | IsTented (PCB_LAYER_ID aLayer) const |
Checks if the given object is tented (its copper shape is covered by solder mask) on a given side of the board. | |
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. | |
virtual void | RunOnDescendants (const std::function< void(BOARD_ITEM *)> &aFunction, int aDepth=0) const |
Invoke a function on all descendants. | |
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. | |
virtual STROKE_PARAMS | GetStroke () const |
virtual void | SetStroke (const STROKE_PARAMS &aStroke) |
const KIFONT::METRICS & | GetFontMetrics () const |
virtual int | BoardLayerCount () const |
Return the total number of layers for the board that this item resides on. | |
virtual int | BoardCopperLayerCount () const |
Return the total number of copper layers for the board that this item resides on. | |
virtual LSET | BoardLayerSet () const |
Return the LSET for the board that this item resides on. | |
bool | IsSideSpecific () const |
virtual BOARD_ITEM * | Duplicate () const |
Create a copy of this BOARD_ITEM. | |
void | SwapItemData (BOARD_ITEM *aImage) |
Swap data between aItem and aImage. | |
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. | |
virtual void | Normalize () |
Perform any normalization required after a user rotate and/or flip. | |
virtual void | NormalizeForCompare () |
Perform any normalization required to compare 2 graphics, especially if the can be rotated and/or flipped. | |
virtual const BOARD * | GetBoard () const |
Return the BOARD in which this BOARD_ITEM resides, or NULL if none. | |
virtual BOARD * | GetBoard () |
wxString | GetParentAsString () const |
For "parent" property. | |
wxString | GetLayerName () const |
Return the name of the PCB layer on which the item resides. | |
KICAD_T | Type () const |
Returns the type of object. | |
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 |
virtual void | ClearEditFlags () |
EDA_ITEM_FLAGS | GetTempFlags () const |
virtual 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. | |
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. | |
bool | IsForceVisible () const |
virtual const VECTOR2I | GetFocusPosition () const |
Similar to GetPosition, but allows items to return their visual center rather than their anchor. | |
virtual VECTOR2I | GetSortPosition () const |
Return the coordinates that should be used for sorting this element visually compared to other elements. | |
virtual INSPECT_RESULT | Visit (INSPECTOR inspector, void *testData, const std::vector< KICAD_T > &aScanTypes) |
May be re-implemented for each derived class in order to handle all the types given by its member data. | |
wxString | GetTypeDesc () const |
Return a translated description of the type for this EDA_ITEM for display in user facing messages. | |
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. | |
virtual bool | IsReplaceable () const |
Override this method in any derived object that supports test find and replace. | |
bool | operator< (const EDA_ITEM &aItem) const |
Test if another item is less than this object. | |
virtual const BOX2I | ViewBBox () const override |
Return the bounding box of the item covering all its layers. | |
virtual EMBEDDED_FILES * | GetEmbeddedFiles () |
bool | IsSCH_ITEM () const |
bool | IsBOARD_ITEM () const |
virtual void | ViewDraw (int aLayer, VIEW *aView) const |
Draw the parts of the object belonging to layer aLayer. | |
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 |
virtual void | Serialize (google::protobuf::Any &aContainer) const |
Serializes this object to the given Any message. | |
virtual bool | Deserialize (const google::protobuf::Any &aContainer) |
Deserializes the given protobuf message into this object. | |
Static Public Member Functions | |
static bool | ClassOf (const EDA_ITEM *aItem) |
static int | GetDefaultHatchPitch () |
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. | |
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. | |
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. | |
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. | |
Public Attributes | |
const KIID | m_Uuid |
Static Public Attributes | |
static VECTOR2I | ZeroOffset |
A value of wxPoint(0,0) which can be passed to the Draw() functions. | |
Protected Member Functions | |
virtual void | swapData (BOARD_ITEM *aImage) override |
virtual wxString | layerMaskDescribe () const |
Return a string (to be shown to the user) describing a layer mask. | |
bool | Matches (const wxString &aText, const EDA_SEARCH_DATA &aSearchData) const |
Compare aText against search criteria in aSearchData. | |
Protected Attributes | |
SHAPE_POLY_SET * | m_Poly |
Outline of the zone. | |
int | m_cornerSmoothingType |
unsigned int | m_cornerRadius |
wxString | m_zoneName |
An optional unique name for this zone, used for identifying it in DRC checking. | |
LSET | m_layerSet |
unsigned | m_priority |
bool | m_isRuleArea |
bool | m_ruleAreaPlacementEnabled |
Placement rule area data. | |
RULE_AREA_PLACEMENT_SOURCE_TYPE | m_ruleAreaPlacementSourceType |
wxString | m_ruleAreaPlacementSource |
TEARDROP_TYPE | m_teardropType |
bool | m_doNotAllowCopperPour |
bool | m_doNotAllowVias |
bool | m_doNotAllowTracks |
bool | m_doNotAllowPads |
bool | m_doNotAllowFootprints |
ZONE_CONNECTION | m_PadConnection |
int | m_ZoneClearance |
int | m_ZoneMinThickness |
int | m_fillVersion |
ISLAND_REMOVAL_MODE | m_islandRemovalMode |
long long int | m_minIslandArea |
When island removal mode is set to AREA, islands below this area will be removed. | |
bool | m_isFilled |
True when a zone was filled, false after deleting the filled areas. | |
bool | m_needRefill |
False when a zone was refilled, true after changes in zone params. | |
int | m_thermalReliefGap |
int | m_thermalReliefSpokeWidth |
ZONE_FILL_MODE | m_fillMode |
How to fill areas: | |
int | m_hatchThickness |
int | m_hatchGap |
EDA_ANGLE | m_hatchOrientation |
int | m_hatchSmoothingLevel |
double | m_hatchSmoothingValue |
double | m_hatchHoleMinArea |
int | m_hatchBorderAlgorithm |
SHAPE_POLY_SET::VERTEX_INDEX * | m_CornerSelection |
The index of the corner being moved or nullptr if no corner is selected. | |
int | m_localFlgs |
std::map< PCB_LAYER_ID, std::shared_ptr< SHAPE_POLY_SET > > | m_FilledPolysList |
LSET | m_fillFlags |
Temp variables used while filling. | |
std::map< PCB_LAYER_ID, HASH_128 > | m_filledPolysHash |
A hash value used in zone filling calculations to see if the filled areas are up to date. | |
ZONE_BORDER_DISPLAY_STYLE | m_borderStyle |
int | m_borderHatchPitch |
std::vector< SEG > | m_borderHatchLines |
std::map< PCB_LAYER_ID, std::set< int > > | m_insulatedIslands |
For each layer, a set of insulated islands that were not removed. | |
double | m_area |
double | m_outlinearea |
std::mutex | m_lock |
Lock used for multi-threaded filling on multi-layer zones. | |
NETINFO_ITEM * | m_netinfo |
Store all information about the net that item belongs to. | |
TEARDROP_PARAMETERS | m_teardropParams |
Not all BOARD_CONNECTED_ITEMs support teardrops, but we want those that do to share a single section in the property inspector. | |
PCB_LAYER_ID | m_layer |
bool | m_isKnockout |
bool | m_isLocked |
PCB_GROUP * | m_group |
EDA_ITEM_FLAGS | m_flags |
EDA_ITEM * | m_parent |
Linked list: Link (parent struct) | |
bool | m_forceVisible |
Private Attributes | |
bool | m_localRatsnestVisible |
KICAD_T | m_structType |
Run time identification, keep private so it can never be changed after a ctor sets it. | |
bool | m_isSCH_ITEM |
bool | m_isBOARD_ITEM |
VIEW_ITEM_DATA * | m_viewPrivData |
double | m_forcedTransparency |
Additional transparency for diff'ing items. | |
Handle a list of polygons defining a copper zone.
A zone is described by a main polygon, a time stamp, a layer or a layer set, and a net name. Other polygons inside the main polygon are holes in the zone.
|
inherited |
Enumerator | |
---|---|
DRC |
Definition at line 417 of file board_item.h.
ZONE::ZONE | ( | BOARD_ITEM_CONTAINER * | parent | ) |
Definition at line 48 of file zone.cpp.
References ZONE_SETTINGS::ExportSetting(), BOARD_ITEM::GetBoard(), BOARD_DESIGN_SETTINGS::GetDefaultZoneSettings(), BOARD::GetDesignSettings(), BOARD_ITEM::GetParentFootprint(), m_fillVersion, m_needRefill, m_Poly, SetIsRuleArea(), and SetLocalFlags().
ZONE::ZONE | ( | const ZONE & | aZone | ) |
Definition at line 90 of file zone.cpp.
References InitDataFromSrcInCopyCtor().
ZONE::~ZONE | ( | ) |
Definition at line 109 of file zone.cpp.
References BOARD_ITEM::GetBoard(), m_CornerSelection, and m_Poly.
void ZONE::AddPolygon | ( | const SHAPE_LINE_CHAIN & | aPolygon | ) |
Definition at line 814 of file zone.cpp.
References SHAPE_POLY_SET::AddHole(), SHAPE_POLY_SET::AddOutline(), SHAPE_LINE_CHAIN::IsClosed(), m_Poly, SHAPE_POLY_SET::OutlineCount(), and SetNeedRefill().
void ZONE::AddPolygon | ( | std::vector< VECTOR2I > & | aPolygon | ) |
Add a polygon to the zone outline.
If the zone outline is empty, this is the main outline. Otherwise it is a hole inside the main outline.
Definition at line 828 of file zone.cpp.
References AddPolygon(), SHAPE_LINE_CHAIN::Append(), and SHAPE_LINE_CHAIN::SetClosed().
Referenced by AddPolygon(), MULTICHANNEL_TOOL::copyRuleAreaContents(), and CADSTAR_PCB_ARCHIVE_LOADER::getZoneFromCadstarShape().
bool ZONE::AppendCorner | ( | VECTOR2I | aPosition, |
int | aHoleIdx, | ||
bool | aAllowDuplication = false |
||
) |
Add a new corner to the zone outline (to the main outline or a hole)
aPosition | is the position of the new corner. |
aHoleIdx | is the index of the hole (-1 for the main outline, >= 0 for hole). |
aAllowDuplication | is a flag to indicate whether it is allowed to add this corner even if it is duplicated. |
Definition at line 845 of file zone.cpp.
References SHAPE_POLY_SET::Append(), SHAPE_POLY_SET::HoleCount(), m_Poly, SHAPE_POLY_SET::NewOutline(), SHAPE_POLY_SET::OutlineCount(), SetNeedRefill(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by BOARD::AddArea(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), TEST_BOARD_ITEM_FIXTURE::Instantiate(), PCB_IO_EAGLE::loadPlain(), PCB_IO_EAGLE::packageCircle(), and PCB_IO_EAGLE::packageRectangle().
|
virtualinherited |
Return the total number of copper layers for the board that this item resides on.
Definition at line 117 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), and BOARD::GetCopperLayerCount().
Referenced by PAD::ClearZoneLayerOverrides(), PCB_VIA::ClearZoneLayerOverrides(), PAD::Flip(), PADSTACK::ForEachUniqueLayer(), PCB_VIA::GetLayerSet(), PAD::PAD(), PCB_VIA::PCB_VIA(), PADSTACK::RelevantShapeLayers(), PNS_KICAD_IFACE_BASE::syncPad(), and PADSTACK::UniqueLayers().
|
virtualinherited |
Return the total number of layers for the board that this item resides on.
Definition at line 106 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), and BOARD_ITEM::GetLayerSet().
|
virtualinherited |
Return the LSET for the board that this item resides on.
Definition at line 128 of file board_item.cpp.
References LSET::AllLayersMask(), BOARD_ITEM::GetBoard(), and BOARD_ITEM::GetLayerSet().
Referenced by PADSTACK::EffectiveLayerFor().
void ZONE::BuildHashValue | ( | PCB_LAYER_ID | aLayer | ) |
Build the hash value of m_FilledPolysList, and store it internally in m_filledPolysHash.
Used in zone filling calculations, to know if m_FilledPolysList is up to date.
Definition at line 454 of file zone.cpp.
References g_nullPoly, SHAPE_POLY_SET::GetHash(), m_filledPolysHash, and m_FilledPolysList.
bool ZONE::BuildSmoothedPoly | ( | SHAPE_POLY_SET & | aSmoothedPoly, |
PCB_LAYER_ID | aLayer, | ||
SHAPE_POLY_SET * | aBoardOutline, | ||
SHAPE_POLY_SET * | aSmoothedPolyWithApron = nullptr |
||
) | const |
Definition at line 1179 of file zone.cpp.
References ARC_HIGH_DEF, SHAPE_POLY_SET::BooleanAdd(), SHAPE_POLY_SET::BooleanIntersection(), SHAPE_POLY_SET::BooleanSubtract(), SHAPE_POLY_SET::ClearArcs(), SHAPE_POLY_SET::CloneDropTriangulation(), BOARD_ITEM::GetBoard(), BOARD::GetDesignSettings(), GetInteractingZones(), GetIsRuleArea(), GetNumCorners(), SHAPE_POLY_SET::Inflate(), IsTeardropArea(), m_cornerRadius, m_cornerSmoothingType, BOARD_DESIGN_SETTINGS::m_MaxError, m_Poly, BOARD_DESIGN_SETTINGS::m_ZoneKeepExternalFillets, m_ZoneMinThickness, Outline(), SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), SHAPE_POLY_SET::PM_FAST, SHAPE_POLY_SET::PM_STRICTLY_SIMPLE, ZONE_SETTINGS::SMOOTHING_CHAMFER, and ZONE_SETTINGS::SMOOTHING_FILLET.
Referenced by ZONE_FILLER::fillSingleZone(), and TransformSmoothedOutlineToPolygon().
void ZONE::CacheBoundingBox | ( | ) |
Used to preload the zone bounding box cache so we don't have to worry about mutex-locking it each time.
Definition at line 410 of file zone.cpp.
References GetBoundingBox().
void ZONE::CacheTriangulation | ( | PCB_LAYER_ID | aLayer = UNDEFINED_LAYER | ) |
Create a list of triangles that "fill" the solid areas used for instance to draw these solid areas on OpenGL.
Definition at line 1115 of file zone.cpp.
References SHAPE_POLY_SET::CacheTriangulation(), m_FilledPolysList, m_Poly, and UNDEFINED_LAYER.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::buildRTrees(), and ZONE_FILLER::Fill().
double ZONE::CalculateFilledArea | ( | ) |
Compute the area currently occupied by the zone fill.
Definition at line 1335 of file zone.cpp.
References m_area, and m_FilledPolysList.
Referenced by TEARDROP_MANAGER::createTeardrop().
double ZONE::CalculateOutlineArea | ( | ) |
Compute the area of the zone outline (not the filled area).
Definition at line 1358 of file zone.cpp.
References std::abs(), SHAPE_POLY_SET::Area(), m_outlinearea, and m_Poly.
|
inline |
Return an iterator to visit all points of the zone's main outline with holes.
Definition at line 546 of file zone.h.
References SHAPE_POLY_SET::CIterateWithHoles(), and m_Poly.
|
inlinestatic |
Definition at line 82 of file zone.h.
References PCB_ZONE_T, and EDA_ITEM::Type().
|
inlineinherited |
Definition at line 123 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::ClearFlags().
Referenced by FOOTPRINT_DIFF_WIDGET::DisplayDiff(), SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), PCB_BASE_FRAME::FocusOnItems(), PL_SELECTION_TOOL::unhighlight(), EE_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), PCB_TEST_SELECTION_TOOL::unhighlightInternal(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL.
Definition at line 141 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and EDA_ITEM::GetEditFlags().
Referenced by BOARD::Add(), FOOTPRINT::Add(), LIB_SYMBOL::ClearEditFlags(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawTable(), 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 129 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::AlignToGrid(), 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(), PCB_TUNING_PATTERN::EditPush(), PCB_TUNING_PATTERN::EditRevert(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_SELECTION_TOOL::ExitGroup(), SCH_IO_KICAD_SEXPR::Format(), SYMBOL_EDIT_FRAME::GetSymbolFromRedoList(), SYMBOL_EDIT_FRAME::GetSymbolFromUndoList(), EE_SELECTION_TOOL::GuessSelectionCandidates(), 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_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_SELECTION_TOOL::RebuildSelection(), PAD::Recombine(), GERBVIEW_FRAME::RemapLayers(), DRC_TEST_PROVIDER_DISALLOW::Run(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_IO_KICAD_SEXPR_LIB_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().
|
inlineinherited |
Definition at line 122 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and SELECTED.
Referenced by PCB_POINT_EDITOR::addCorner(), FOOTPRINT_DIFF_WIDGET::DisplayDiff(), EDIT_TOOL::Duplicate(), LIB_SYMBOL::LIB_SYMBOL(), ARRAY_TOOL::onDialogClosed(), SCH_COMMIT::Revert(), EE_TOOL_BASE< T >::saveCopyInUndoList(), SCH_COMMIT::Stage(), PL_SELECTION_TOOL::unhighlight(), EE_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), PCB_TEST_SELECTION_TOOL::unhighlightInternal(), and GERBVIEW_SELECTION_TOOL::unselectVisually().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL.
Definition at line 153 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and EDA_ITEM::GetTempFlags().
Referenced by LIB_SYMBOL::ClearTempFlags(), SCH_EDIT_FRAME::PutDataInPreviousState(), and SCH_ITEM::SwapFlags().
|
overridevirtual |
Create a duplicate of this item with linked list members set to NULL.
The default version will return NULL in release builds and likely crash the program. In debug builds, a warning message indicating the derived class has not implemented cloning. This really should be a pure virtual function. Due to the fact that there are so many objects derived from EDA_ITEM, the decision was made to return NULL until all the objects derived from EDA_ITEM implement cloning. Once that happens, this function should be made pure.
Reimplemented from EDA_ITEM.
|
inherited |
Delete this object after removing from its parent if it has one.
Definition at line 210 of file board_item.cpp.
References BOARD_ITEM::GetParent(), and BOARD_ITEM_CONTAINER::Remove().
|
inlinevirtualinherited |
Deserializes the given protobuf message into this object.
aContainer | is an Any which should have a concrete type matching this object |
Reimplemented in SCH_LABEL, SCH_DIRECTIVE_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, BOARD_STACKUP, FOOTPRINT, PAD, PADSTACK, PCB_FIELD, PCB_SHAPE, PCB_TEXT, PCB_TRACK, PCB_ARC, and PCB_VIA.
Definition at line 53 of file serializable.h.
|
virtualinherited |
Create a copy of this BOARD_ITEM.
Reimplemented in FOOTPRINT.
Definition at line 244 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_POINT_EDITOR::addCorner(), PCB_GROUP::DeepDuplicate(), KIGFX::PCB_PAINTER::draw(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), FOOTPRINT::Duplicate(), EDIT_TOOL::Duplicate(), FOOTPRINT::DuplicateItem(), and ARRAY_TOOL::onDialogClosed().
|
overridevirtual |
Flip this object, i.e.
change the board side for this object (like Mirror() but changes layer).
aCentre | is the rotation point. |
aFlipDirection | is the direction of the flip. |
Reimplemented from BOARD_ITEM.
Definition at line 767 of file zone.cpp.
References Flip(), BOARD::FlipLayer(), BOARD_ITEM::GetBoard(), GetLayerSet(), m_FilledPolysList, Mirror(), SetFilledPolysList(), and SetLayerSet().
Referenced by Flip().
|
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 |
Definition at line 120 of file zone.h.
References m_priority.
Referenced by KI_TEST::CheckFpZone(), ZONE_FILLER::Fill(), PCB_IO_KICAD_SEXPR::format(), GetMsgPanelInfo(), ZONE_SEARCH_HANDLER::getResultCell(), FOOTPRINT::cmp_zones::operator()(), ZONE_SETTINGS::operator<<(), operator==(), Similarity(), ZONE_FILLER::subtractHigherPriorityZones(), ZONE_DESC::ZONE_DESC(), BOARD_EDITOR_CONTROL::ZoneMerge(), and zoneNeedsUpdate().
|
virtualinherited |
Definition at line 61 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 47 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD_ITEM::GetParent(), PCB_T, and EDA_ITEM::Type().
Referenced by CN_CONNECTIVITY_ALGO::Add(), BOARD_ADAPTER::addShape(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), BOARD_ITEM::BoardCopperLayerCount(), BOARD_ITEM::BoardLayerCount(), BOARD_ITEM::BoardLayerSet(), CN_CONNECTIVITY_ALGO::Build(), PAD::BuildEffectivePolygon(), PAD::buildEffectiveShape(), BuildSmoothedPoly(), collidesWithArea(), PCB_TUNING_PATTERN::CreateNew(), BOARD_INSPECTION_TOOL::DiffFootprint(), PAD::doCheckPad(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), enclosedByAreaFunc(), existsOnLayerFunc(), ZONE_FILLER::Fill(), PCB_VIA::FlashLayer(), PAD::FlashLayer(), FOOTPRINT::Flip(), PCB_DIMENSION_BASE::Flip(), PCB_GENERATOR::Flip(), PCB_SHAPE::Flip(), PCB_TABLE::Flip(), PCB_TARGET::Flip(), PCB_TEXT::Flip(), PCB_TRACK::Flip(), PCB_ARC::Flip(), PCB_VIA::Flip(), Flip(), FOOTPRINT::FootprintNeedsUpdate(), PCB_IO_KICAD_SEXPR::format(), fromToFunc(), BOARD_ITEM::GetBoard(), PCBEXPR_CONTEXT::GetBoard(), NETINFO_ITEM::GetBoundingBox(), GetBoundingBox(), FOOTPRINT::GetBoundingBox(), FOOTPRINT::GetBoundingHull(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), PCB_BASE_EDIT_FRAME::GetContextualTextVars(), BOARD_CONNECTED_ITEM::GetDisplayNetname(), PCB_VIA::GetDrillConstraint(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), PCB_TEXT::GetEffectiveShape(), getFieldFunc(), GetInteractingZones(), GetItemDescription(), FOOTPRINT::GetLayerBoundingBox(), BOARD_ITEM::GetLayerName(), PCB_VIA::GetMinAnnulus(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), NETINFO_ITEM::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfo(), GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfoBase_Common(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), PCB_VIA::GetOutermostConnectedLayers(), BOARD_CONNECTED_ITEM::GetOwnClearance(), PAD::GetOwnClearance(), PCB_MARKER::GetSeverity(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), FOOTPRINT::GetSide(), PCB_SHAPE::GetSolderMaskExpansion(), PCB_TRACK::GetSolderMaskExpansion(), PCB_VIA::GetSolderMaskExpansion(), PAD::GetSolderMaskExpansion(), PAD::GetSolderPasteMargin(), BOARD::GetTrackLength(), PCB_TRACK::GetWidthConstraint(), PCB_VIA::GetWidthConstraint(), inDiffPairFunc(), ROUTER_TOOL::Init(), intersectsAreaFunc(), intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), intersectsFrontCourtyardFunc(), BOARD_ITEM::IsLocked(), BOARD_ITEM::IsSideSpecific(), PCB_VIA::IsTented(), BOARD_ITEM::layerMaskDescribe(), PCB_VIA::layerMaskDescribe(), PAD::MergePrimitivesAsPolygon(), Move(), DIALOG_TEXTBOX_PROPERTIES::onBorderChecked(), PCB_IO_EAGLE::packageWire(), padNeedsUpdate(), PCB_TUNING_PATTERN::recoverBaseline(), BOARD::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_PROPERTIES::TransferDataFromWindow(), DIALOG_FOOTPRINT_ASSOCIATIONS::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), TransformSmoothedOutlineToPolygon(), BOARD::UpdateRatsnestExclusions(), FOOTPRINT::ViewBBox(), PAD::ViewBBox(), PCB_TRACK::ViewBBox(), PAD::ViewGetLayers(), PAD::ViewGetLOD(), PCB_REFERENCE_IMAGE::ViewGetLOD(), PCB_VIA::ViewGetLOD(), ZONE(), FOOTPRINT::~FOOTPRINT(), and ~ZONE().
int ZONE::GetBorderHatchPitch | ( | ) | const |
HatchBorder related methods.
Definition at line 913 of file zone.cpp.
References m_borderHatchPitch.
Referenced by PCB_IO_KICAD_SEXPR::format(), and ZONE_SETTINGS::operator<<().
|
overridevirtual |
Reimplemented from EDA_ITEM.
Definition at line 381 of file zone.cpp.
References SHAPE_POLY_SET::BBox(), BOARD_ITEM::GetBoard(), and m_Poly.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), ZONE_FILLER::buildCopperItemClearances(), ZONE_FILLER::buildThermalSpokes(), CacheBoundingBox(), collidesWithArea(), ZONE_FILLER::Fill(), ZONE_FILLER::fillNonCopperZone(), GetInteractingZones(), HitTest(), intersectsAreaFunc(), ZONE_FILLER::knockoutThermalReliefs(), DRC_TEST_PROVIDER_DISALLOW::Run(), ZONE_FILLER::subtractHigherPriorityZones(), 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 DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer().
|
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 111 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 |
|
inlinevirtualinherited |
Return any clearance overrides set in the "classic" (ie: pre-rule) system.
aSource | [out] optionally reports the source as a user-readable string. |
Reimplemented in PAD.
Definition at line 149 of file board_connected_item.h.
Referenced by DRC_ENGINE::EvalRules().
|
inline |
Definition at line 556 of file zone.h.
References SHAPE_POLY_SET::CVertex(), SHAPE_POLY_SET::GetRelativeIndices(), and m_Poly.
Referenced by GetPosition(), operator==(), and Similarity().
|
inline |
Definition at line 667 of file zone.h.
References m_cornerRadius.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), operator==(), Similarity(), and zoneNeedsUpdate().
|
inline |
Definition at line 663 of file zone.h.
References m_cornerSmoothingType.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), operator==(), Similarity(), and zoneNeedsUpdate().
|
static |
Definition at line 1095 of file zone.cpp.
References EDA_IU_SCALE::mmToIU(), pcbIUScale, and ZONE_BORDER_HATCH_DIST_MM.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), ALTIUM_PCB::ConvertShapeBasedRegions6ToBoardItem(), ALTIUM_PCB::ConvertShapeBasedRegions6ToFootprintItem(), ALTIUM_PCB::HelperPcpShapeAsBoardKeepoutRegion(), ALTIUM_PCB::HelperPcpShapeAsFootprintKeepoutRegion(), PCB_IO_EAGLE::loadPlain(), PCB_IO_KICAD_LEGACY::loadZONE_CONTAINER(), PCB_IO_EAGLE::packageCircle(), PCB_IO_EAGLE::packagePolygon(), PCB_IO_EAGLE::packageRectangle(), ALTIUM_PCB::ParsePolygons6Data(), and PCB_IO_KICAD_SEXPR_PARSER::parseZONE().
|
inherited |
Definition at line 150 of file board_connected_item.cpp.
References emptyString, BOARD_ITEM::GetBoard(), NETINFO_ITEM::GetDisplayNetname(), and BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by KIGFX::PCB_PAINTER::draw(), and PCB_TRACK::ViewGetLOD().
|
inline |
Definition at line 728 of file zone.h.
References m_doNotAllowCopperPour.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), GetMsgPanelInfo(), isKeepoutZone(), ZONE_SETTINGS::operator<<(), operator==(), PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates(), DRC_TEST_PROVIDER_DISALLOW::Run(), Similarity(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 732 of file zone.h.
References m_doNotAllowFootprints.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), GetMsgPanelInfo(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), isKeepoutZone(), ZONE_SETTINGS::operator<<(), operator==(), Similarity(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 731 of file zone.h.
References m_doNotAllowPads.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), GetMsgPanelInfo(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), isKeepoutZone(), ZONE_SETTINGS::operator<<(), operator==(), Similarity(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 730 of file zone.h.
References m_doNotAllowTracks.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), GetMsgPanelInfo(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), isKeepoutZone(), ZONE_SETTINGS::operator<<(), operator==(), Similarity(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 729 of file zone.h.
References m_doNotAllowVias.
Referenced by KI_TEST::CheckFpZone(), DRAWING_TOOL::DrawVia(), PCB_IO_KICAD_SEXPR::format(), GetMsgPanelInfo(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), isKeepoutZone(), ZONE_SETTINGS::operator<<(), operator==(), Similarity(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inlineinherited |
Definition at line 133 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(), SYMBOL_EDITOR_EDIT_TOOL::Swap(), SCH_ITEM::SwapFlags(), DIALOG_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLE_PROPERTIES::TransferDataFromWindow(), DIALOG_TABLECELL_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 289 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 |
Return the NETCLASS for this item.
Definition at line 99 of file board_connected_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD::GetDesignSettings(), NETINFO_ITEM::GetNetClass(), BOARD_CONNECTED_ITEM::m_netinfo, and BOARD_DESIGN_SETTINGS::m_NetSettings.
Referenced by PCBEXPR_NETCLASS_VALUE::AsString(), PCBEXPR_NETCLASS_VALUE::EqualTo(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), PCB_VIA::GetDrillValue(), BOARD_INSPECTION_TOOL::getItemDescription(), PAD::GetMsgPanelInfo(), GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfoBase_Common(), BOARD_CONNECTED_ITEM::GetNetClassName(), BOARD_CONNECTED_ITEM::GetNetClassVariableSubstitutionName(), hasNetclassFunc(), PCBEXPR_NETCLASS_VALUE::NotEqualTo(), PCB_EDIT_FRAME::SetTrackSegmentWidth(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), and DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem().
|
overridevirtual |
Some pad shapes can be complex (rounded/chamfered rectangle), even without considering custom shapes.
This routine returns a COMPOUND shape (set of simple shapes which make up the pad for use with routing, collision determination, etc).
aLayer | in case of items spanning multiple layers, only the shapes belonging to aLayer will be returned. Pass UNDEFINED_LAYER to return shapes for all layers. |
aFlash | optional parameter allowing a caller to force the pad to be flashed (or not flashed) on the current layer (default is to honour the pad's setting and the current connections for the given layer). |
Reimplemented from BOARD_ITEM.
Definition at line 1396 of file zone.cpp.
References m_FilledPolysList.
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL, SCHEMATIC, BOARD, and FOOTPRINT.
Definition at line 444 of file eda_item.h.
Referenced by PCB_IO_KICAD_SEXPR_PARSER::Parse().
|
inline |
Definition at line 623 of file zone.h.
References m_FilledPolysList.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), DRC_TEST_PROVIDER_SOLDER_MASK::buildRTrees(), ALTIUM_PCB::ConvertArcs6ToBoardItem(), ALTIUM_PCB::ConvertTracks6ToBoardItem(), CONNECTIVITY_DATA::IsConnectedOnLayer(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), and ALTIUM_PCB::ParseRegions6Data().
|
inline |
This area is cached from the most recent call to CalculateFilledArea().
Definition at line 234 of file zone.h.
References m_area.
|
inline |
Definition at line 617 of file zone.h.
References m_FilledPolysList.
Referenced by CN_LIST::Add(), DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), BOARD_ADAPTER::addSolidAreasShapes(), CN_ZONE_LAYER::AnchorCount(), CADSTAR_PCB_ARCHIVE_LOADER::calculateZonePriorities(), CN_VISITOR::checkZoneZoneConnection(), CN_ZONE_LAYER::CN_ZONE_LAYER(), KIGFX::PCB_PAINTER::draw(), PCB_IO_KICAD_SEXPR::format(), CN_ZONE_LAYER::GetAnchor(), ZONES_CONTAINER::OnUserConfirmChange(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::Run(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), and DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testZoneLayer().
|
inline |
Definition at line 254 of file zone.h.
References m_fillFlags.
|
inline |
Definition at line 193 of file zone.h.
References m_fillMode.
Referenced by KI_TEST::CheckFpZone(), ZONE_FILLER::fillCopperZone(), ZONE_FILLER::fillNonCopperZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
PCB_LAYER_ID ZONE::GetFirstLayer | ( | ) | const |
Definition at line 270 of file zone.cpp.
References m_layerSet, LSET::Seq(), LSET::UIOrder(), and UNDEFINED_LAYER.
Referenced by PANEL_ZONE_GAL::ActivateSelectedZone(), PANE_ZONE_VIEWER::ActivateSelectedZone(), BOOST_AUTO_TEST_CASE(), DRAWING_TOOL::DrawZone(), PCB_EDIT_FRAME::Edit_Zone_Params(), PCB_IO_KICAD_SEXPR::format(), GetLayer(), HatchBorder(), TEARDROP_MANAGER::setTeardropPriorities(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), and TransformSmoothedOutlineToPolygon().
|
inlineinherited |
Definition at line 130 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by BACK_ANNOTATE::applyChangelist(), BuildBoardPolygonOutlines(), collidesWithArea(), SCH_TABLE::DeleteMarkedCells(), PCB_TABLE::DeleteMarkedCells(), doConvertOutlineToPolygon(), PL_EDIT_TOOL::DoDelete(), PCB_TOOL_BASE::doInteractiveItemPlacement(), KIGFX::SCH_PAINTER::draw(), PCB_TUNING_PATTERN::EditPush(), PCB_TUNING_PATTERN::EditRevert(), enclosedByAreaFunc(), DRC_ENGINE::EvalRules(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), intersectsAreaFunc(), 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::Recombine(), BOARD::Remove(), FOOTPRINT::Remove(), SCH_EDIT_FRAME::SaveCopyInUndoList(), SCH_IO_KICAD_SEXPR::saveTable(), DS_DATA_ITEM::SyncDrawItems(), DS_DATA_ITEM_POLYGONS::SyncDrawItems(), DS_DATA_ITEM_BITMAP::SyncDrawItems(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), and PCB_TUNING_PATTERN::Update().
|
inlinevirtualinherited |
Similar to GetPosition, but allows items to return their visual center rather than their anchor.
Reimplemented in BOARD, PCB_SHAPE, PCB_TRACK, and PCB_ARC.
Definition at line 250 of file eda_item.h.
References EDA_ITEM::GetPosition().
Referenced by SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), and DRAWING_TOOL::PlaceTuningPattern().
|
inherited |
Definition at line 100 of file board_item.cpp.
References KIFONT::METRICS::Default().
Referenced by BOARD_ADAPTER::addText(), KIGFX::PCB_PAINTER::draw(), PCB_TEXT::getFontMetrics(), PCB_TEXTBOX::getFontMetrics(), BRDITEMS_PLOTTER::PlotBoardGraphicItem(), BRDITEMS_PLOTTER::PlotDimension(), BRDITEMS_PLOTTER::PlotFootprintGraphicItems(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), PCB_TEXT::TransformTextToPolySet(), and PCB_TEXTBOX::TransformTextToPolySet().
|
inlineinherited |
Definition at line 161 of file view_item.h.
Referenced by KIGFX::SCH_PAINTER::draw(), EDA_ITEM::EDA_ITEM(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), and EDA_ITEM::operator=().
|
inherited |
Definition at line 328 of file board_item.cpp.
References BOARD_ITEM::GetParentFootprint(), EDA_ITEM::GetPosition(), and RotatePoint().
Referenced by PCB_IO_IPC2581::addLocationNode(), EDA_DATA::PACKAGE::AddPin(), PCB_IO_KICAD_SEXPR::format(), getMatchingTextItem(), PCB_FIELDS_GRID_TABLE::GetValue(), DIALOG_PAD_PROPERTIES::initValues(), FOOTPRINT::cmp_pads::operator()(), padNeedsUpdate(), processTextItem(), and PCB_FIELDS_GRID_TABLE::SetValue().
|
overridevirtual |
Reimplemented from EDA_ITEM.
Definition at line 728 of file zone.cpp.
References _, GetIsRuleArea(), IsOnCopperLayer(), and IsTeardropArea().
Referenced by GetMsgPanelInfo().
HASH_128 ZONE::GetHashValue | ( | PCB_LAYER_ID | aLayer | ) |
Definition at line 445 of file zone.cpp.
References g_nullPoly, SHAPE_POLY_SET::GetHash(), and m_filledPolysHash.
|
inline |
Definition at line 303 of file zone.h.
References m_hatchBorderAlgorithm.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), and ZONE_SETTINGS::operator<<().
|
inline |
Definition at line 288 of file zone.h.
References m_hatchGap.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 300 of file zone.h.
References m_hatchHoleMinArea.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 800 of file zone.h.
References m_borderHatchLines.
Referenced by KIGFX::PCB_PAINTER::draw().
|
inline |
Definition at line 291 of file zone.h.
References m_hatchOrientation.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 294 of file zone.h.
References m_hatchSmoothingLevel.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 297 of file zone.h.
References m_hatchSmoothingValue.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 606 of file zone.h.
References m_borderStyle.
Referenced by KIGFX::PCB_PAINTER::draw(), PCB_IO_KICAD_SEXPR::format(), and ZONE_SETTINGS::operator<<().
|
inline |
Definition at line 285 of file zone.h.
References m_hatchThickness.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
void ZONE::GetInteractingZones | ( | PCB_LAYER_ID | aLayer, |
std::vector< ZONE * > * | aSameNetCollidingZones, | ||
std::vector< ZONE * > * | aOtherNetIntersectingZones | ||
) | const |
Some intersecting zones, despite being on the same layer with the same net, cannot be merged due to other parameters such as fillet radius.
The copper pour will end up effectively merged though, so we need to do some calculations with them in mind.
Definition at line 1144 of file zone.cpp.
References SHAPE_POLY_SET::Collide(), epsilon, BOARD_ITEM::GetBoard(), GetBoundingBox(), BOARD_CONNECTED_ITEM::GetNetCode(), BOX2< Vec >::Inflate(), m_Poly, EDA_IU_SCALE::mmToIU(), and pcbIUScale.
Referenced by BuildSmoothedPoly().
|
inline |
Definition at line 750 of file zone.h.
References m_islandRemovalMode.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Accessors to parameters used in Rule Area zones:
Definition at line 721 of file zone.h.
References m_isRuleArea.
Referenced by BuildSmoothedPoly(), KI_TEST::CheckFpZone(), DRAWING_TOOL::DrawVia(), PCB_EDIT_FRAME::Edit_Zone_Params(), PCB_IO_KICAD_SEXPR::format(), GetFriendlyName(), GetItemDescription(), GetMsgPanelInfo(), HitTestFilledArea(), IsConnected(), PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), isKeepoutZone(), PCB_SELECTION_TOOL::itemPassesFilter(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), EDA_3D_CANVAS::OnMouseMove(), ZONE_SETTINGS::operator<<(), operator==(), PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates(), MULTICHANNEL_TOOL::repeatLayout(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), Similarity(), PNS_KICAD_IFACE_BASE::syncZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones(), BOARD_EDITOR_CONTROL::ZoneDuplicate(), BOARD_EDITOR_CONTROL::ZoneMerge(), and zoneNeedsUpdate().
|
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.
aLong | indicates a long string is acceptable |
Reimplemented from EDA_ITEM.
Definition at line 865 of file zone.cpp.
References _, BOARD_ITEM::GetBoard(), GetIsRuleArea(), BOARD_ITEM::GetLayerName(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), SHAPE_POLY_SET::VERTEX_INDEX::m_contour, m_CornerSelection, m_layerSet, and LSET::Seq().
Referenced by DRC_ENGINE::EvalRules(), and PNS_KICAD_IFACE_BASE::syncZone().
|
overridevirtual |
Return the primary layer this item is on.
Reimplemented from BOARD_ITEM.
Definition at line 260 of file zone.cpp.
References GetFirstLayer(), m_layerSet, and UNDEFINED_LAYER.
Referenced by BOOST_AUTO_TEST_CASE(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testGraphicClearances(), and ZONE_DESC::ZONE_DESC().
|
inherited |
Return the name of the PCB layer on which the item resides.
Definition at line 139 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD::GetStandardLayerName(), and BOARD_ITEM::m_layer.
Referenced by PCB_DIMENSION_BASE::GetItemDescription(), PCB_SHAPE::GetItemDescription(), PCB_TEXT::GetItemDescription(), PCB_TEXTBOX::GetItemDescription(), PCB_TRACK::GetItemDescription(), GetItemDescription(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_DIM_LEADER::GetMsgPanelInfo(), PCB_SHAPE::GetMsgPanelInfo(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TARGET::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), GetMsgPanelInfo(), FOOTPRINT_SEARCH_HANDLER::getResultCell(), TEXT_SEARCH_HANDLER::getResultCell(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), PCB_FIELDS_GRID_TABLE::GetValue(), and FOOTPRINT::ResolveTextVar().
|
inlineoverridevirtual |
Return a std::bitset of all layers on which the item physically resides.
Reimplemented from BOARD_ITEM.
Definition at line 130 of file zone.h.
References m_layerSet.
Referenced by PANE_ZONE_VIEWER::ActivateSelectedZone(), CN_CONNECTIVITY_ALGO::Add(), CADSTAR_PCB_ARCHIVE_LOADER::calculateZonePriorities(), KI_TEST::CheckFpZone(), collidesWithArea(), MULTICHANNEL_TOOL::copyRuleAreaContents(), Flip(), PCB_IO_KICAD_SEXPR::format(), ZONE_SEARCH_HANDLER::getResultCell(), MODEL_ZONES_OVERVIEW_TABLE::GetValueByRow(), InitDataFromSrcInCopyCtor(), GENERAL_COLLECTOR::Inspect(), BOARD_INSPECTION_TOOL::InspectClearance(), intersectsAreaFunc(), ZONES_CONTAINER::OnUserConfirmChange(), FOOTPRINT::cmp_zones::operator()(), ZONE_SETTINGS::operator<<(), PCB_IO_KICAD_SEXPR_PARSER::parseBOARD_unchecked(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::Run(), PCB_SELECTION_TOOL::Selectable(), Similarity(), PNS_KICAD_IFACE_BASE::syncZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), BOARD::TestZoneIntersection(), BOARD_EDITOR_CONTROL::ZoneDuplicate(), BOARD_EDITOR_CONTROL::ZoneMerge(), and zoneNeedsUpdate().
|
overridevirtual |
Reimplemented from BOARD_CONNECTED_ITEM.
Definition at line 528 of file zone.cpp.
References m_isRuleArea, and m_ZoneClearance.
Referenced by ZONE_FILLER::buildThermalSpokes(), CADSTAR_PCB_ARCHIVE_LOADER::calculateZonePriorities(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), GetLocalClearance(), BOARD_INSPECTION_TOOL::InspectClearance(), ZONE_FILLER::knockoutThermalReliefs(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inlineoverridevirtual |
Return any local clearances set in the "classic" (ie: pre-rule) system.
aSource | [out] optionally reports the source as a user-readable string. |
Reimplemented from BOARD_CONNECTED_ITEM.
Definition at line 163 of file zone.h.
References _, GetLocalClearance(), and m_isRuleArea.
|
inline |
Definition at line 334 of file zone.h.
References m_localFlgs.
Referenced by InitDataFromSrcInCopyCtor().
|
inlineinherited |
Definition at line 194 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_localRatsnestVisible.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint().
|
inline |
|
overridevirtual |
|
inline |
Definition at line 753 of file zone.h.
References m_minIslandArea.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inline |
Definition at line 270 of file zone.h.
References m_ZoneMinThickness.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), ZONE_FILLER::buildThermalSpokes(), KI_TEST::CheckFpZone(), DRC_ENGINE::EvalRules(), ZONE_FILLER::fillCopperZone(), ZONE_FILLER::fillNonCopperZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), operator==(), Similarity(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
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 573 of file zone.cpp.
References _, AccumulateDescription(), GetAssignedPriority(), BOARD_ITEM::GetBoard(), GetDoNotAllowCopperPour(), GetDoNotAllowFootprints(), GetDoNotAllowPads(), GetDoNotAllowTracks(), GetDoNotAllowVias(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), GetFriendlyName(), GetIsRuleArea(), BOARD_ITEM::GetLayerName(), BOARD_CONNECTED_ITEM::GetNetname(), BOARD_CONNECTED_ITEM::GetOwnClearance(), GetRuleAreaPlacementEnabled(), GetRuleAreaPlacementSource(), BOARD_ITEM::IsLocked(), IsOnCopperLayer(), m_area, SHAPE_POLY_SET::VERTEX_INDEX::m_contour, m_CornerSelection, m_FilledPolysList, m_fillMode, m_layerSet, m_zoneName, UNITS_PROVIDER::MessageTextFromValue(), PCB_EDIT_FRAME_NAME, LSET::Seq(), UNDEFINED_LAYER, and UnescapeString().
|
inlineinherited |
Return #NET_INFO object for a given item.
Definition at line 77 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by PNS_KICAD_IFACE::createBoardItem(), EDIT_TOOL::DragArcTrack(), PCB_TUNING_PATTERN::EditStart(), EDIT_TOOL::FilletTracks(), PNS::NODE::FindItemByParent(), MODEL_ZONES_OVERVIEW_TABLE::GetValueByRow(), PCB_TUNING_PATTERN::initBaseLines(), BOARD_INSPECTION_TOOL::InspectClearance(), isCoupledDiffPairFunc(), CADSTAR_PCB_ARCHIVE_LOADER::makeTracksFromShapes(), BOARD_EDITOR_CONTROL::RepairBoard(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), PNS_KICAD_IFACE_BASE::syncArc(), PNS_KICAD_IFACE_BASE::syncGraphicalItem(), PNS_KICAD_IFACE_BASE::syncPad(), PNS_KICAD_IFACE_BASE::syncTrack(), PNS_KICAD_IFACE_BASE::syncVia(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), and PCB_CONTROL::UpdateMessagePanel().
|
inherited |
Returns the name of the effective netclass.
Primarily for the use of the property system.
Definition at line 108 of file board_connected_item.cpp.
References BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), and NETCLASS::GetName().
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), and main().
|
inherited |
Definition at line 114 of file board_connected_item.cpp.
References BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), and NETCLASS::GetVariableSubstitutionName().
|
inherited |
Definition at line 91 of file board_connected_item.cpp.
References NETINFO_ITEM::GetNetCode(), and BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), CreepageGraph::AddNetElements(), TEARDROP_MANAGER::areItemsInSameZone(), BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), ZONE_FILLER::buildCopperItemClearances(), KI_TEST::CheckFpZone(), connectedItemFilter(), GENCAD_EXPORTER::CreateRoutesSection(), TEARDROP_MANAGER::createTeardrop(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), KIGFX::PCB_PAINTER::draw(), DRAWING_TOOL::DrawVia(), PCBEXPR_NET_VALUE::EqualTo(), PCB_EDIT_FRAME::ExchangeFootprint(), extractDiffPairCoupledItems(), ZONE_FILLER::Fill(), PCB_IO_KICAD_SEXPR::format(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), CONNECTIVITY_DATA::GetConnectedItems(), GetInteractingZones(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfoBase_Common(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), CONNECTIVITY_DATA::GetRatsnestForItems(), CONNECTIVITY_DATA::GetRatsnestForPad(), BOARD_INSPECTION_TOOL::highlightNet(), DIALOG_PAD_PROPERTIES::initValues(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectDRCError(), CONNECTIVITY_DATA::IsConnectedOnLayer(), IsIsland(), ZONE_FILLER::knockoutThermalReliefs(), CN_CONNECTIVITY_ALGO::markItemNetAsDirty(), AR_AUTOPLACER::nearestPad(), ROUTER_TOOL::NeighboringSegmentFilter(), CN_ITEM::Net(), PCBEXPR_NET_VALUE::NotEqualTo(), PCB_TRACK::cmp_tracks::operator()(), ZONE_SETTINGS::operator<<(), DIALOG_PAD_PROPERTIES::PadTypeSelected(), BRDITEMS_PLOTTER::PlotShape(), process(), BOARD_EDITOR_CONTROL::RepairBoard(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), SameNet(), PCB_SELECTION_CONDITIONS::sameNetFunc(), PCB_SELECTION_TOOL::selectNet(), PAD::Serialize(), PCB_SHAPE::Serialize(), PCB_TRACK::Serialize(), PCB_ARC::Serialize(), PCB_VIA::Serialize(), Similarity(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones(), BOARD::TracksInNet(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), NETINFO_MAPPING::Update(), PCB_CONTROL::UpdateMessagePanel(), PCB_TRACK::ViewGetLOD(), DIALOG_GLOBAL_EDIT_TEARDROPS::visitItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem(), and BOARD_EDITOR_CONTROL::ZoneMerge().
|
inherited |
Definition at line 120 of file board_connected_item.cpp.
References NETINFO_ITEM::GetNetname(), and BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by MODEL_ZONES_OVERVIEW_TABLE::ApplyFilter(), PCBEXPR_NET_VALUE::AsString(), BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), EXPORTER_STEP::buildGraphic3DShape(), EXPORTER_STEP::buildTrack3DShape(), KIGFX::PCB_PAINTER::draw(), PCB_IO_KICAD_SEXPR::format(), PAD::GetMsgPanelInfo(), GetMsgPanelInfo(), PCB_TRACK::GetMsgPanelInfoBase_Common(), BOARD_NETLIST_UPDATER::getNetname(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), ZONE_SEARCH_HANDLER::getResultCell(), BOARD_INSPECTION_TOOL::InspectClearance(), isCoupledDiffPairFunc(), CN_CLUSTER::OriginNetName(), BRDITEMS_PLOTTER::PlotPad(), BRDITEMS_PLOTTER::PlotShape(), BRDITEMS_PLOTTER::PlotZone(), PAD::Serialize(), PCB_SHAPE::Serialize(), PCB_TRACK::Serialize(), PCB_ARC::Serialize(), PCB_VIA::Serialize(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem().
|
inherited |
Definition at line 126 of file board_connected_item.cpp.
References _, BOARD_ITEM::GetBoard(), BOARD_CONNECTED_ITEM::GetNetCode(), BOARD_CONNECTED_ITEM::GetNetname(), and UnescapeString().
Referenced by PAD::GetItemDescription(), PCB_SHAPE::GetItemDescription(), PCB_TRACK::GetItemDescription(), PCB_VIA::GetItemDescription(), and GetItemDescription().
|
inline |
Access to m_Poly parameters.
Definition at line 516 of file zone.h.
References m_Poly, and SHAPE_POLY_SET::TotalVertices().
Referenced by BuildSmoothedPoly(), PCB_IO_KICAD_SEXPR::format(), operator==(), and Similarity().
|
inline |
This area is cached from the most recent call to CalculateOutlineArea().
Definition at line 244 of file zone.h.
References m_outlinearea.
Referenced by TEARDROP_MANAGER::setTeardropPriorities().
|
virtualinherited |
Return an item's "own" clearance in internal units.
aLayer | the layer in question. |
aSource | [out] optionally reports the source as a user-readable string. |
Reimplemented in PAD.
Definition at line 68 of file board_connected_item.cpp.
References CLEARANCE_CONSTRAINT, BOARD_ITEM::GetBoard(), BOARD::GetDesignSettings(), DRC_CONSTRAINT::GetName(), MINOPTMAX< T >::HasMin(), BOARD_DESIGN_SETTINGS::m_DRCEngine, MINOPTMAX< T >::Min(), and DRC_CONSTRAINT::Value().
Referenced by KIGFX::PCB_PAINTER::draw(), PCB_TRACK::GetMsgPanelInfo(), PCB_VIA::GetMsgPanelInfo(), and GetMsgPanelInfo().
|
inline |
Definition at line 267 of file zone.h.
References m_PadConnection.
Referenced by KI_TEST::CheckFpZone(), DRC_ENGINE::EvalRules(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inlineinherited |
Definition at line 215 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(), PCB_EDIT_TABLE_TOOL::copyCell(), FOOTPRINT::CoverageRatio(), BOARD_ADAPTER::createTrackWithMargin(), BOARD_ITEM::DeleteStructure(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), EDIT_TOOL::DragArcTrack(), KIGFX::PCB_PAINTER::draw(), PCB_SELECTION_TOOL::FilterCollectorForFreePads(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), PCB_SELECTION_TOOL::FilterCollectorForTableCells(), BOARD_ITEM::GetBoard(), getClosestGroup(), PCB_TABLECELL::GetColumn(), BOARD_ITEM::GetParentFootprint(), PCB_TABLECELL::GetRow(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), PAD::IsLocked(), PCB_SELECTION_TOOL::itemPassesFilter(), memberOfGroupFunc(), EDIT_TOOL::MoveExact(), PAD::operator==(), PAD::PAD(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates(), POSITION_RELATIVE_TOOL::RelativeItemSelectionMove(), PAD::Similarity(), BOARD_ITEM::SwapItemData(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), KIGFX::PCB_VIEW::Update(), PCB_TABLECELL_POINT_EDIT_BEHAVIOR::UpdateItem(), PAD_POINT_EDIT_BEHAVIOR::UpdatePoints(), and DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem().
|
inherited |
For "parent" property.
Definition at line 374 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 299 of file board_item.cpp.
References BOARD_ITEM::GetParent(), PCB_FOOTPRINT_T, PCB_GENERATOR_T, PCB_GROUP_T, PCB_TABLE_T, and EDA_ITEM::Type().
Referenced by CN_CONNECTIVITY_ALGO::Add(), PCB_IO_IPC2581::addPad(), FEATURES_MANAGER::AddPadShape(), STEP_PCB_MODEL::AddPadShape(), PCB_IO_IPC2581::addPadStack(), GRAPHICS_IMPORTER_PCBNEW::AddPolygon(), DRC_TEST_PROVIDER_SOLDER_MASK::checkItemMask(), DRC_TEST_PROVIDER_SOLDER_MASK::checkMaskAperture(), DIALOG_TRACK_VIA_PROPERTIES::confirmPadChange(), EDIT_TOOL::DeleteItems(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXTBOX_PROPERTIES::DIALOG_TEXTBOX_PROPERTIES(), doPushPadProperties(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), EDIT_TOOL::Duplicate(), PCB_IO_KICAD_SEXPR::format(), FormatProbeItem(), PCB_IO_IPC2581::generateLayerSetNet(), PAD::GetClearanceOverrides(), PCB_BASE_EDIT_FRAME::GetContextualTextVars(), PCB_TEXT::GetDrawRotation(), PAD::GetFPRelativeOrientation(), BOARD_ITEM::GetFPRelativePosition(), PAD::GetItemDescription(), PCB_FIELD::GetItemDescription(), PCB_SHAPE::GetItemDescription(), PCB_TEXT::GetItemDescription(), PCB_SHAPE::GetMenuImage(), PCB_SHAPE::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PANEL_SETUP_LAYERS::getRemovedLayersWithItems(), PCB_TEXT::GetShownText(), PCB_TEXTBOX::GetShownText(), PAD::GetSolderMaskExpansion(), PAD::GetSolderPasteMargin(), PCB_FIELDS_GRID_TABLE::GetValue(), PAD::GetZoneConnectionOverrides(), PCB_SELECTION_TOOL::grabUnconnected(), GROUP_TOOL::Group(), hash_fp_item(), PAD::ImportSettingsFrom(), DIALOG_PAD_PROPERTIES::initValues(), GENERAL_COLLECTOR::Inspect(), 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(), BOARD::Move(), ARRAY_TOOL::onDialogClosed(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_SHAPE(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TABLE(), PCB_IO_KICAD_SEXPR_PARSER::parseTextBoxContent(), PCB_IO_IPC2581::pinName(), BRDITEMS_PLOTTER::PlotPad(), BRDITEMS_PLOTTER::PlotShape(), BRDITEMS_PLOTTER::PlotTableBorders(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem(), BOARD_COMMIT::Push(), PAD_TOOL::pushPadSettings(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_GRID_HELPER::queryVisible(), PAD::Recombine(), PCB_IO_KICAD_SEXPR_PARSER::resolveGroups(), BOARD_COMMIT::Revert(), PAD::SameLogicalPadAs(), CLIPBOARD_IO::SaveSelection(), PCB_SELECTION_TOOL::Selectable(), PAD::SetFPRelativeOrientation(), BOARD_ITEM::SetFPRelativePosition(), PCB_FIELDS_GRID_TABLE::SetValue(), PAD::SharesNetTieGroup(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DIALOG_PAD_PROPERTIES::TransferDataFromWindow(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), DIALOG_PAD_PROPERTIES::transferDataToPad(), PCB_IO_EAGLE::transferPad(), PCB_POINT_EDITOR::updateItem(), PCB_FIELD::ViewGetLOD(), PCB_SHAPE::ViewGetLOD(), PCB_TEXT::ViewGetLOD(), ViewGetLOD(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), and ZONE().
|
inlineinherited |
Definition at line 90 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(), GENERATOR_TOOL::GENERATOR_TOOL(), getClosestGroup(), BOARD::GroupLegalOps(), BOARD_ITEM::IsLocked(), memberOfGroupFunc(), BOARD_EDITOR_CONTROL::modifyLockSelected(), BOARD::Move(), PCB_CONTROL::Paste(), pasteFootprintItemsToFootprintEditor(), PCB_CONTROL::placeBoardItems(), DRAWING_TOOL::PlaceTuningPattern(), PCB_CONTROL::pruneItemLayers(), BOARD_COMMIT::Push(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), BOARD::Remove(), FOOTPRINT::Remove(), GROUP_TOOL::RemoveFromGroup(), BOARD_COMMIT::Revert(), PCB_SELECTION_TOOL::Selectable(), 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().
|
overridevirtual |
Reimplemented from EDA_ITEM.
Definition at line 254 of file zone.cpp.
References GetCornerPosition().
|
inline |
Definition at line 722 of file zone.h.
References m_ruleAreaPlacementEnabled.
Referenced by PCB_IO_KICAD_SEXPR::format(), GetMsgPanelInfo(), ZONE_SETTINGS::operator<<(), operator==(), MULTICHANNEL_TOOL::repeatLayout(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 727 of file zone.h.
References m_ruleAreaPlacementSource.
Referenced by PCB_IO_KICAD_SEXPR::format(), GetMsgPanelInfo(), MULTICHANNEL_TOOL::identifyComponentsInRuleArea(), ZONE_SETTINGS::operator<<(), operator==(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 723 of file zone.h.
References m_ruleAreaPlacementSourceType.
Referenced by PCB_IO_KICAD_SEXPR::format(), MULTICHANNEL_TOOL::identifyComponentsInRuleArea(), ZONE_SETTINGS::operator<<(), operator==(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 306 of file zone.h.
References SHAPE_POLY_SET::GetGlobalIndex(), m_CornerSelection, and m_Poly.
|
inherited |
Definition at line 142 of file board_connected_item.cpp.
References emptyString, NETINFO_ITEM::GetShortNetname(), and BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by STEP_PCB_MODEL::AddPadShape(), PAD::IsFreePad(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem().
|
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 259 of file eda_item.h.
References EDA_ITEM::GetPosition().
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 86 of file board_item.cpp.
References DEFAULT_LINE_WIDTH, EDA_ITEM::GetClass(), EDA_IU_SCALE::mmToIU(), and pcbIUScale.
Referenced by CONVERT_TOOL::CreatePolys().
|
inlineinherited |
Definition at line 221 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_AllowUseTwoTracks, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inline |
Definition at line 707 of file zone.h.
References m_teardropType.
Referenced by KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 203 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_BestLengthRatio, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 209 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_BestWidthRatio, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 215 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_CurveSegCount, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 206 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_TdMaxLen, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 224 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_teardropParams, and TEARDROP_PARAMETERS::m_WidthtoSizeFilterRatio.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 212 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_TdMaxWidth, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 196 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), PCB_IO_KICAD_SEXPR::format(), DIALOG_PAD_PROPERTIES::initValues(), operator==(), DIALOG_GLOBAL_EDIT_TEARDROPS::processItem(), Similarity(), DIALOG_PAD_PROPERTIES::TransferDataFromWindow(), DIALOG_TRACK_VIA_PROPERTIES::TransferDataFromWindow(), and DIALOG_PAD_PROPERTIES::transferDataToPad().
|
inlineinherited |
Definition at line 197 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_teardropParams.
|
inlineinherited |
Definition at line 218 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_TdOnPadsInZones, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 200 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_Enabled, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 146 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 203 of file zone.h.
References m_thermalReliefGap.
Referenced by KI_TEST::CheckFpZone(), DRC_ENGINE::EvalRules(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
int ZONE::GetThermalReliefGap | ( | PAD * | aPad, |
wxString * | aSource = nullptr |
||
) | const |
Definition at line 418 of file zone.cpp.
References _, PAD::GetLocalThermalGapOverride(), and m_thermalReliefGap.
|
inline |
Definition at line 214 of file zone.h.
References m_thermalReliefSpokeWidth.
Referenced by KI_TEST::CheckFpZone(), DRC_ENGINE::EvalRules(), PCB_IO_KICAD_SEXPR::format(), ZONE_SETTINGS::operator<<(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inherited |
Return a translated description of the type for this EDA_ITEM for display in user facing messages.
Definition at line 323 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().
|
inlineinherited |
Definition at line 94 of file board_item.h.
References EDA_ITEM::GetPosition(), and VECTOR2< T >::x.
Referenced by STEP_PCB_MODEL::AddPadShape(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), 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 100 of file board_item.h.
References EDA_ITEM::GetPosition(), and VECTOR2< T >::y.
Referenced by STEP_PCB_MODEL::AddPadShape(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), FOOTPRINT_SEARCH_HANDLER::getResultCell(), ZONE_SEARCH_HANDLER::getResultCell(), TEXT_SEARCH_HANDLER::getResultCell(), BOARD_ITEM::SetX(), TRACK_VIA_DESC::TRACK_VIA_DESC(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 132 of file zone.h.
References m_zoneName.
Referenced by MODEL_ZONES_OVERVIEW_TABLE::ApplyFilter(), KI_TEST::CheckFpZone(), PCB_IO_KICAD_SEXPR::format(), ZONE_SEARCH_HANDLER::getResultCell(), MODEL_ZONES_OVERVIEW_TABLE::GetValueByRow(), MULTICHANNEL_TOOL::identifyComponentsInRuleArea(), PNS::ROUTER::isStartingPointRoutable(), Matches(), EDA_3D_CANVAS::OnMouseMove(), ZONE_SETTINGS::operator<<(), MULTICHANNEL_TOOL::RepeatLayout(), ZONE_DESC::ZONE_DESC(), and zoneNeedsUpdate().
|
inlinevirtualinherited |
Reimplemented in PAD, and PCB_VIA.
Definition at line 160 of file board_item.h.
Referenced by DRC_ENGINE::EvalRules(), BOARD_INSPECTION_TOOL::InspectClearance(), and PNS_PCBNEW_RULE_RESOLVER::IsDrilledHole().
|
inline |
Definition at line 609 of file zone.h.
References m_FilledPolysList.
Referenced by ALTIUM_PCB::ConvertArcs6ToBoardItem(), ALTIUM_PCB::ConvertTracks6ToBoardItem(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), and ALTIUM_PCB::ParseRegions6Data().
|
inlineinherited |
Definition at line 131 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by GRAPHICS_CLEANER::cleanupShapes(), PCB_BASE_EDIT_FRAME::ClearListAndDeleteItems(), SCH_EDIT_TOOL::DoDelete(), SCH_MOVE_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), PCB_TUNING_PATTERN::Flip(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), FOOTPRINT::IsConflicting(), IsConflicting(), SCH_SCREEN::MarkConnections(), PCB_TUNING_PATTERN::Mirror(), PCB_TUNING_PATTERN::Move(), SCH_MOVE_TOOL::moveItem(), SCH_MOVE_TOOL::orthoLineDrag(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), GERBVIEW_FRAME::RemapLayers(), SCH_EDIT_TOOL::Rotate(), PCB_TUNING_PATTERN::Rotate(), EE_TOOL_BASE< T >::saveCopyInUndoList(), PCB_SELECTION_TOOL::selectAllConnectedShapes(), EE_SELECTION_TOOL::selectMultiple(), SCH_COMMIT::Stage(), and PCB_TUNING_PATTERN::ViewDraw().
|
inlinevirtualinherited |
Reimplemented in PAD, and PCB_VIA.
Definition at line 155 of file board_item.h.
Referenced by DRAWING_TOOL::DrawVia(), 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().
|
inline |
Accessor to determine if any keepout parameters are set.
Definition at line 712 of file zone.h.
References m_doNotAllowCopperPour, m_doNotAllowFootprints, m_doNotAllowPads, m_doNotAllowTracks, and m_doNotAllowVias.
Referenced by PNS_PCBNEW_RULE_RESOLVER::IsKeepout(), isKeepoutZone(), PNS::ROUTER::isStartingPointRoutable(), DRC_TEST_PROVIDER_DISALLOW::Run(), and PNS_KICAD_IFACE_BASE::syncZone().
|
inlinevirtualinherited |
Check if this item has line stoke properties.
Reimplemented in PCB_SHAPE.
Definition at line 227 of file board_item.h.
Referenced by CONVERT_TOOL::CreatePolys().
void ZONE::HatchBorder | ( | ) |
Compute the hatch lines depending on the hatch parameters and stores it in the zone's attribute m_borderHatchLines.
Definition at line 954 of file zone.cpp.
References SEG::A, std::abs(), SEG::B, SHAPE_POLY_SET::CVertex(), GetFirstLayer(), SHAPE_POLY_SET::IsEmpty(), IsTeardropArea(), SHAPE_POLY_SET::IterateSegmentsWithHoles(), SHAPE_POLY_SET::IterateWithHoles(), KiROUND(), m_borderHatchLines, m_borderHatchPitch, m_borderStyle, m_Poly, sortEndsByDescendingX(), UnHatchBorder(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by PCB_POINT_EDITOR::addCorner(), MULTICHANNEL_TOOL::copyRuleAreaContents(), CONVERT_TOOL::CreatePolys(), EDIT_TOOL::DeleteItems(), Mirror(), Move(), MoveEdge(), Rotate(), SetBorderDisplayStyle(), and ZONE_POINT_EDIT_BEHAVIOR::UpdateItem().
bool ZONE::HigherPriority | ( | const ZONE * | aOther | ) | const |
Definition at line 207 of file zone.cpp.
References m_priority, m_teardropType, and EDA_ITEM::m_Uuid.
Referenced by ZONE_FILLER::Fill().
|
overridevirtual |
Test if aRect intersects this item.
aRect | A reference to a BOX2I object containing the rectangle to test. |
aContained | Set to true to test for containment instead of an intersection. |
aAccuracy | Increase aRect by this amount. |
Reimplemented from EDA_ITEM.
Definition at line 487 of file zone.cpp.
References BOX2< Vec >::Contains(), SHAPE_POLY_SET::CVertex(), GetBoundingBox(), BOX2< Vec >::Inflate(), BOX2< Vec >::Intersects(), m_Poly, BOX2< Vec >::Normalize(), and SHAPE_POLY_SET::TotalVertices().
|
overridevirtual |
Test if a point is near an outline edge or a corner of this zone.
aPosition | the VECTOR2I to test |
Reimplemented from EDA_ITEM.
Definition at line 463 of file zone.cpp.
References HitTestForCorner(), HitTestForEdge(), EDA_IU_SCALE::mmToIU(), and pcbIUScale.
bool ZONE::HitTestCutout | ( | const VECTOR2I & | aRefPos, |
int * | aOutlineIdx = nullptr , |
||
int * | aHoleIdx = nullptr |
||
) | const |
Test if the given point is contained within a cutout of the zone.
aRefPos | is the point to test |
aOutlineIdx | is the index of the outline containing the cutout |
aHoleIdx | is the index of the hole |
Definition at line 548 of file zone.cpp.
References SHAPE_POLY_SET::Hole(), SHAPE_POLY_SET::HoleCount(), m_Poly, SHAPE_POLY_SET::OutlineCount(), and SHAPE_LINE_CHAIN_BASE::PointInside().
Referenced by EDIT_TOOL::DeleteItems().
bool ZONE::HitTestFilledArea | ( | PCB_LAYER_ID | aLayer, |
const VECTOR2I & | aRefPos, | ||
int | aAccuracy = 0 |
||
) | const |
Test if the given VECTOR2I is within the bounds of a filled area of this zone.
aLayer | is the layer to test on |
aRefPos | A VECTOR2I to test |
aAccuracy | Expand the distance by which the areas are expanded for the hittest |
Definition at line 534 of file zone.cpp.
References SHAPE_POLY_SET::Contains(), GetIsRuleArea(), m_FilledPolysList, and m_Poly.
Referenced by CN_ANCHOR::ConnectedItemsCount(), GENERAL_COLLECTOR::Inspect(), and CN_ANCHOR::IsDangling().
bool ZONE::HitTestForCorner | ( | const VECTOR2I & | refPos, |
int | aAccuracy, | ||
SHAPE_POLY_SET::VERTEX_INDEX * | aCornerHit = nullptr |
||
) | const |
Test if the given VECTOR2I is near a corner.
refPos | is the VECTOR2I to test. |
aAccuracy | increase the item bounding box by this amount. |
aCornerHit | [out, optional] is the index of the closest vertex found when return value is true |
Definition at line 473 of file zone.cpp.
References SHAPE_POLY_SET::CollideVertex(), and m_Poly.
Referenced by HitTest(), GENERAL_COLLECTOR::Inspect(), and PCB_SELECTION_TOOL::Main().
bool ZONE::HitTestForEdge | ( | const VECTOR2I & | refPos, |
int | aAccuracy, | ||
SHAPE_POLY_SET::VERTEX_INDEX * | aCornerHit = nullptr |
||
) | const |
Test if the given VECTOR2I is near a segment defined by 2 corners.
refPos | is the VECTOR2I to test. |
aAccuracy | increase the item bounding box by this amount. |
aCornerHit | [out, optional] is the index of the closest vertex found when return value is true. |
Definition at line 480 of file zone.cpp.
References SHAPE_POLY_SET::CollideEdge(), and m_Poly.
Referenced by PCB_SELECTION_TOOL::GuessSelectionCandidates(), HitTest(), PCB_SELECTION_TOOL::hitTestDistance(), GENERAL_COLLECTOR::Inspect(), and PCB_SELECTION_TOOL::Main().
void ZONE::InitDataFromSrcInCopyCtor | ( | const ZONE & | aZone | ) |
Copy aZone data to me.
Definition at line 119 of file zone.cpp.
References GetLayerSet(), GetLocalFlags(), m_area, m_borderHatchLines, m_borderHatchPitch, m_borderStyle, m_cornerRadius, m_CornerSelection, m_cornerSmoothingType, m_doNotAllowCopperPour, m_doNotAllowFootprints, m_doNotAllowPads, m_doNotAllowTracks, m_doNotAllowVias, m_filledPolysHash, m_FilledPolysList, m_fillMode, m_fillVersion, EDA_ITEM::m_flags, EDA_ITEM::m_forceVisible, m_hatchBorderAlgorithm, m_hatchGap, m_hatchHoleMinArea, m_hatchOrientation, m_hatchSmoothingLevel, m_hatchSmoothingValue, m_hatchThickness, m_insulatedIslands, m_isFilled, m_islandRemovalMode, m_isRuleArea, m_minIslandArea, m_needRefill, BOARD_CONNECTED_ITEM::m_netinfo, m_outlinearea, m_PadConnection, m_Poly, m_priority, m_ruleAreaPlacementEnabled, m_ruleAreaPlacementSource, m_ruleAreaPlacementSourceType, m_teardropType, m_thermalReliefGap, m_thermalReliefSpokeWidth, m_ZoneClearance, m_ZoneMinThickness, m_zoneName, LSET::RunOnLayers(), SetLayerSet(), and SetLocalFlags().
Referenced by operator=(), and ZONE().
|
inlineinherited |
Definition at line 100 of file view_item.h.
Referenced by KIGFX::PCB_VIEW::Add(), PCB_BASE_EDIT_FRAME::ClearListAndDeleteItems(), CONVERT_TOOL::CreatePolys(), EDIT_TOOL::doMoveSelection(), KIGFX::PCB_PAINTER::Draw(), PCB_SELECTION_TOOL::highlightInternal(), PCB_TEST_SELECTION_TOOL::highlightInternal(), GENERAL_COLLECTOR::Inspect(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectConstraints(), BOARD_COMMIT::MakeImage(), BOARD::Move(), DRAWING_TOOL::PlaceImportedGraphics(), EDIT_TOOL::Properties(), BOARD_COMMIT::Push(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), KIGFX::PCB_VIEW::Remove(), EDIT_TOOL::removeNonRootItems(), BOARD_COMMIT::Revert(), PCB_EDIT_FRAME::SetActiveLayer(), PCB_BASE_FRAME::SetPlotSettings(), PCB_EDIT_FRAME::ShowBoardSetupDialog(), EDIT_TOOL::Swap(), PCB_SELECTION_TOOL::unhighlightInternal(), PCB_TEST_SELECTION_TOOL::unhighlightInternal(), KIGFX::PCB_VIEW::Update(), EDIT_TOOL::updateModificationPoint(), and DIALOG_POSITION_RELATIVE::UpdatePickedItem().
|
inlineinherited |
Definition at line 112 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::m_flags.
Referenced by KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::GERBVIEW_PAINTER::draw(), SCH_FIND_REPLACE_TOOL::FindNext(), SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), KIGFX::DS_RENDER_SETTINGS::GetColor(), KIGFX::SCH_PAINTER::getLineWidth(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
bool ZONE::IsConflicting | ( | ) | const |
For rule areas which exclude footprints (and therefore participate in courtyard conflicts during move).
Definition at line 248 of file zone.cpp.
References COURTYARD_CONFLICT, and EDA_ITEM::HasFlag().
Referenced by ViewGetLayers().
|
inlineoverridevirtual |
Not all ZONEs are really BOARD_CONNECTED_ITEMs....
Reimplemented from BOARD_CONNECTED_ITEM.
Definition at line 90 of file zone.h.
References GetIsRuleArea().
|
inlineinherited |
Definition at line 111 of file eda_item.h.
References ENTERED, and EDA_ITEM::m_flags.
Referenced by KIGFX::PCB_PAINTER::draw().
|
inline |
Definition at line 261 of file zone.h.
References m_isFilled.
Referenced by KI_TEST::CheckFpZone(), collidesWithArea(), PCB_IO_KICAD_SEXPR::format(), CONNECTIVITY_DATA::IsConnectedOnLayer(), and DRC_TEST_PROVIDER_DISALLOW::Run().
|
inlineinherited |
Definition at line 195 of file eda_item.h.
References EDA_ITEM::m_forceVisible.
Referenced by KIGFX::SCH_PAINTER::draw(), SCH_FIELD::Plot(), and SCH_FIELD::Print().
bool ZONE::IsIsland | ( | PCB_LAYER_ID | aLayer, |
int | aPolyIdx | ||
) | const |
Check if a given filled polygon is an insulated island.
aLayer | is the layer to test |
aPolyIdx | is an index into m_FilledPolysList[aLayer] |
Definition at line 1132 of file zone.cpp.
References BOARD_CONNECTED_ITEM::GetNetCode(), and m_insulatedIslands.
Referenced by PCB_IO_KICAD_SEXPR::format().
|
inlinevirtualinherited |
Definition at line 324 of file board_item.h.
References BOARD_ITEM::m_isKnockout.
Referenced by BOARD_ADAPTER::addText(), KIGFX::PCB_PAINTER::draw(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_IPC2581::generateLayerSetNet(), PCB_TEXT::GetBoundingBox(), PCB_TEXT::GetEffectiveShape(), PCB_FIELDS_GRID_TABLE::GetValueAsBool(), FEATURES_MANAGER::InitFeatureList(), PCB_TEXT_DESC::PCB_TEXT_DESC(), BRDITEMS_PLOTTER::PlotBoardGraphicItem(), BRDITEMS_PLOTTER::PlotFootprintGraphicItems(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), PCB_TEXT::Serialize(), PCB_TEXT::TextHitTest(), and PCB_TEXT::TransformTextToPolySet().
|
virtualinherited |
Reimplemented in FOOTPRINT, and PAD.
Definition at line 75 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD::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_IO_KICAD_SEXPR::format(), GENERATOR_TOOL::GENERATOR_TOOL(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), PCB_GROUP::GetMsgPanelInfo(), PCB_SHAPE::GetMsgPanelInfo(), PCB_TABLECELL::GetMsgPanelInfo(), PCB_TEXT::GetMsgPanelInfo(), PCB_TEXTBOX::GetMsgPanelInfo(), 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(), PCB_POINT_EDITOR::OnSelectionChange(), ZONE_SETTINGS::operator<<(), LINE_FILLET_ROUTINE::ProcessLinePair(), LINE_CHAMFER_ROUTINE::ProcessLinePair(), DOGBONE_CORNER_ROUTINE::ProcessLinePair(), processTextItem(), PCB_SELECTION_TOOL::RequestSelection(), PCB_SHAPE::Serialize(), PCB_TEXT::Serialize(), PCB_TRACK::Serialize(), PCB_ARC::Serialize(), PCB_VIA::Serialize(), 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 106 of file eda_item.h.
References IS_CHANGED, and EDA_ITEM::m_flags.
Referenced by PCB_EDIT_FRAME::OpenProjectFiles().
|
inlineinherited |
Definition at line 108 of file eda_item.h.
References IS_MOVING, and EDA_ITEM::m_flags.
Referenced by SCH_EDIT_TOOL::AutoplaceFields(), SCH_PIN::CalcEdit(), EDIT_TOOL::doMoveSelection(), KIGFX::SCH_PAINTER::draw(), EDIT_TOOL::Flip(), SCH_EDIT_TOOL::JustifyText(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), PCB_BASE_FRAME::PlaceFootprint(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDITOR_EDIT_TOOL::Rotate(), SCH_EDIT_TOOL::Swap(), and SYMBOL_EDITOR_EDIT_TOOL::Swap().
|
inlineinherited |
Definition at line 107 of file eda_item.h.
References IS_NEW, and EDA_ITEM::m_flags.
Referenced by SCH_EDIT_TOOL::ChangeBodyStyle(), SCH_EDIT_TOOL::ChangeTextType(), 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(), EDIT_TOOL::Flip(), 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(), and PCB_TUNING_PATTERN::ViewDraw().
|
overridevirtual |
Reimplemented from BOARD_ITEM.
Definition at line 292 of file zone.cpp.
References LSET::AllCuMask(), and m_layerSet.
Referenced by BOOST_AUTO_TEST_CASE(), ZONE_FILLER::fillSingleZone(), PCB_IO_KICAD_SEXPR::format(), GetFriendlyName(), GetMsgPanelInfo(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), EDA_3D_CANVAS::OnMouseMove(), BRDITEMS_PLOTTER::PlotZone(), DRC_TEST_PROVIDER_DISALLOW::Run(), and BOARD_EDITOR_CONTROL::ZoneDuplicate().
|
overridevirtual |
Test to see if this object is on the given layer.
Virtual so objects like PAD, which reside on multiple layers can do their own form of testing.
aLayer | The layer to test for. |
Reimplemented from BOARD_ITEM.
Definition at line 375 of file zone.cpp.
References m_layerSet.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), KIGFX::PCB_PAINTER::draw(), DRAWING_TOOL::DrawZone(), BOARD_INSPECTION_TOOL::InspectClearance(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().
|
inlinevirtualinherited |
Override this method in any derived object that supports test find and replace.
Reimplemented in SCH_FIELD, SCH_LABEL, SCH_SHEET, SCH_SHEET_PIN, SCH_SYMBOL, SCH_TEXT, and SCH_TEXTBOX.
Definition at line 415 of file eda_item.h.
Referenced by EDA_ITEM::Matches().
|
inlineinherited |
Definition at line 114 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 99 of file view_item.h.
|
inlineinherited |
Definition at line 110 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(), DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), EDIT_TOOL::doMoveSelection(), KIGFX::PCB_PAINTER::draw(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), KIGFX::SCH_PAINTER::drawItemBoundingBox(), DS_PROXY_UNDO_ITEM::DS_PROXY_UNDO_ITEM(), SCH_EDIT_FRAME::FlipBodyStyle(), RENDER_3D_OPENGL::get3dModelsFromFootprint(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), KIGFX::GERBVIEW_RENDER_SETTINGS::GetColor(), KIGFX::DS_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_COMMIT::Revert(), SCH_EDIT_TOOL::Rotate(), EE_TOOL_BASE< T >::saveCopyInUndoList(), CLIPBOARD_IO::SaveSelection(), SCH_IO_KICAD_SEXPR::saveTable(), GERBVIEW_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::select(), PCB_TEST_SELECTION_TOOL::select(), EE_SELECTION_TOOL::SelectColumns(), PCB_SELECTION_TOOL::SelectColumns(), EE_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), GERBVIEW_SELECTION_TOOL::selectPoint(), EE_SELECTION_TOOL::SelectRows(), PCB_SELECTION_TOOL::SelectRows(), SCH_COMMIT::Stage(), DIALOG_TABLE_PROPERTIES::TransferDataToWindow(), GERBVIEW_SELECTION_TOOL::unselect(), SCH_FIND_REPLACE_TOOL::UpdateFind(), SCH_SYMBOL::UpdatePins(), 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 168 of file eda_item.h.
References IS_SHOWN_AS_BITMAP, and EDA_ITEM::m_flags.
|
inherited |
Definition at line 149 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD_ITEM::GetLayerSet(), LT_BACK, LT_FRONT, BOARD_ITEM::m_layer, and LSET::SideSpecificMask().
Referenced by KIGFX::PCB_PAINTER::draw(), PCB_TEXT::Flip(), PCB_TEXTBOX::Flip(), and PCB_DIMENSION_BASE::Mirror().
|
inline |
Definition at line 696 of file zone.h.
References m_teardropType.
Referenced by ZONE_FILLER::buildCopperItemClearances(), CN_ZONE_LAYER::BuildRTree(), BuildSmoothedPoly(), CN_ZONE_LAYER::Collide(), CN_ZONE_LAYER::ContainsPoint(), PCB_IO_KICAD_SEXPR::format(), GetFriendlyName(), HatchBorder(), ZONE_FILLER::knockoutThermalReliefs(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::Run(), and PCB_SELECTION_TOOL::Selectable().
|
inlinevirtualinherited |
Checks if the given object is tented (its copper shape is covered by solder mask) on a given side of the board.
aLayer | is the layer to check tenting mode for: F_Cu and F_Mask are treated identically as are B_Cu and B_Mask |
Reimplemented in PCB_VIA.
Definition at line 172 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 176 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_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), SCH_FIELD::GetCanonicalName(), SCH_FIELD::GetName(), SCH_FIELD::GetShownText(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), 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().
|
inline |
Return an iterator to visit all points of the zone's main outline without holes.
Definition at line 526 of file zone.h.
References SHAPE_POLY_SET::Iterate(), and m_Poly.
|
inlinestaticinherited |
This changes first parameter to avoid the DList and use the main queue instead.
Definition at line 296 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 316 of file eda_item.h.
References EDA_ITEM::Visit().
|
inline |
Return an iterator to visit all points of the zone's main outline with holes.
Definition at line 536 of file zone.h.
References SHAPE_POLY_SET::IterateWithHoles(), and m_Poly.
Referenced by DSN::SPECCTRA_DB::makeIMAGE().
|
protectedvirtualinherited |
Return a string (to be shown to the user) describing a layer mask.
Reimplemented in PCB_VIA.
Definition at line 166 of file board_item.cpp.
References _, LSET::AllCuMask(), LSET::AllTechMask(), BOARD_ITEM::GetBoard(), BOARD::GetCopperLayerCount(), BOARD::GetEnabledLayers(), BOARD::GetLayerName(), BOARD_ITEM::GetLayerSet(), PCB_LAYER_ID_COUNT, and PCBNEW_LAYER_ID_START.
Referenced by PAD::GetItemDescription(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), PAD::GetMsgPanelInfo(), and PCB_TRACK::GetMsgPanelInfo().
|
inlineoverridevirtual |
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 from EDA_ITEM.
Definition at line 135 of file zone.h.
References GetZoneName(), and EDA_ITEM::Matches().
Referenced by DIALOG_FIND::search(), and ZONE_SEARCH_HANDLER::Search().
|
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 126 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 |
Mirror the outlines relative to a given horizontal axis the layer is not changed.
aMirrorRef | is axis position |
aFlipDirection | is the direction of the flip. |
Reimplemented from BOARD_ITEM.
Definition at line 788 of file zone.cpp.
References HatchBorder(), m_FilledPolysList, m_Poly, and SHAPE_POLY_SET::Mirror().
Referenced by Flip().
|
overridevirtual |
Move the outlines.
offset | is moving vector |
Reimplemented from BOARD_ITEM.
Definition at line 701 of file zone.cpp.
References BOARD_ITEM::GetBoard(), HatchBorder(), m_FilledPolysList, m_Poly, BOARD::m_ZoneBBoxCache, and SHAPE_POLY_SET::Move().
void ZONE::MoveEdge | ( | const VECTOR2I & | offset, |
int | aEdge | ||
) |
Move the outline Edge.
offset | is moving vector |
aEdge | is start point of the outline edge |
Definition at line 741 of file zone.cpp.
References SHAPE_POLY_SET::CVertex(), SHAPE_POLY_SET::GetNeighbourIndexes(), HatchBorder(), m_Poly, SetNeedRefill(), and SHAPE_POLY_SET::SetVertex().
|
inline |
Definition at line 264 of file zone.h.
References m_needRefill.
|
inline |
Create a new hole on the zone; i.e., a new contour on the zone's outline.
Definition at line 590 of file zone.h.
References m_Poly, and SHAPE_POLY_SET::NewHole().
Referenced by PCB_IO_EAGLE::loadPlain(), and PCB_IO_EAGLE::packageCircle().
|
inlinevirtualinherited |
Perform any normalization required after a user rotate and/or flip.
Reimplemented in PCB_SHAPE, and PCB_TABLE.
Definition at line 373 of file board_item.h.
Referenced by EDIT_TOOL::Flip(), BOARD_ITEM::NormalizeForCompare(), and EDIT_TOOL::Rotate().
|
inlinevirtualinherited |
Perform any normalization required to compare 2 graphics, especially if the can be rotated and/or flipped.
Similar to Normalize(), but more changes can be made
Reimplemented in PCB_SHAPE.
Definition at line 380 of file board_item.h.
References BOARD_ITEM::Normalize().
|
inherited |
Test if another item is less than this object.
aItem | - Item to compare against. |
Definition at line 252 of file eda_item.cpp.
References EDA_ITEM::GetClass().
Definition at line 99 of file zone.cpp.
References InitDataFromSrcInCopyCtor(), and EDA_ITEM::operator=().
|
overridevirtual |
bool ZONE::operator== | ( | const ZONE & | aOther | ) | const |
Definition at line 1452 of file zone.cpp.
References GetAssignedPriority(), GetCornerPosition(), GetCornerRadius(), GetCornerSmoothingType(), GetDoNotAllowCopperPour(), GetDoNotAllowFootprints(), GetDoNotAllowPads(), GetDoNotAllowTracks(), GetDoNotAllowVias(), GetIsRuleArea(), GetMinThickness(), GetNumCorners(), GetRuleAreaPlacementEnabled(), GetRuleAreaPlacementSource(), GetRuleAreaPlacementSourceType(), BOARD_CONNECTED_ITEM::GetTeardropParams(), and EDA_ITEM::Type().
|
inline |
Definition at line 337 of file zone.h.
References m_Poly.
Referenced by PCB_POINT_EDITOR::addCorner(), ZONE_FILLER::addHatchFillTypeOnZone(), BOARD::BOARD(), BuildSmoothedPoly(), CADSTAR_PCB_ARCHIVE_LOADER::calculateZonePriorities(), PCB_POINT_EDITOR::chamferCorner(), KI_TEST::CheckFpZone(), collidesWithArea(), MULTICHANNEL_TOOL::copyRuleAreaContents(), CONVERT_TOOL::CreatePolys(), TEARDROP_MANAGER::createTeardrop(), KIGFX::PCB_PAINTER::draw(), DRAWING_TOOL::DrawVia(), ZONE_FILLER::Fill(), PCB_BASE_FRAME::FocusOnItems(), PCB_IO_KICAD_SEXPR::format(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CONVERT_TOOL::makePolysFromClosedGraphics(), FOOTPRINT::cmp_zones::operator()(), PCB_IO_EAGLE::packagePolygon(), ZONE_CREATE_HELPER::performZoneCutout(), PCB_POINT_EDITOR::removeCorner(), DRC_TEST_PROVIDER_DISALLOW::Run(), PNS_KICAD_IFACE_BASE::syncZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), BOARD::TestZoneIntersection(), and zoneNeedsUpdate().
|
inline |
|
inline |
Definition at line 551 of file zone.h.
References m_Poly, and SHAPE_POLY_SET::RemoveAllContours().
Referenced by MULTICHANNEL_TOOL::copyRuleAreaContents().
void ZONE::RemoveCutout | ( | int | aOutlineIdx, |
int | aHoleIdx | ||
) |
Remove a cutout from the zone.
aOutlineIdx | is the zone outline the hole belongs to |
aHoleIdx | is the hole in the outline to remove |
Definition at line 799 of file zone.cpp.
References SHAPE_POLY_SET::BooleanAdd(), SHAPE_POLY_SET::Hole(), SHAPE_POLY_SET::HoleCount(), m_Poly, SHAPE_POLY_SET::OutlineCount(), SHAPE_POLY_SET::PM_FAST, and SetNeedRefill().
Referenced by EDIT_TOOL::DeleteItems().
|
inlinevirtualinherited |
Reimplemented in SCH_ITEM.
Definition at line 158 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 SCH_LABEL_BASE, SCH_PIN, SCH_TEXT, SCH_TEXTBOX, SCH_FIELD, and SCH_SHEET_PIN.
Definition at line 404 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 189 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().
Rotate the outlines.
aCentre | is rot centre |
Reimplemented from BOARD_ITEM.
Definition at line 756 of file zone.cpp.
References HatchBorder(), m_FilledPolysList, m_Poly, and SHAPE_POLY_SET::Rotate().
Referenced by PCB_IO_EAGLE::loadPlain(), DSN::SPECCTRA_DB::makeIMAGE(), and PCB_IO_EAGLE::packageRectangle().
|
inlinevirtualinherited |
Invoke a function on all children.
Reimplemented in FOOTPRINT, PCB_GROUP, and PCB_TABLE.
Definition at line 206 of file board_item.h.
Referenced by BOARD_COMMIT::dirtyIntersectingZones(), PCB_IO_KICAD_SEXPR_PARSER::resolveGroups(), KIGFX::PCB_VIEW::Update(), and PCB_SELECTION::updateDrawList().
|
inlinevirtualinherited |
Invoke a function on all descendants.
Reimplemented in FOOTPRINT, and PCB_GROUP.
Definition at line 212 of file board_item.h.
Referenced by BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), EDIT_TOOL::DeleteItems(), EDIT_TOOL::Duplicate(), PCB_BASE_FRAME::FocusOnItems(), PCB_SELECTION_TOOL::highlightInternal(), PCB_TEST_SELECTION_TOOL::highlightInternal(), ARRAY_TOOL::onDialogClosed(), BOARD_COMMIT::Push(), PCB_GRID_HELPER::queryVisible(), PCB_SELECTION_TOOL::RequestSelection(), PCB_SELECTION_TOOL::unhighlightInternal(), and PCB_TEST_SELECTION_TOOL::unhighlightInternal().
bool ZONE::SameNet | ( | const ZONE * | aOther | ) | const |
Definition at line 224 of file zone.cpp.
References BOARD_CONNECTED_ITEM::GetNetCode().
|
inlinevirtualinherited |
Serializes this object to the given Any message.
The Any message's concrete type will be specific to the object in question.
aContainer | will be filled with a message describing this object |
Reimplemented in SCH_LABEL, SCH_DIRECTIVE_LABEL, SCH_GLOBALLABEL, SCH_HIERLABEL, SCH_LINE, BOARD_STACKUP, FOOTPRINT, PAD, PADSTACK, PCB_FIELD, PCB_SHAPE, PCB_TEXT, PCB_TRACK, PCB_ARC, and PCB_VIA.
Definition at line 43 of file serializable.h.
Referenced by API_HANDLER_SCH::handleCreateUpdateItemsInternal(), and API_HANDLER_PCB::handleCreateUpdateItemsInternal().
|
inlineinherited |
Definition at line 76 of file inspectable.h.
References PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_MANAGER::PropertyChanged(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 59 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_MANAGER::PropertyChanged(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 42 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_MANAGER::PropertyChanged(), PROPERTY_BASE::setter(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
Referenced by SCH_PROPERTIES_PANEL::valueChanged(), and PCB_PROPERTIES_PANEL::valueChanged().
|
inline |
aPriority | is the priority level. |
Definition at line 115 of file zone.h.
References m_priority.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), FABMASTER::loadZone(), and ZONE_DESC::ZONE_DESC().
void ZONE::SetBorderDisplayStyle | ( | ZONE_BORDER_DISPLAY_STYLE | aBorderHatchStyle, |
int | aBorderHatchPitch, | ||
bool | aRebuilBorderdHatch | ||
) |
Set all hatch parameters for the zone.
aBorderHatchStyle | is the style of the hatch, specified as one of HATCH_STYLE possible values. |
aBorderHatchPitch | is the hatch pitch in iu. |
aRebuildBorderHatch | is a flag to indicate whether to re-hatch after having set the previous parameters. |
Definition at line 919 of file zone.cpp.
References HatchBorder(), m_borderStyle, EDA_IU_SCALE::mmToIU(), pcbIUScale, SetBorderHatchPitch(), ZONE_BORDER_HATCH_MAXDIST_MM, and ZONE_BORDER_HATCH_MINDIST_MM.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), TEARDROP_MANAGER::createTeardrop(), ZONE_SETTINGS::ExportSetting(), PCB_IO_EAGLE::loadPlain(), PCB_IO_EAGLE::packageCircle(), PCB_IO_EAGLE::packagePolygon(), and PCB_IO_EAGLE::packageRectangle().
void ZONE::SetBorderHatchPitch | ( | int | aPitch | ) |
Set the hatch pitch parameter for the zone.
aPitch | is the hatch pitch in iu. |
Definition at line 934 of file zone.cpp.
References m_borderHatchPitch.
Referenced by SetBorderDisplayStyle().
|
inlineinherited |
Definition at line 120 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::SetFlags().
Referenced by KIGFX::SCH_PAINTER::draw(), SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), PCB_BASE_FRAME::FocusOnItems(), PL_SELECTION_TOOL::highlight(), EE_SELECTION_TOOL::highlight(), PCB_SELECTION_TOOL::highlightInternal(), PCB_TEST_SELECTION_TOOL::highlightInternal(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
|
inline |
Definition at line 567 of file zone.h.
References SHAPE_POLY_SET::CVertex(), SHAPE_POLY_SET::GetRelativeIndices(), m_Poly, SetNeedRefill(), SHAPE_POLY_SET::SetVertex(), VECTOR2< T >::x, and VECTOR2< T >::y.
void ZONE::SetCornerRadius | ( | unsigned int | aRadius | ) |
Definition at line 433 of file zone.cpp.
References m_cornerRadius, and SetNeedRefill().
Referenced by ZONE_SETTINGS::ExportSetting().
|
inline |
Definition at line 661 of file zone.h.
References m_cornerSmoothingType.
Referenced by ZONE_SETTINGS::ExportSetting().
|
inline |
Definition at line 744 of file zone.h.
References m_doNotAllowCopperPour.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), ALTIUM_PCB::HelperSetZoneKeepoutRestrictions(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), FABMASTER::loadZone(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 748 of file zone.h.
References m_doNotAllowFootprints.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), ALTIUM_PCB::HelperSetZoneKeepoutRestrictions(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), FABMASTER::loadZone(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 747 of file zone.h.
References m_doNotAllowPads.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), ALTIUM_PCB::HelperSetZoneKeepoutRestrictions(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), FABMASTER::loadZone(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 746 of file zone.h.
References m_doNotAllowTracks.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), ALTIUM_PCB::HelperSetZoneKeepoutRestrictions(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), FABMASTER::loadZone(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 745 of file zone.h.
References m_doNotAllowVias.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), ALTIUM_PCB::HelperSetZoneKeepoutRestrictions(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), FABMASTER::loadZone(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), and ZONE_DESC::ZONE_DESC().
|
inline |
Set the list of filled polygons.
Definition at line 638 of file zone.h.
References m_FilledPolysList.
Referenced by TEARDROP_MANAGER::createTeardrop(), ZONE_FILLER::Fill(), Flip(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), and ALTIUM_PCB::ParseRegions6Data().
|
inline |
Definition at line 259 of file zone.h.
References m_fillFlags, and BASE_SET::set().
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::buildRTrees(), and ZONE_FILLER::Fill().
|
inline |
Definition at line 192 of file zone.h.
References m_fillMode.
Referenced by ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::getZoneFromCadstarShape(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 127 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by SCH_IO_EAGLE::addBusEntries(), PCB_BASE_FRAME::AddFootprintToBoard(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), SCH_IO_ALTIUM::AddTextBox(), SCH_MOVE_TOOL::AlignToGrid(), PCB_CONTROL::AppendBoard(), SCH_EDIT_FRAME::BreakSegment(), SCH_EDIT_TOOL::BreakWire(), FOOTPRINT::BuildCourtyardCaches(), SCH_EDIT_TOOL::ChangeTextType(), GRAPHICS_CLEANER::cleanupShapes(), ConnectBoardShapes(), PCB_TUNING_PATTERN::CreateNew(), SCH_DRAWING_TOOLS::createNewText(), SCH_EDIT_FRAME::DeleteJunction(), doConvertOutlineToPolygon(), 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(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawTable(), PCB_TUNING_PATTERN::EditStart(), PCB_SELECTION_TOOL::EnterGroup(), PAD_TOOL::explodePad(), SCH_IO_KICAD_SEXPR::Format(), SCH_MOVE_TOOL::getConnectedDragItems(), SYMBOL_EDIT_FRAME::GetSymbolFromRedoList(), SYMBOL_EDIT_FRAME::GetSymbolFromUndoList(), EE_SELECTION_TOOL::GuessSelectionCandidates(), EE_COLLECTOR::Inspect(), EE_SELECTION_TOOL::Main(), BOARD_COMMIT::MakeImage(), 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_IO_ALTIUM::ParseBezier(), SCH_IO_ALTIUM::ParseBus(), SCH_IO_ALTIUM::ParseBusEntry(), SCH_IO_ALTIUM::ParseHarnessPort(), SCH_IO_ALTIUM::ParseJunction(), SCH_IO_ALTIUM::ParseLabel(), SCH_IO_ALTIUM::ParseLine(), SCH_IO_ALTIUM::ParseNetLabel(), SCH_IO_ALTIUM::ParseNoERC(), SCH_IO_ALTIUM::ParsePieChart(), SCH_IO_ALTIUM::ParsePolygon(), SCH_IO_ALTIUM::ParsePolyline(), SCH_IO_ALTIUM::ParsePort(), SCH_IO_ALTIUM::ParseRectangle(), SCH_IO_ALTIUM::ParseRoundRectangle(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_IO_ALTIUM::ParseSheetSymbol(), SCH_IO_ALTIUM::ParseSignalHarness(), SCH_IO_ALTIUM::ParseWire(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PL_DRAWING_TOOLS::PlaceItem(), SCH_SYMBOL::Plot(), BACK_ANNOTATE::processNetNameChange(), BOARD_COMMIT::Push(), SYMBOL_EDIT_FRAME::PushSymbolToUndoList(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PCB_SELECTION_TOOL::RebuildSelection(), GERBVIEW_FRAME::RemapLayers(), BOARD::Remove(), FOOTPRINT::Remove(), PCB_TUNING_PATTERN::Remove(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_EDIT_TOOL::Rotate(), SCH_EDIT_FRAME::SaveCopyInUndoList(), CLIPBOARD_IO::SaveSelection(), SCH_IO_KICAD_SEXPR::saveTable(), 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::updateSizesAfterRouterEvent().
|
inlineinherited |
Definition at line 156 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 194 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 342 of file board_item.cpp.
References BOARD_ITEM::GetParentFootprint(), RotatePoint(), and EDA_ITEM::SetPosition().
Referenced by PCAD2KICAD::PCAD_FOOTPRINT::AddToBoard(), PCB_IO_KICAD_LEGACY::loadMODULE_TEXT(), DIALOG_FOOTPRINT_PROPERTIES::OnAddField(), processTextItem(), and PCB_FIELDS_GRID_TABLE::SetValue().
|
inline |
Definition at line 304 of file zone.h.
References m_hatchBorderAlgorithm.
Referenced by ZONE_SETTINGS::ExportSetting().
|
inline |
Definition at line 289 of file zone.h.
References m_hatchGap.
Referenced by ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 301 of file zone.h.
References m_hatchHoleMinArea.
Referenced by ZONE_SETTINGS::ExportSetting(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 292 of file zone.h.
References m_hatchOrientation.
Referenced by ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 295 of file zone.h.
References m_hatchSmoothingLevel.
Referenced by ZONE_SETTINGS::ExportSetting(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 298 of file zone.h.
References m_hatchSmoothingValue.
Referenced by ZONE_SETTINGS::ExportSetting(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 607 of file zone.h.
References m_borderStyle.
Referenced by BOARD::AddArea(), BOARD::BOARD(), CADSTAR_PCB_ARCHIVE_LOADER::getZoneFromCadstarShape(), and CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers().
|
inline |
Definition at line 286 of file zone.h.
References m_hatchThickness.
Referenced by ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 262 of file zone.h.
References m_isFilled.
Referenced by DRC_TEST_PROVIDER_SOLDER_MASK::buildRTrees(), ALTIUM_PCB::ConvertArcs6ToBoardItem(), ALTIUM_PCB::ConvertTracks6ToBoardItem(), TEARDROP_MANAGER::createTeardrop(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), and ALTIUM_PCB::ParseRegions6Data().
|
inline |
Definition at line 652 of file zone.h.
References m_insulatedIslands.
|
inlinevirtualinherited |
Definition at line 325 of file board_item.h.
References BOARD_ITEM::m_isKnockout.
Referenced by ZONE_FILLER::addKnockout(), ALTIUM_PCB::ConvertTexts6ToBoardItemOnLayer(), ALTIUM_PCB::ConvertTexts6ToFootprintItemOnLayer(), PCB_TEXT::Deserialize(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), PCB_TEXT_DESC::PCB_TEXT_DESC(), and PCB_FIELDS_GRID_TABLE::SetValueAsBool().
|
inline |
Definition at line 751 of file zone.h.
References m_islandRemovalMode.
Referenced by TEARDROP_MANAGER::createTeardrop(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 734 of file zone.h.
References m_isRuleArea.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), FABMASTER::loadZone(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), and ZONE().
|
inlineinherited |
Definition at line 160 of file eda_item.h.
References EDA_ITEM::ClearFlags(), IS_SHOWN_AS_BITMAP, and EDA_ITEM::SetFlags().
|
overridevirtual |
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 from BOARD_ITEM.
Definition at line 298 of file zone.cpp.
References SetLayerSet().
Referenced by BOARD::AddArea(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), BOOST_AUTO_TEST_CASE(), TEARDROP_MANAGER::createTeardrop(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), PCB_IO_EAGLE::loadPlain(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), FABMASTER::loadZone(), PlotSolderMaskLayer(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), and ZONE_DESC::ZONE_DESC().
|
overridevirtual |
Reimplemented from BOARD_ITEM.
Definition at line 304 of file zone.cpp.
References m_filledPolysHash, m_FilledPolysList, m_insulatedIslands, m_layerSet, LSET::RunOnLayers(), SetNeedRefill(), and UnFill().
Referenced by BOARD::BOARD(), BOOST_AUTO_TEST_CASE(), ZONE_SETTINGS::ExportSetting(), Flip(), ALTIUM_PCB::HelperSetZoneLayers(), InitDataFromSrcInCopyCtor(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), FABMASTER::loadZone(), PCB_IO_KICAD_SEXPR_PARSER::parseBOARD_unchecked(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), and SetLayer().
|
inline |
Definition at line 155 of file zone.h.
References m_ZoneClearance.
Referenced by PCAD2KICAD::PCAD_POLYGON::AddToBoard(), TEARDROP_MANAGER::createTeardrop(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), FABMASTER::loadZone(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 335 of file zone.h.
References m_localFlgs.
Referenced by InitDataFromSrcInCopyCtor(), and ZONE().
|
inlineinherited |
Definition at line 193 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_localRatsnestVisible.
|
inlinevirtualinherited |
Reimplemented in PCB_GROUP, and FOOTPRINT.
Definition at line 328 of file board_item.h.
References BOARD_ITEM::m_isLocked.
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), PAD::Deserialize(), PCB_SHAPE::Deserialize(), PCB_TEXT::Deserialize(), PCB_TRACK::Deserialize(), PCB_ARC::Deserialize(), PCB_VIA::Deserialize(), 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_IO_KICAD_SEXPR_PARSER::Parse(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), PCB_IO_KICAD_SEXPR_PARSER::parseTextBoxContent(), processTextItem(), CLIPBOARD_IO::SaveSelection(), PCB_GROUP::SetLocked(), DIALOG_REFERENCE_IMAGE_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXTBOX_PROPERTIES::TransferDataFromWindow(), and DIALOG_TRACK_VIA_PROPERTIES::TransferDataFromWindow().
|
inline |
Definition at line 754 of file zone.h.
References m_minIslandArea.
Referenced by ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 271 of file zone.h.
References m_fillMode, m_hatchGap, m_hatchThickness, m_ZoneMinThickness, and SetNeedRefill().
Referenced by BOARD::BOARD(), TEARDROP_MANAGER::createTeardrop(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), PlotSolderMaskLayer(), and ZONE_DESC::ZONE_DESC().
|
inherited |
Definition at line 67 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_IO_ALTIUM::ParseASCIISchematic(), SCH_IO_ALTIUM::ParseFileHeader(), and EDA_ITEM::SetModified().
|
inline |
Definition at line 265 of file zone.h.
References m_needRefill.
Referenced by PCB_POINT_EDITOR::addCorner(), AddPolygon(), AppendCorner(), PCB_POINT_EDITOR::chamferCorner(), ALTIUM_PCB::ConvertArcs6ToBoardItem(), ALTIUM_PCB::ConvertTracks6ToBoardItem(), ZONE_FILLER::fillSingleZone(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), MoveEdge(), ALTIUM_PCB::ParseRegions6Data(), PCB_POINT_EDITOR::removeCorner(), RemoveCutout(), SetCornerPosition(), SetCornerRadius(), SetLayerSet(), SetMinThickness(), SetThermalReliefGap(), and SetThermalReliefSpokeWidth().
|
inlineinherited |
Set a NET_INFO object for the item.
Definition at line 85 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by BOOST_AUTO_TEST_CASE(), PNS_KICAD_IFACE::createBoardItem(), EDIT_TOOL::DragArcTrack(), EDIT_TOOL::FilletTracks(), PNS_PCBNEW_RULE_RESOLVER::getBoardItem(), ROUTER_TOOL::handleLayerSwitch(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), FABMASTER::loadEtch(), CADSTAR_PCB_ARCHIVE_LOADER::loadNets(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), FABMASTER::loadVias(), FABMASTER::loadZone(), main(), CADSTAR_PCB_ARCHIVE_LOADER::makeTracksFromShapes(), PNS_KICAD_IFACE::modifyBoardItem(), and ROUTER_TOOL::updateSizesAfterRouterEvent().
|
inlineinherited |
Definition at line 108 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::SetNetCode().
|
inherited |
Set net using a net code.
aNetCode | is a net code for the new net. It has to exist in NETINFO_LIST held by BOARD. |
aNoAssert | if true, do not assert that the net exists. Otherwise, item is assigned to the unconnected net. |
Definition at line 46 of file board_connected_item.cpp.
References BOARD::FindNet(), BOARD_ITEM::GetBoard(), BOARD_ITEM::IsOnCopperLayer(), BOARD_CONNECTED_ITEM::m_netinfo, and NETINFO_LIST::OrphanedItem().
Referenced by BOARD::AddArea(), PCAD2KICAD::PCAD_LINE::AddToBoard(), PCAD2KICAD::PCAD_POLYGON::AddToBoard(), BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), TEARDROP_MANAGER::createTeardrop(), PAD::Deserialize(), PCB_SHAPE::Deserialize(), PCB_TRACK::Deserialize(), PCB_ARC::Deserialize(), PCB_VIA::Deserialize(), PCB_EDIT_FRAME::Edit_Zone_Params(), PCB_EDIT_FRAME::ExchangeFootprint(), ZONE_SETTINGS::ExportSetting(), FOOTPRINT::FOOTPRINT(), PCB_IO_EAGLE::loadPlain(), PCB_IO_EAGLE::loadSignals(), PCB_IO_KICAD_LEGACY::loadTrackList(), DSN::SPECCTRA_DB::makeTRACK(), CADSTAR_PCB_ARCHIVE_LOADER::makeTracksFromShapes(), FOOTPRINT::operator=(), PAD::SetAttribute(), PCB_SHAPE::SetLayer(), BOARD_CONNECTED_ITEM::SetNetCode(), DRC_TEST_PROVIDER_CREEPAGE::testCreepage(), DIALOG_PAD_PROPERTIES::TransferDataFromWindow(), and DIALOG_PAD_PROPERTIES::transferDataToPad().
|
inline |
|
inline |
Definition at line 268 of file zone.h.
References m_PadConnection.
Referenced by TEARDROP_MANAGER::createTeardrop(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), FABMASTER::loadZone(), and ZONE_DESC::ZONE_DESC().
|
inlinevirtualinherited |
Reimplemented in LIB_SYMBOL, and NETINFO_ITEM.
Definition at line 104 of file eda_item.h.
References EDA_ITEM::m_parent.
Referenced by BOARD::Add(), FOOTPRINT::Add(), PCB_TABLE::AddCell(), SCH_TABLE::AddCell(), LIB_SYMBOL::AddDrawItem(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), BOARD_NETLIST_UPDATER::addNewFootprint(), SCH_SHEET::AddPin(), PAD::AddPrimitive(), PADSTACK::AddPrimitive(), PAD::AddPrimitivePoly(), SYMBOL_EDITOR_CONTROL::AddSymbolToSchematic(), SCH_SCREEN::Append(), BOOST_AUTO_TEST_CASE(), CADSTAR_SCH_ARCHIVE_LOADER::copySymbolItems(), SYMBOL_EDIT_FRAME::CreateNewSymbol(), SCH_DRAWING_TOOLS::createNewText(), PANEL_EESCHEMA_COLOR_SETTINGS::createPreviewItems(), 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(), SCH_DRAWING_TOOLS::DrawTable(), PCB_EDIT_FRAME::ExchangeFootprint(), PAD_TOOL::explodePad(), LIB_SYMBOL::Flatten(), PCB_IO_KICAD_SEXPR::FootprintSave(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), CADSTAR_SCH_ARCHIVE_LOADER::getKiCadSchText(), PCB_TABLE::InsertCell(), SCH_TABLE::InsertCell(), LIB_SYMBOL::LIB_SYMBOL(), LTSPICE_SCHEMATIC::Load(), SCH_IO_KICAD_LEGACY_LIB_CACHE::loadAliases(), CADSTAR_SCH_ARCHIVE_LOADER::loadChildSheets(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), SCH_IO_KICAD_SEXPR::loadHierarchy(), SCH_IO_KICAD_LEGACY::loadHierarchy(), KI_TEST::LoadHierarchy(), SCH_IO_EAGLE::loadSymbolCircle(), SCH_IO_EAGLE::loadSymbolPolyLine(), SCH_IO_EAGLE::loadSymbolRectangle(), SCH_IO_EAGLE::loadSymbolWire(), PCB_POINT_EDITOR::OnSelectionChange(), LIB_SYMBOL::operator=(), SCH_IO_KICAD_SEXPR_PARSER::parseLibSymbol(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), PCB_CONTROL::Paste(), pasteFootprintItemsToFootprintEditor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), BACK_ANNOTATE::processNetNameChange(), PAD::Recombine(), SCH_IO_LIB_CACHE::removeSymbol(), SCH_EDIT_TOOL::RepeatDrawItem(), 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(), FOOTPRINT::swapData(), PCB_TABLE::swapData(), SCH_LABEL_BASE::SwapData(), SCH_SHEET::SwapData(), SCH_SYMBOL::SwapData(), SCH_TABLE::SwapData(), BOARD_ITEM::SwapItemData(), SCH_SYMBOL::SyncOtherUnits(), and SCH_DRAWING_TOOLS::TwoClickPlace().
|
inlineinherited |
Definition at line 89 of file board_item.h.
References BOARD_ITEM::m_group.
Referenced by PCB_GROUP::AddItem(), PCB_GENERATOR::AddItem(), ZONE_FILLER::buildThermalSpokes(), PCB_IO_KICAD_SEXPR::FootprintSave(), GENDRILL_WRITER_BASE::genDrillMapFile(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), TRACKS_CLEANER::mergeCollinearSegments(), PCB_POINT_EDITOR::OnSelectionChange(), 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(), DIALOG_PAD_PROPERTIES::~DIALOG_PAD_PROPERTIES(), and TEST_BOARD_ITEM_FIXTURE::~TEST_BOARD_ITEM_FIXTURE().
|
inlineoverridevirtual |
|
inline |
Definition at line 735 of file zone.h.
References m_ruleAreaPlacementEnabled.
Referenced by ZONE_SETTINGS::ExportSetting(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 740 of file zone.h.
References m_ruleAreaPlacementSource.
Referenced by ZONE_SETTINGS::ExportSetting(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 736 of file zone.h.
References m_ruleAreaPlacementSourceType.
Referenced by ZONE_SETTINGS::ExportSetting(), and ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 119 of file eda_item.h.
References SELECTED, and EDA_ITEM::SetFlags().
Referenced by PANEL_EESCHEMA_COLOR_SETTINGS::createPreviewItems(), KIGFX::SCH_PAINTER::draw(), PL_SELECTION_TOOL::highlight(), EE_SELECTION_TOOL::highlight(), PCB_SELECTION_TOOL::highlightInternal(), PCB_TEST_SELECTION_TOOL::highlightInternal(), SCH_LINE::MergeOverlap(), DS_PROXY_UNDO_ITEM::Restore(), EE_TOOL_BASE< T >::saveCopyInUndoList(), GERBVIEW_SELECTION_TOOL::selectVisually(), and SCH_COMMIT::Stage().
|
inline |
Definition at line 317 of file zone.h.
References SHAPE_POLY_SET::GetRelativeIndices(), m_CornerSelection, and m_Poly.
|
virtualinherited |
Reimplemented in PCB_SHAPE.
Definition at line 94 of file board_item.cpp.
References EDA_ITEM::GetClass().
|
inlineinherited |
Definition at line 220 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_AllowUseTwoTracks, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inline |
Set the type of teardrop if the zone is a teardrop area for non teardrop area, the type must be TEARDROP_TYPE::TD_NONE.
Definition at line 702 of file zone.h.
References m_teardropType.
Referenced by TEARDROP_MANAGER::createTeardrop(), and ZONE_SETTINGS::ExportSetting().
|
inlineinherited |
Definition at line 202 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_BestLengthRatio, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 208 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_BestWidthRatio, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 214 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_CurveSegCount, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 205 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_TdMaxLen, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 223 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_teardropParams, and TEARDROP_PARAMETERS::m_WidthtoSizeFilterRatio.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 211 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_TdMaxWidth, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 217 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_TdOnPadsInZones, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineinherited |
Definition at line 199 of file board_connected_item.h.
References TEARDROP_PARAMETERS::m_Enabled, and BOARD_CONNECTED_ITEM::m_teardropParams.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inline |
Definition at line 195 of file zone.h.
References m_thermalReliefGap, and SetNeedRefill().
Referenced by ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
inline |
Definition at line 206 of file zone.h.
References m_thermalReliefSpokeWidth, and SetNeedRefill().
Referenced by ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 116 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 122 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().
|
inline |
Definition at line 133 of file zone.h.
References m_zoneName.
Referenced by TEARDROP_MANAGER::createTeardrop(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadTemplates(), and ZONE_DESC::ZONE_DESC().
|
overridevirtual |
Return a measure of how likely the other object is to represent the same object.
The scale runs from 0.0 (definitely different objects) to 1.0 (same)
This is a pure virtual function. Derived classes must implement this.
Implements BOARD_ITEM.
Definition at line 1520 of file zone.cpp.
References GetAssignedPriority(), GetCornerPosition(), GetCornerRadius(), GetCornerSmoothingType(), GetDoNotAllowCopperPour(), GetDoNotAllowFootprints(), GetDoNotAllowPads(), GetDoNotAllowTracks(), GetDoNotAllowVias(), GetIsRuleArea(), GetLayerSet(), GetMinThickness(), BOARD_CONNECTED_ITEM::GetNetCode(), GetNumCorners(), BOARD_CONNECTED_ITEM::GetTeardropParams(), alg::longest_common_subset(), and EDA_ITEM::Type().
|
inlinestaticinherited |
Helper function to be used by the C++ STL sort algorithm for sorting a STL container of EDA_ITEM pointers.
aLeft | The left hand item to compare. |
aRight | The right hand item to compare. |
Definition at line 433 of file eda_item.h.
|
inlinevirtualinherited |
Reimplemented in PCB_SHAPE, PCB_TEXT, and PCB_TEXTBOX.
Definition at line 330 of file board_item.h.
|
overrideprotectedvirtual |
Reimplemented from BOARD_ITEM.
Definition at line 1107 of file zone.cpp.
References PCB_ZONE_T, and EDA_ITEM::Type().
|
inherited |
Swap data between aItem and aImage.
aItem and aImage should have the same type.
Used in undo and redo commands to swap values between an item and its copy. Only values like layer, size .. which are modified by editing are swapped.
aImage | the item image which contains data to swap. |
Definition at line 226 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 API_HANDLER_PCB::handleCreateUpdateItemsInternal(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), BOARD_COMMIT::Revert(), and UpdateCopyOfZonesList().
|
overridevirtual |
Convert the zone shape to a closed polygon Used in filling zones calculations Circles and arcs are approximated by segments.
aLayer | is the layer of the filled zone to retrieve |
aBuffer | is a buffer to store the polygon |
aClearance | is the clearance around the pad |
aError | is the maximum deviation from true circle |
ignoreLineWidth | is used for edge cut items where the line width is only for visualization |
Reimplemented from BOARD_ITEM.
Definition at line 1405 of file zone.cpp.
References SHAPE_POLY_SET::Append(), ERROR_OUTSIDE, SHAPE_POLY_SET::InflateWithLinkedHoles(), m_FilledPolysList, and SHAPE_POLY_SET::PM_FAST.
Referenced by PCB_BASE_FRAME::FocusOnItems().
void ZONE::TransformSmoothedOutlineToPolygon | ( | SHAPE_POLY_SET & | aBuffer, |
int | aClearance, | ||
int | aError, | ||
ERROR_LOC | aErrorLoc, | ||
SHAPE_POLY_SET * | aBoardOutline | ||
) | const |
Convert the outlines shape to a polygon with no holes inflated (optional) by max( aClearanceValue, the zone clearance) (holes are linked to external outline by overlapping segments) Used in filling zones calculations Circles (vias) and arcs (ends of tracks) are approximated by segments.
aBuffer | is a buffer to store the polygon |
aClearance | is the min clearance around outlines |
aBoardOutline | is the board outline (if a valid one exists; nullptr otherwise) |
Definition at line 1365 of file zone.cpp.
References SHAPE_POLY_SET::Append(), ARC_HIGH_DEF, BuildSmoothedPoly(), ERROR_OUTSIDE, SHAPE_POLY_SET::Fracture(), BOARD_ITEM::GetBoard(), BOARD::GetDesignSettings(), GetFirstLayer(), SHAPE_POLY_SET::Inflate(), BOARD_DESIGN_SETTINGS::m_MaxError, and SHAPE_POLY_SET::PM_FAST.
void ZONE::TransformSolidAreasShapesToPolygon | ( | PCB_LAYER_ID | aLayer, |
SHAPE_POLY_SET & | aBuffer | ||
) | const |
Convert solid areas full shapes to polygon set (the full shape is the polygon area with a thick outline) Used in 3D view Arcs (ends of segments) are approximated by segments.
aLayer | is the layer of the zone to retrieve |
aBuffer | = a buffer to store the polygons |
aError | = Maximum error allowed between true arc and polygon approx |
Definition at line 1435 of file zone.cpp.
References SHAPE_POLY_SET::Append(), and m_FilledPolysList.
|
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 101 of file eda_item.h.
References EDA_ITEM::m_structType.
Referenced by CN_CONNECTIVITY_ALGO::Add(), BOARD::Add(), FOOTPRINT::Add(), CN_CLUSTER::Add(), KIGFX::PCB_VIEW::Add(), PCB_GRID_HELPER::AddConstructionItems(), PCB_POINT_EDITOR::addCorner(), PCB_GROUP::AddItem(), CONNECTION_SUBGRAPH::AddItem(), DRC_TEST_PROVIDER_SOLDER_MASK::addItemToRTrees(), ZONE_FILLER::addKnockout(), SCH_SHEET::AddPin(), SCH_BASE_FRAME::AddToScreen(), ALIGN_DISTRIBUTE_TOOL::AlignBottom(), ALIGN_DISTRIBUTE_TOOL::AlignCenterX(), ALIGN_DISTRIBUTE_TOOL::AlignCenterY(), SCH_MOVE_TOOL::AlignToGrid(), 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(), SCH_EDIT_FRAME::AutoRotateItem(), EE_SELECTION_TOOL::autostartEvent(), EXPORTER_STEP::buildGraphic3DShape(), PCB_NET_INSPECTOR_PANEL::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(), PCB_POINT_EDITOR::chamferCorner(), SCH_EDIT_TOOL::ChangeTextType(), KI_TEST::CheckFootprint(), KI_TEST::CheckFpShape(), KI_TEST::CheckFpZone(), DRC_TEST_PROVIDER_SOLDER_MASK::checkMaskAperture(), CN_VISITOR::checkZoneItemConnection(), LIB_SYMBOL::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_TABLE::ClassOf(), SCH_TABLECELL::ClassOf(), SCH_TEXT::ClassOf(), SCH_TEXTBOX::ClassOf(), BOARD::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_GROUP::ClassOf(), PCB_MARKER::ClassOf(), PCB_REFERENCE_IMAGE::ClassOf(), PCB_SHAPE::ClassOf(), PCB_TABLE::ClassOf(), PCB_TABLECELL::ClassOf(), PCB_TARGET::ClassOf(), PCB_TEXT::ClassOf(), PCB_TEXTBOX::ClassOf(), PCB_TRACK::ClassOf(), PCB_ARC::ClassOf(), PCB_VIA::ClassOf(), ClassOf(), CONNECTION_GRAPH::collectAllDriverValues(), collidesWithArea(), SCH_ITEM::compare(), SCH_FIELD::compare(), SCH_TEXT::compare(), SCH_TEXTBOX::compare(), LIB_SYMBOL::compare(), TEARDROP_MANAGER::computeAnchorPoints(), PCB_GRID_HELPER::computeAnchors(), EE_GRID_HELPER::computeAnchors(), SCH_BUS_WIRE_ENTRY::ConnectionPropagatesTo(), SCH_LINE::ConnectionPropagatesTo(), EE_RTREE::contains(), PICKED_ITEMS_LIST::ContainsItemType(), BOARD::ConvertKIIDsToCrossReferences(), SCHEMATIC::ConvertKIIDsToRefs(), PAD_TOOL::copyPadSettings(), FOOTPRINT::CoverageRatio(), CreateItemForType(), BOARD_ADAPTER::createLayers(), PCB_BASE_FRAME::CreateNewFootprint(), SCH_DRAWING_TOOLS::createNewText(), ZONE_CREATE_HELPER::createNewZone(), CONVERT_TOOL::CreatePolys(), BOARD_ADAPTER::createTrackWithMargin(), EE_INSPECTION_TOOL::CrossProbe(), DRC_TOOL::CrossProbe(), SCH_SCREEN::DeleteItem(), SCH_MARKER::DeserializeFromString(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_FIELD_PROPERTIES::DIALOG_FIELD_PROPERTIES(), DIALOG_LABEL_PROPERTIES::DIALOG_LABEL_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), BOARD_COMMIT::dirtyIntersectingZones(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), SCH_EDIT_TOOL::DoDelete(), 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(), KIGFX::PCB_PAINTER::Draw(), DRAWING_TOOL::DrawDimension(), KIGFX::SCH_PAINTER::drawItemBoundingBox(), SCH_DRAWING_TOOLS::DrawSheet(), DRAWING_TOOL::DrawVia(), CONNECTION_SUBGRAPH::driverName(), CN_ITEM::Dump(), 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(), enclosedByAreaFunc(), CONNECTION_GRAPH::ercCheckBusToBusConflicts(), CONNECTION_GRAPH::ercCheckBusToBusEntryConflicts(), CONNECTION_GRAPH::ercCheckBusToNetConflicts(), CONNECTION_GRAPH::ercCheckDanglingWireEndpoints(), CONNECTION_GRAPH::ercCheckFloatingWires(), CONNECTION_GRAPH::ercCheckLabels(), CONNECTION_GRAPH::ercCheckMultipleDrivers(), CONNECTION_GRAPH::ercCheckNoConnects(), DRC_ENGINE::EvalRules(), DRC_ENGINE::EvalZoneConnection(), CONNECTION_SUBGRAPH::ExchangeItem(), CONNECTION_GRAPH::ExchangeItem(), PCB_SELECTION_TOOL::FilterCollectorForFreePads(), PCB_SELECTION_TOOL::FilterCollectorForHierarchy(), PCB_SELECTION_TOOL::FilterCollectorForMarkers(), PCB_SELECTION_TOOL::FilterCollectorForTableCells(), TEARDROP_MANAGER::findAnchorPointsOnTrack(), PCB_SELECTION_TOOL::FindItem(), NETLIST_EXPORTER_BASE::findNextSymbol(), PCB_IO_KICAD_SEXPR::Format(), PCB_IO_KICAD_SEXPR::format(), SCH_IO_KICAD_SEXPR::Format(), SCH_IO_KICAD_LEGACY::Format(), FormatProbeItem(), CN_ITEM::GetAnchor(), BOARD_ITEM::GetBoard(), GetBoardItemWidth(), SCH_FIELD::GetBoundingBox(), SCH_LABEL_BASE::GetBoundingBox(), PCB_TRACK::GetBoundingBox(), GetBoundingBoxes(), SCH_FIELD::GetCanonicalName(), PCB_FIELD::GetCanonicalName(), EDIT_TOOL::getChildItemsOfGroupsAndGenerators(), getClosestGroup(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), KIGFX::GERBVIEW_RENDER_SETTINGS::GetColor(), KIGFX::DS_RENDER_SETTINGS::GetColor(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), CONNECTIVITY_DATA::GetConnectedPadsAndVias(), FOOTPRINT::GetCoverageArea(), CONNECTION_GRAPH::getDefaultConnection(), SCH_FIELD::GetDefaultLayer(), SCH_FIELD::GetDrawRotation(), CONNECTION_SUBGRAPH::GetDriverPriority(), getFieldFunc(), PCB_TRACK::GetFriendlyName(), getHoleShape(), 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::GetNetclassesForDriver(), CONNECTIVITY_DATA::GetNetItems(), GetNetNavigatorItemText(), BOARD_ITEM::GetParentFootprint(), SCH_ITEM::GetParentSymbol(), SCH_SYMBOL::GetPinPhysicalPosition(), SCH_FIELD::GetPosition(), PANEL_SETUP_LAYERS::getRemovedLayersWithItems(), KIGFX::SCH_PAINTER::getRenderColor(), SCH_RULE_AREA::GetResolvedNetclasses(), TEXT_SEARCH_HANDLER::getResultCell(), LABEL_SEARCH_HANDLER::getResultCell(), GetSchItemAsText(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), SCH_FIELD::GetShownText(), CONVERT_TOOL::getStartEndPoints(), KIGFX::SCH_PAINTER::getTextThickness(), EDA_ITEM::GetTypeDesc(), PCBEXPR_COMPONENT_CLASS_REF::GetValue(), PCBEXPR_TYPE_REF::GetValue(), TEARDROP_MANAGER::GetWidth(), PCB_SELECTION_TOOL::grabUnconnected(), BOARD::GroupLegalOps(), EE_SELECTION_TOOL::GuessSelectionCandidates(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), API_HANDLER_PCB::handleGetBoundingBox(), 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::Increment(), SYMBOL_EDITOR_EDIT_TOOL::Increment(), DIALOG_FIELD_PROPERTIES::init(), 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(), 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(), SCH_FIELD::IsMandatory(), isMaskAperture(), isMicroVia(), PNS_PCBNEW_RULE_RESOLVER::IsNonPlatedSlot(), 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(), EE_SELECTION_TOOL::itemPassesFilter(), SCH_EDIT_TOOL::JustifyText(), 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(), ALIGNED_DIMENSION_POINT_EDIT_BEHAVIOR::MakePoints(), EE_POINT_EDITOR::makePointsAndBehavior(), CONVERT_TOOL::makePolysFromChainedSegs(), SCH_SCREEN::MarkConnections(), CONNECTIVITY_DATA::MarkItemNetAsDirty(), CN_CONNECTIVITY_ALGO::markItemNetAsDirty(), SCH_FIELD::Matches(), memberOfGroupFunc(), memberOfSheetFunc(), SCH_LINE::MergeOverlap(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), BOARD_EDITOR_CONTROL::modifyLockSelected(), SCH_MOVE_TOOL::moveItem(), EE_SELECTION_TOOL::narrowSelection(), ARRAY_TOOL::onDialogClosed(), 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()(), SCH_ITEM::operator<(), SCH_BUS_ENTRY_BASE::operator<(), SCH_FIELD::operator<(), SCH_JUNCTION::operator<(), SCH_LINE::operator<(), SCH_SHEET::operator<(), SCH_SYMBOL::operator<(), SCH_TABLE::operator<(), SCH_TEXT::operator<(), SCH_TEXTBOX::operator<(), PCB_REFERENCE_IMAGE::operator=(), SCH_BITMAP::operator=(), SCH_SHEET::operator=(), SCH_SYMBOL::operator=(), PAD::operator==(), PCB_DIMENSION_BASE::operator==(), PCB_GROUP::operator==(), PCB_REFERENCE_IMAGE::operator==(), PCB_SHAPE::operator==(), PCB_TABLE::operator==(), PCB_TABLECELL::operator==(), PCB_TARGET::operator==(), PCB_TEXT::operator==(), PCB_TEXTBOX::operator==(), PCB_ARC::operator==(), BOARD::operator==(), FOOTPRINT::operator==(), PCB_FIELD::operator==(), PCB_TRACK::operator==(), PCB_VIA::operator==(), operator==(), SCH_BUS_ENTRY_BASE::operator==(), SCH_FIELD::operator==(), SCH_TEXT::operator==(), SCH_ITEM::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_TABLE::operator==(), SCH_TABLECELL::operator==(), SCH_TEXTBOX::operator==(), PAD::PAD(), SCH_COMMIT::parentObject(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_SHAPE(), SCH_EASYEDAPRO_PARSER::ParseSchematic(), SCH_IO_KICAD_SEXPR_PARSER::parseSchField(), PCB_CONTROL::Paste(), SCH_DRAWING_TOOLS::PlaceNextSymbolUnit(), SCH_FIELD::Plot(), SCH_LABEL_BASE::Plot(), BRDITEMS_PLOTTER::PlotBoardGraphicItem(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), SCH_FIELD::Print(), DIALOG_GLOBAL_EDIT_TEARDROPS::processItem(), OUTSET_ROUTINE::ProcessItem(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::processItem(), BACK_ANNOTATE::processNetNameChange(), CONNECTION_GRAPH::processSubGraphs(), SCH_EDIT_TOOL::Properties(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates(), 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(), POSITION_RELATIVE_TOOL::RelativeItemSelectionMove(), BOARD::Remove(), CN_CONNECTIVITY_ALGO::Remove(), FOOTPRINT::Remove(), EE_RTREE::remove(), SCH_SCREEN::Remove(), KIGFX::PCB_VIEW::Remove(), PCB_POINT_EDITOR::removeCorner(), PCB_POINT_EDITOR::removeCornerCondition(), LIB_SYMBOL::RemoveDrawItem(), SCH_BASE_FRAME::RemoveFromScreen(), CONNECTION_SUBGRAPH::RemoveItem(), EDIT_TOOL::removeNonRootItems(), SCH_SHEET::RemovePin(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_FIELD::Replace(), SCH_FIND_REPLACE_TOOL::ReplaceAll(), EE_SELECTION_TOOL::RequestSelection(), KI_TEST::RequireBoardItemWithTypeAndId(), CONNECTION_GRAPH::resolveAllDrivers(), SCHEMATIC::ResolveCrossReference(), CONNECTION_SUBGRAPH::ResolveDrivers(), PCB_IO_KICAD_SEXPR_PARSER::resolveGroups(), SCH_LABEL_BASE::ResolveTextVar(), BOARD::ResolveTextVar(), DS_PROXY_UNDO_ITEM::Restore(), SCH_COMMIT::Revert(), BOARD_COMMIT::Revert(), PL_EDITOR_FRAME::RollbackFromUndo(), SCH_EDIT_TOOL::Rotate(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), EE_TOOL_BASE< T >::saveCopyInUndoList(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveField(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveField(), SCH_IO_KICAD_LEGACY_LIB_CACHE::savePin(), SCH_IO_KICAD_SEXPR_LIB_CACHE::savePin(), CLIPBOARD_IO::SaveSelection(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveSymbolDrawItem(), SCH_IO_KICAD_LEGACY_LIB_CACHE::saveText(), SCH_IO_KICAD_SEXPR::saveText(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveText(), SCH_IO_KICAD_SEXPR::saveTextBox(), SCH_IO_KICAD_SEXPR_LIB_CACHE::saveTextBox(), SCH_ITEM::Schematic(), SCH_SCREEN::Schematic(), SYMBOL_SEARCH_HANDLER::Search(), POWER_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_POINT_EDITOR::setAltConstraint(), SCH_FIELD::SetId(), ITEM_PICKER::SetItem(), PCB_BASE_FRAME::SetPlotSettings(), SCH_FIELD::SetPosition(), PCB_EDIT_FRAME::ShowFindDialog(), SCH_EDIT_FRAME::ShowFindReplaceDialog(), BOARD_INSPECTION_TOOL::ShowFootprintLinks(), PCB_REFERENCE_IMAGE::Similarity(), PCB_SHAPE::Similarity(), PCB_TABLECELL::Similarity(), PCB_TARGET::Similarity(), PCB_TEXT::Similarity(), PCB_TEXTBOX::Similarity(), FOOTPRINT::Similarity(), PAD::Similarity(), PCB_DIMENSION_BASE::Similarity(), PCB_FIELD::Similarity(), PCB_GROUP::Similarity(), PCB_TABLE::Similarity(), PCB_TRACK::Similarity(), PCB_ARC::Similarity(), PCB_VIA::Similarity(), Similarity(), SCH_BUS_ENTRY_BASE::Similarity(), SCH_FIELD::Similarity(), SCH_TEXT::Similarity(), SCH_BITMAP::Similarity(), SCH_JUNCTION::Similarity(), SCH_LINE::Similarity(), SCH_NO_CONNECT::Similarity(), SCH_PIN::Similarity(), SCH_SHAPE::Similarity(), SCH_SHEET::Similarity(), SCH_SHEET_PIN::Similarity(), SCH_SYMBOL::Similarity(), SCH_TABLE::Similarity(), SCH_TABLECELL::Similarity(), SCH_TEXTBOX::Similarity(), LIB_SYMBOL::Similarity(), SCH_EDITOR_CONTROL::SimProbe(), SCH_COMMIT::Stage(), PNS::LINE_PLACER::Start(), SCH_EDIT_TOOL::Swap(), SYMBOL_EDITOR_EDIT_TOOL::Swap(), EDIT_TOOL::Swap(), 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_FIELD::swapData(), PCB_GROUP::swapData(), PCB_TABLE::swapData(), PCB_TABLECELL::swapData(), PCB_TARGET::swapData(), PCB_TEXT::swapData(), PCB_TEXTBOX::swapData(), PCB_TRACK::swapData(), PCB_ARC::swapData(), PCB_VIA::swapData(), 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(), SCH_TABLE::SwapData(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testGraphicClearances(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), 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_SOLDER_MASK::testMaskItemAgainstZones(), ERC_TESTER::TestMissingNetclasses(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testSingleLayerItemAgainstItem(), ERC_TESTER::TestTextVars(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), CONNECTIVITY_DATA::TestTrackEndpointDangling(), DIALOG_LABEL_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), PANEL_SETUP_LAYERS::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(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), EE_SELECTION_TOOL::unhighlight(), KIGFX::PCB_VIEW::Update(), SCH_SHEET_PATH::UpdateAllScreenReferences(), DIALOG_FIELD_PROPERTIES::UpdateField(), PL_POINT_EDITOR::updateItem(), PCB_POINT_EDITOR::updateItem(), ALIGNED_DIMENSION_POINT_EDIT_BEHAVIOR::UpdateItem(), EE_TOOL_BASE< T >::updateItem(), SCH_BASE_FRAME::UpdateItem(), PCB_CONTROL::UpdateMessagePanel(), EDIT_TOOL::updateModificationPoint(), PL_POINT_EDITOR::updatePoints(), SCH_BUS_ENTRY_BASE::ViewGetLayers(), SYMBOL::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().
bool ZONE::UnFill | ( | ) |
Removes the zone filling.
Definition at line 230 of file zone.cpp.
References m_FilledPolysList, m_fillFlags, m_insulatedIslands, m_isFilled, and BASE_SET::reset().
Referenced by EDIT_TOOL::DeleteItems(), SetLayerSet(), and ZONE_POINT_EDIT_BEHAVIOR::UpdateItem().
void ZONE::UnHatchBorder | ( | ) |
Clear the zone's hatch.
Definition at line 940 of file zone.cpp.
References m_borderHatchLines.
Referenced by MULTICHANNEL_TOOL::copyRuleAreaContents(), and HatchBorder().
|
overridevirtualinherited |
Return the bounding box of the item covering all its layers.
Implements KIGFX::VIEW_ITEM.
Reimplemented in SCH_PIN, GERBER_DRAW_ITEM, DS_PROXY_VIEW_ITEM, KIGFX::ORIGIN_VIEWITEM, KIGFX::ANCHOR_DEBUG, KIGFX::PREVIEW::ARC_ASSISTANT, KIGFX::PREVIEW::BEZIER_ASSISTANT, KIGFX::PREVIEW::CENTRELINE_RECT_ITEM, KIGFX::CONSTRUCTION_GEOM, KIGFX::PREVIEW::POLYGON_ITEM, KIGFX::PREVIEW::RULER_ITEM, KIGFX::PREVIEW::SELECTION_AREA, KIGFX::SNAP_INDICATOR, 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, ROUTER_STATUS_VIEW_ITEM, and MY_DRAWING.
Definition at line 276 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, ROUTER_STATUS_VIEW_ITEM, MY_DRAWING, KIGFX::PREVIEW::ARC_ASSISTANT, KIGFX::PREVIEW::BEZIER_ASSISTANT, KIGFX::PREVIEW::RULER_ITEM, KIGFX::PREVIEW::SELECTION_AREA, KIGFX::PREVIEW::TWO_POINT_ASSISTANT, PCB_TUNING_PATTERN, KIGFX::ORIGIN_VIEWITEM, KIGFX::ANCHOR_DEBUG, KIGFX::CONSTRUCTION_GEOM, KIGFX::SNAP_INDICATOR, KIGFX::VIEW_GROUP, and KIGFX::VIEW_OVERLAY.
Definition at line 119 of file view_item.h.
Referenced by KIGFX::VIEW::draw(), and KIGFX::VIEW::updateItemGeometry().
|
overridevirtual |
Return the all the layers within the VIEW the object is painted on.
For instance, a PAD spans zero or more copper layers and a few technical layers. ViewDraw() or PAINTER::Draw() is repeatedly called for each of the layers returned by ViewGetLayers(), depending on the rendering order.
aLayers[] | is the output layer index array. |
aCount | is the number of layer indices in aLayers[]. |
Reimplemented from BOARD_ITEM.
Definition at line 332 of file zone.cpp.
References IsConflicting(), LAYER_CONFLICTS_SHADOW, LAYER_ZONE_START, m_layerSet, and LSET::RunOnLayers().
|
overridevirtual |
Return the level of detail (LOD) of the item.
A level of detail is the minimal VIEW scale that is sufficient for an item to be shown on a given layer.
aLayer | is the current drawing layer. |
aView | is a pointer to the VIEW device we are drawing on. |
Reimplemented from KIGFX::VIEW_ITEM.
Definition at line 348 of file zone.cpp.
References B_Cu, BOARD_ITEM::GetParentFootprint(), KIGFX::VIEW::IsLayerVisible(), LAYER_FOOTPRINTS_BK, LAYER_FOOTPRINTS_FR, and LAYER_ZONES.
|
inlineinherited |
Definition at line 151 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::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().
|
virtualinherited |
May be re-implemented for each derived class in order to handle all the types given by its member data.
Implementations should call inspector->Inspect() on types in aScanTypes, and may use IterateForward() to do so on lists of such data.
inspector | An INSPECTOR instance to use in the inspection. |
testData | Arbitrary data used by the inspector. |
aScanTypes | Which KICAD_T types are of interest and the order in which they should be processed. |
Reimplemented in PCB_GROUP, LIB_SYMBOL, SCH_SHEET, SCH_SYMBOL, SCH_TABLE, GBR_LAYOUT, GERBER_DRAW_ITEM, GERBER_FILE_IMAGE, FOOTPRINT, PCB_TABLE, PCB_TRACK, SCH_LABEL_BASE, and BOARD.
Definition at line 94 of file eda_item.cpp.
References EDA_ITEM::GetClass(), and EDA_ITEM::IsType().
Referenced by PCB_TYPE_COLLECTOR::Collect(), PCB_LAYER_COLLECTOR::Collect(), GENERAL_COLLECTOR::Collect(), GERBER_COLLECTOR::Collect(), EDA_ITEM::IterateForward(), FOOTPRINT_PREVIEW_PANEL::renderFootprint(), and BOARD::UpdateUserUnits().
|
inlineinherited |
Definition at line 128 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by EE_SELECTION_TOOL::selectMultiple().
|
protected |
Definition at line 949 of file zone.h.
Referenced by CalculateFilledArea(), GetFilledArea(), GetMsgPanelInfo(), and InitDataFromSrcInCopyCtor().
|
protected |
Definition at line 944 of file zone.h.
Referenced by GetHatchLines(), HatchBorder(), InitDataFromSrcInCopyCtor(), and UnHatchBorder().
|
protected |
Definition at line 943 of file zone.h.
Referenced by GetBorderHatchPitch(), HatchBorder(), InitDataFromSrcInCopyCtor(), and SetBorderHatchPitch().
|
protected |
Definition at line 942 of file zone.h.
Referenced by GetHatchStyle(), HatchBorder(), InitDataFromSrcInCopyCtor(), SetBorderDisplayStyle(), and SetHatchStyle().
|
protected |
Definition at line 835 of file zone.h.
Referenced by BuildSmoothedPoly(), GetCornerRadius(), InitDataFromSrcInCopyCtor(), and SetCornerRadius().
|
protected |
The index of the corner being moved or nullptr if no corner is selected.
Definition at line 922 of file zone.h.
Referenced by GetItemDescription(), GetMsgPanelInfo(), GetSelectedCorner(), InitDataFromSrcInCopyCtor(), SetSelectedCorner(), and ~ZONE().
|
protected |
Definition at line 834 of file zone.h.
Referenced by BuildSmoothedPoly(), GetCornerSmoothingType(), InitDataFromSrcInCopyCtor(), and SetCornerSmoothingType().
|
protected |
Definition at line 869 of file zone.h.
Referenced by GetDoNotAllowCopperPour(), HasKeepoutParametersSet(), InitDataFromSrcInCopyCtor(), and SetDoNotAllowCopperPour().
|
protected |
Definition at line 873 of file zone.h.
Referenced by GetDoNotAllowFootprints(), HasKeepoutParametersSet(), InitDataFromSrcInCopyCtor(), and SetDoNotAllowFootprints().
|
protected |
Definition at line 872 of file zone.h.
Referenced by GetDoNotAllowPads(), HasKeepoutParametersSet(), InitDataFromSrcInCopyCtor(), and SetDoNotAllowPads().
|
protected |
Definition at line 871 of file zone.h.
Referenced by GetDoNotAllowTracks(), HasKeepoutParametersSet(), InitDataFromSrcInCopyCtor(), and SetDoNotAllowTracks().
|
protected |
Definition at line 870 of file zone.h.
Referenced by GetDoNotAllowVias(), HasKeepoutParametersSet(), InitDataFromSrcInCopyCtor(), and SetDoNotAllowVias().
|
protected |
A hash value used in zone filling calculations to see if the filled areas are up to date.
Definition at line 940 of file zone.h.
Referenced by BuildHashValue(), GetHashValue(), InitDataFromSrcInCopyCtor(), and SetLayerSet().
|
protected |
Definition at line 934 of file zone.h.
Referenced by BuildHashValue(), CacheTriangulation(), CalculateFilledArea(), Flip(), GetEffectiveShape(), GetFill(), GetFilledPolysList(), GetMsgPanelInfo(), HasFilledPolysForLayer(), HitTestFilledArea(), InitDataFromSrcInCopyCtor(), Mirror(), Move(), Rotate(), SetFilledPolysList(), SetLayerSet(), TransformShapeToPolygon(), TransformSolidAreasShapesToPolygon(), and UnFill().
|
protected |
Temp variables used while filling.
Definition at line 937 of file zone.h.
Referenced by GetFillFlag(), SetFillFlag(), and UnFill().
|
protected |
How to fill areas:
ZONE_FILL_MODE::POLYGONS => use solid polygons ZONE_FILL_MODE::HATCH_PATTERN => use a grid pattern as shape
Definition at line 908 of file zone.h.
Referenced by GetFillMode(), GetMsgPanelInfo(), InitDataFromSrcInCopyCtor(), SetFillMode(), and SetMinThickness().
|
protected |
Definition at line 878 of file zone.h.
Referenced by InitDataFromSrcInCopyCtor(), and ZONE().
|
protectedinherited |
Definition at line 499 of file eda_item.h.
Referenced by EDA_ITEM::ClearFlags(), DS_DRAW_ITEM_BASE::DS_DRAW_ITEM_BASE(), SCH_PIN::GetBoundingBox(), EDA_ITEM::GetEditFlags(), EDA_ITEM::GetFlags(), PCB_TRACK::GetMsgPanelInfoBase_Common(), SCH_LINE::GetSelectedPoints(), EDA_ITEM::GetTempFlags(), EDA_ITEM::HasFlag(), SCH_FIELD::HitTest(), SCH_JUNCTION::HitTest(), SCH_LINE::HitTest(), SCH_SHAPE::HitTest(), SCH_SYMBOL::HitTest(), SCH_TEXT::HitTest(), SCH_PIN::HitTest(), 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==(), SCH_LINE::Rotate(), EDA_ITEM::SetFlags(), PCB_SHAPE::Similarity(), LIB_SYMBOL::Similarity(), PCB_SHAPE::swapData(), PCB_REFERENCE_IMAGE::swapData(), SCH_ITEM::SwapFlags(), SCH_PIN::ViewBBox(), and EDA_ITEM::XorFlags().
|
privateinherited |
Additional transparency for diff'ing items.
Definition at line 172 of file view_item.h.
Referenced by KIGFX::VIEW::DRAW_ITEM_VISITOR::operator()().
|
protectedinherited |
Definition at line 501 of file eda_item.h.
Referenced by InitDataFromSrcInCopyCtor(), EDA_ITEM::IsForceVisible(), EDA_ITEM::operator=(), PCB_SHAPE::operator==(), EDA_ITEM::SetForceVisible(), PCB_SHAPE::Similarity(), PCB_SHAPE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
protectedinherited |
Definition at line 441 of file board_item.h.
Referenced by BOARD_ITEM::GetParentGroup(), BOARD_ITEM::SetParentGroup(), and BOARD_ITEM::~BOARD_ITEM().
|
protected |
Definition at line 918 of file zone.h.
Referenced by GetHatchBorderAlgorithm(), InitDataFromSrcInCopyCtor(), and SetHatchBorderAlgorithm().
|
protected |
Definition at line 910 of file zone.h.
Referenced by GetHatchGap(), InitDataFromSrcInCopyCtor(), SetHatchGap(), and SetMinThickness().
|
protected |
Definition at line 917 of file zone.h.
Referenced by GetHatchHoleMinArea(), InitDataFromSrcInCopyCtor(), and SetHatchHoleMinArea().
|
protected |
Definition at line 911 of file zone.h.
Referenced by GetHatchOrientation(), InitDataFromSrcInCopyCtor(), and SetHatchOrientation().
|
protected |
Definition at line 912 of file zone.h.
Referenced by GetHatchSmoothingLevel(), InitDataFromSrcInCopyCtor(), and SetHatchSmoothingLevel().
|
protected |
Definition at line 916 of file zone.h.
Referenced by GetHatchSmoothingValue(), InitDataFromSrcInCopyCtor(), and SetHatchSmoothingValue().
|
protected |
Definition at line 909 of file zone.h.
Referenced by GetHatchThickness(), InitDataFromSrcInCopyCtor(), SetHatchThickness(), and SetMinThickness().
|
protected |
For each layer, a set of insulated islands that were not removed.
Definition at line 947 of file zone.h.
Referenced by InitDataFromSrcInCopyCtor(), IsIsland(), SetIsIsland(), SetLayerSet(), and UnFill().
|
privateinherited |
Definition at line 170 of file view_item.h.
|
protected |
True when a zone was filled, false after deleting the filled areas.
Definition at line 889 of file zone.h.
Referenced by InitDataFromSrcInCopyCtor(), IsFilled(), SetIsFilled(), and UnFill().
|
protectedinherited |
Definition at line 437 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().
|
protected |
Definition at line 880 of file zone.h.
Referenced by GetIslandRemovalMode(), InitDataFromSrcInCopyCtor(), and SetIslandRemovalMode().
|
protectedinherited |
Definition at line 439 of file board_item.h.
Referenced by BOARD_ITEM::IsLocked(), PCB_SHAPE::operator==(), BOARD_ITEM::SetLocked(), PCB_SHAPE::Similarity(), PCB_SHAPE::swapData(), PCB_TABLE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
protected |
Definition at line 851 of file zone.h.
Referenced by GetIsRuleArea(), GetLocalClearance(), InitDataFromSrcInCopyCtor(), and SetIsRuleArea().
|
privateinherited |
Definition at line 169 of file view_item.h.
|
protectedinherited |
Definition at line 436 of file board_item.h.
Referenced by FOOTPRINT::FOOTPRINT(), PCB_VIA::GetDrillConstraint(), BOARD_ITEM::GetLayer(), PCB_SHAPE::GetLayer(), BOARD_ITEM::GetLayerName(), BOARD_ITEM::GetLayerSet(), PCB_SHAPE::GetLayerSet(), PCB_TRACK::GetLayerSet(), PCB_TUNING_PATTERN::GetMsgPanelInfo(), PCB_REFERENCE_IMAGE::GetMsgPanelInfo(), PAD::GetPrincipalLayer(), PCB_TRACK::GetWidthConstraint(), PCB_VIA::GetWidthConstraint(), BOARD_ITEM::IsOnLayer(), PCB_SHAPE::IsOnLayer(), PCB_TRACK::IsOnLayer(), BOARD_ITEM::IsSideSpecific(), PCB_SHAPE::IsType(), PCB_ARC::operator==(), PCB_REFERENCE_IMAGE::operator==(), PCB_SHAPE::operator==(), PCB_TARGET::operator==(), PCB_TRACK::operator==(), PCB_VIA::operator==(), PCB_DIMENSION_BASE::PCB_DIMENSION_BASE(), PCB_TARGET::PCB_TARGET(), PCB_TUNING_PATTERN::recoverBaseline(), PCB_MARKER::SerializeToString(), BOARD_ITEM::SetLayer(), PCB_GENERATOR::SetLayer(), PCB_REFERENCE_IMAGE::Similarity(), PCB_TRACK::Similarity(), PCB_ARC::Similarity(), PCB_VIA::Similarity(), PCB_SHAPE::swapData(), PCB_TABLE::swapData(), PCB_REFERENCE_IMAGE::swapData(), BOARD_ITEM::ViewGetLayers(), FOOTPRINT::ViewGetLayers(), PCB_REFERENCE_IMAGE::ViewGetLayers(), PCB_SHAPE::ViewGetLayers(), PCB_TRACK::ViewGetLayers(), FOOTPRINT::ViewGetLOD(), PCB_REFERENCE_IMAGE::ViewGetLOD(), PCB_SHAPE::ViewGetLOD(), PCB_TEXT::ViewGetLOD(), PCB_TEXTBOX::ViewGetLOD(), and PCB_TRACK::ViewGetLOD().
|
protected |
Definition at line 840 of file zone.h.
Referenced by GetFirstLayer(), GetItemDescription(), GetLayer(), GetLayerSet(), GetMsgPanelInfo(), IsOnCopperLayer(), IsOnLayer(), SetLayerSet(), and ViewGetLayers().
|
protected |
Definition at line 924 of file zone.h.
Referenced by GetLocalFlags(), and SetLocalFlags().
|
privateinherited |
Definition at line 235 of file board_connected_item.h.
Referenced by BOARD_CONNECTED_ITEM::BOARD_CONNECTED_ITEM(), BOARD_CONNECTED_ITEM::GetLocalRatsnestVisible(), and BOARD_CONNECTED_ITEM::SetLocalRatsnestVisible().
|
protected |
|
protected |
When island removal mode is set to AREA, islands below this area will be removed.
If this value is negative, all islands will be removed.
Definition at line 886 of file zone.h.
Referenced by GetMinIslandArea(), InitDataFromSrcInCopyCtor(), and SetMinIslandArea().
|
protected |
False when a zone was refilled, true after changes in zone params.
m_needRefill = false does not imply filled areas are up to date, just the zone was refilled after edition, and does not need refilling
Definition at line 896 of file zone.h.
Referenced by InitDataFromSrcInCopyCtor(), NeedRefill(), SetNeedRefill(), and ZONE().
|
protectedinherited |
Store all information about the net that item belongs to.
Definition at line 228 of file board_connected_item.h.
Referenced by BOARD_CONNECTED_ITEM::GetDisplayNetname(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), BOARD_CONNECTED_ITEM::GetNet(), BOARD_CONNECTED_ITEM::GetNetCode(), BOARD_CONNECTED_ITEM::GetNetname(), BOARD_CONNECTED_ITEM::GetShortNetname(), InitDataFromSrcInCopyCtor(), PCB_SHAPE::operator==(), BOARD_CONNECTED_ITEM::SetNet(), BOARD_CONNECTED_ITEM::SetNetCode(), PCB_SHAPE::Similarity(), and PCB_SHAPE::swapData().
|
protected |
Definition at line 950 of file zone.h.
Referenced by CalculateOutlineArea(), GetOutlineArea(), and InitDataFromSrcInCopyCtor().
|
protected |
Definition at line 875 of file zone.h.
Referenced by GetPadConnection(), InitDataFromSrcInCopyCtor(), and SetPadConnection().
|
protectedinherited |
Linked list: Link (parent struct)
Definition at line 500 of file eda_item.h.
Referenced by SCH_FIELD::DoHypertextAction(), SCH_FIELD::GetBoundingBox(), SCH_FIELD::GetCanonicalName(), PCB_FIELD::GetCanonicalName(), SCH_FIELD::GetDefaultLayer(), SCH_FIELD::GetDrawRotation(), SCH_FIELD::GetMenuImage(), PAD::GetMsgPanelInfo(), PCB_DIMENSION_BASE::GetMsgPanelInfo(), SCH_FIELD::GetName(), PCB_FIELD::GetName(), SCH_SHEET_PIN::GetParent(), BOARD_ITEM::GetParent(), EDA_ITEM::GetParent(), BOARD_ITEM::GetParentAsString(), SCH_FIELD::GetParentPosition(), SCH_FIELD::GetPosition(), SCH_FIELD::GetShownText(), SCH_FIELD::HitTest(), SCH_FIELD::IsMandatory(), SCH_FIELD::IsReplaceable(), SCH_PIN::IsStacked(), SCH_FIELD::Matches(), EDA_ITEM::operator=(), PAD::operator==(), PAD::PAD(), SCH_FIELD::Plot(), SCH_LABEL_BASE::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(), PCB_SHAPE::swapData(), and PCB_REFERENCE_IMAGE::swapData().
|
protected |
Outline of the zone.
Definition at line 833 of file zone.h.
Referenced by AddPolygon(), AppendCorner(), BuildSmoothedPoly(), CacheTriangulation(), CalculateOutlineArea(), CIterateWithHoles(), GetBoundingBox(), GetCornerPosition(), GetInteractingZones(), GetNumCorners(), GetSelectedCorner(), HatchBorder(), HitTest(), HitTestCutout(), HitTestFilledArea(), HitTestForCorner(), HitTestForEdge(), InitDataFromSrcInCopyCtor(), Iterate(), IterateWithHoles(), Mirror(), Move(), MoveEdge(), NewHole(), Outline(), RemoveAllContours(), RemoveCutout(), Rotate(), SetCornerPosition(), SetOutline(), SetSelectedCorner(), ZONE(), and ~ZONE().
|
protected |
Definition at line 846 of file zone.h.
Referenced by GetAssignedPriority(), HigherPriority(), InitDataFromSrcInCopyCtor(), and SetAssignedPriority().
|
protected |
Placement rule area data.
Definition at line 856 of file zone.h.
Referenced by GetRuleAreaPlacementEnabled(), InitDataFromSrcInCopyCtor(), and SetRuleAreaPlacementEnabled().
|
protected |
Definition at line 858 of file zone.h.
Referenced by GetRuleAreaPlacementSource(), InitDataFromSrcInCopyCtor(), and SetRuleAreaPlacementSource().
|
protected |
Definition at line 857 of file zone.h.
Referenced by GetRuleAreaPlacementSourceType(), InitDataFromSrcInCopyCtor(), and SetRuleAreaPlacementSourceType().
|
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 496 of file eda_item.h.
Referenced by EDA_ITEM::IsType(), EDA_ITEM::operator=(), and EDA_ITEM::Type().
|
protectedinherited |
Not all BOARD_CONNECTED_ITEMs support teardrops, but we want those that do to share a single section in the property inspector.
Definition at line 232 of file board_connected_item.h.
Referenced by BOARD_CONNECTED_ITEM::GetTeardropAllowSpanTwoTracks(), BOARD_CONNECTED_ITEM::GetTeardropBestLengthRatio(), BOARD_CONNECTED_ITEM::GetTeardropBestWidthRatio(), BOARD_CONNECTED_ITEM::GetTeardropCurved(), BOARD_CONNECTED_ITEM::GetTeardropMaxLength(), BOARD_CONNECTED_ITEM::GetTeardropMaxTrackWidth(), BOARD_CONNECTED_ITEM::GetTeardropMaxWidth(), BOARD_CONNECTED_ITEM::GetTeardropParams(), BOARD_CONNECTED_ITEM::GetTeardropPreferZoneConnections(), BOARD_CONNECTED_ITEM::GetTeardropsEnabled(), PAD::ImportSettingsFrom(), BOARD_CONNECTED_ITEM::SetTeardropAllowSpanTwoTracks(), BOARD_CONNECTED_ITEM::SetTeardropBestLengthRatio(), BOARD_CONNECTED_ITEM::SetTeardropBestWidthRatio(), BOARD_CONNECTED_ITEM::SetTeardropCurved(), BOARD_CONNECTED_ITEM::SetTeardropMaxLength(), BOARD_CONNECTED_ITEM::SetTeardropMaxTrackWidth(), BOARD_CONNECTED_ITEM::SetTeardropMaxWidth(), BOARD_CONNECTED_ITEM::SetTeardropPreferZoneConnections(), and BOARD_CONNECTED_ITEM::SetTeardropsEnabled().
|
protected |
Definition at line 864 of file zone.h.
Referenced by GetTeardropAreaType(), HigherPriority(), InitDataFromSrcInCopyCtor(), IsTeardropArea(), and SetTeardropAreaType().
|
protected |
Definition at line 898 of file zone.h.
Referenced by GetThermalReliefGap(), InitDataFromSrcInCopyCtor(), and SetThermalReliefGap().
|
protected |
Definition at line 899 of file zone.h.
Referenced by GetThermalReliefSpokeWidth(), InitDataFromSrcInCopyCtor(), and SetThermalReliefSpokeWidth().
|
inherited |
Definition at line 489 of file eda_item.h.
Referenced by BOARD::Add(), SCH_SYMBOL::AddHierarchicalReference(), RC_ITEM::AddItem(), SCH_EDIT_FRAME::AnnotateSymbols(), FIELDS_EDITOR_GRID_DATA_MODEL::ApplyData(), SCH_SHEET_PATH::CheckForMissingSymbolInstances(), SCH_SHEET_PATH::Cmp(), SCH_ITEM::compare(), SCHEMATIC::ConvertRefsToKIIDs(), MICROWAVE_TOOL::createMicrowaveInductor(), SCH_EDIT_FRAME::CreateScreens(), SCH_LABEL::Deserialize(), SCH_LINE::Deserialize(), FOOTPRINT::Deserialize(), PAD::Deserialize(), PCB_SHAPE::Deserialize(), PCB_TEXT::Deserialize(), PCB_TRACK::Deserialize(), PCB_ARC::Deserialize(), PCB_VIA::Deserialize(), SCH_MARKER::DeserializeFromString(), ZONE_FILLER_TOOL::DirtyZone(), DRAWING_TOOL::DrawVia(), LIB_SYMBOL::Duplicate(), BOARD_ITEM::Duplicate(), FOOTPRINT::Duplicate(), SCH_ITEM::Duplicate(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), FOOTPRINT::DuplicateItem(), PCB_EDIT_FRAME::ExchangeFootprint(), PAD_TOOL::explodePad(), NETLIST_EXPORTER_ALLEGRO::extractComponentsInfo(), SCH_SHEET_LIST::FillItemMap(), BOARD::FillItemMap(), KIGIT_PCB_MERGE::findSetDifferences(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SCH_EDIT_FRAME::FocusOnItem(), SYMBOL_EDIT_FRAME::FocusOnItem(), PCB_IO_KICAD_SEXPR::format(), SCH_IO_KICAD_SEXPR::Format(), SCH_PIN::GetDefaultNetName(), SCH_SHEET_PATH::GetItem(), BOARD::GetItem(), RC_ITEM::GetJsonViolation(), PAD::GetMsgPanelInfo(), DIALOG_BOARD_REANNOTATE::GetNewRefDes(), BOARD_ITEM::GetParentAsString(), SCH_MARKER::GetUUID(), PCB_MARKER::GetUUID(), FIELDS_EDITOR_GRID_DATA_MODEL::GetValue(), FIELDS_EDITOR_GRID_DATA_MODEL::groupMatch(), HigherPriority(), SCH_SHEET_PATH::IsContainedWithin(), PCB_IO_KICAD_LEGACY::loadFOOTPRINT(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), PCB_EDIT_FRAME::LoadFootprints(), SCH_IO_KICAD_LEGACY::loadHierarchy(), PCB_IO_KICAD_LEGACY::loadPCB_TARGET(), PCB_IO_KICAD_LEGACY::loadPCB_TEXT(), EESCHEMA_HELPERS::LoadSchematic(), SCH_IO_ALTIUM::LoadSchematicFile(), SCH_IO_EAGLE::LoadSchematicFile(), SCH_EDIT_FRAME::LoadSheetFromFile(), SYMBOL_EDIT_FRAME::LoadSymbolFromSchematic(), PCB_IO_KICAD_LEGACY::loadTrackList(), NETLIST_EXPORTER_XML::makeSymbols(), SCH_EDIT_FRAME::mapExistingAnnotation(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), BOARD_ITEM::ptr_cmp::operator()(), BOARD::cmp_items::operator()(), BOARD::cmp_drawings::operator()(), PCB_SHAPE::cmp_drawings::operator()(), FOOTPRINT::cmp_drawings::operator()(), CompareByUuid::operator()(), FOOTPRINT::cmp_pads::operator()(), PCB_TRACK::cmp_tracks::operator()(), FOOTPRINT::cmp_zones::operator()(), SCH_SYMBOL::operator<(), PAD::operator==(), SCH_FIELD::operator==(), PAD::PAD(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_TEXT_effects(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), SCH_IO_KICAD_SEXPR_PARSER::parseSchTextBoxContent(), PCB_IO_KICAD_SEXPR_PARSER::parseTextBoxContent(), SCH_EDITOR_CONTROL::Paste(), SCH_SHEET_PATH::PathAsString(), PCB_VIA::PCB_VIA(), processTextItem(), BOARD_COMMIT::Push(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), BOARD::Remove(), SCH_SYMBOL::RemoveInstance(), FIELDS_EDITOR_GRID_DATA_MODEL::RemoveSymbol(), FIELDS_EDITOR_GRID_DATA_MODEL::RenameColumn(), SCH_SCREENS::ReplaceDuplicateTimeStamps(), PCB_IO_KICAD_SEXPR_PARSER::resolveGroups(), SCH_IO_KICAD_SEXPR::saveBitmap(), SCH_IO_KICAD_SEXPR::saveBusEntry(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_IO_KICAD_SEXPR::saveJunction(), SCH_IO_KICAD_SEXPR::saveLine(), SCH_IO_KICAD_SEXPR::saveNoConnect(), SCH_EDIT_FRAME::SaveProject(), SCH_IO_KICAD_SEXPR::saveShape(), SCH_IO_KICAD_LEGACY::saveSheet(), SCH_IO_KICAD_SEXPR::saveSheet(), SCH_IO_KICAD_LEGACY::saveSymbol(), SCH_IO_KICAD_SEXPR::saveSymbol(), SCH_IO_KICAD_SEXPR::saveText(), SCH_IO_KICAD_SEXPR::saveTextBox(), SCH_PIN::SCH_PIN(), SCH_REFERENCE::SCH_REFERENCE(), SCH_SHEET::SCH_SHEET(), SCH_SYMBOL::SCH_SYMBOL(), SCH_LABEL::Serialize(), SCH_LINE::Serialize(), FOOTPRINT::Serialize(), PAD::Serialize(), PCB_SHAPE::Serialize(), PCB_TEXT::Serialize(), PCB_TRACK::Serialize(), PCB_ARC::Serialize(), PCB_VIA::Serialize(), RC_ITEM::SetItems(), SCH_EDITOR_CONTROL::setPastedSymbolInstances(), FIELDS_EDITOR_GRID_DATA_MODEL::SetValue(), PAD::Similarity(), PCB_DIMENSION_BASE::Similarity(), PCB_FIELD::Similarity(), SCH_BUS_ENTRY_BASE::Similarity(), SCH_FIELD::Similarity(), SCH_LABEL_BASE::Similarity(), SCH_TEXT::Similarity(), SCH_BITMAP::Similarity(), SCH_JUNCTION::Similarity(), SCH_LINE::Similarity(), SCH_NO_CONNECT::Similarity(), SCH_PIN::Similarity(), SCH_SHAPE::Similarity(), SCH_TEXTBOX::Similarity(), LIB_SYMBOL::Similarity(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_SYMBOL::SyncOtherUnits(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), testGroupEqual(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), FIELDS_EDITOR_GRID_DATA_MODEL::updateDataStoreSymbolField(), SCH_EDITOR_CONTROL::updatePastedSheet(), SCH_EDITOR_CONTROL::updatePastedSymbol(), SCH_SHEET_LIST::UpdateSymbolInstanceData(), and NETLIST_EXPORTER_ORCADPCB2::WriteNetlist().
|
privateinherited |
Definition at line 171 of file view_item.h.
Referenced by KIGFX::VIEW::Add(), KIGFX::VIEW::OnDestroy(), KIGFX::VIEW::Remove(), KIGFX::VIEW::updateBbox(), KIGFX::VIEW::updateLayers(), and KIGFX::VIEW_ITEM::~VIEW_ITEM().
|
protected |
Definition at line 876 of file zone.h.
Referenced by GetLocalClearance(), InitDataFromSrcInCopyCtor(), and SetLocalClearance().
|
protected |
Definition at line 877 of file zone.h.
Referenced by BuildSmoothedPoly(), GetMinThickness(), InitDataFromSrcInCopyCtor(), and SetMinThickness().
|
protected |
An optional unique name for this zone, used for identifying it in DRC checking.
Definition at line 838 of file zone.h.
Referenced by GetMsgPanelInfo(), GetZoneName(), InitDataFromSrcInCopyCtor(), and SetZoneName().
|
staticinherited |
A value of wxPoint(0,0) which can be passed to the Draw() functions.
Definition at line 180 of file board_item.h.
Referenced by BOARD::GetPosition().