![]() |
KiCad PCB EDA Suite
|
FP_ZONE is a specialization of ZONE for use in footprints. More...
#include <zone.h>
Public Member Functions | |
FP_ZONE (BOARD_ITEM_CONTAINER *aParent) | |
FP_ZONE (const FP_ZONE &aZone) | |
FP_ZONE & | operator= (const FP_ZONE &aOther) |
EDA_ITEM * | Clone () const override |
Create a duplicate of this item with linked list members set to NULL. More... | |
double | ViewGetLOD (int aLayer, KIGFX::VIEW *aView) const override |
Return the level of detail (LOD) of the item. More... | |
bool | IsConnected () const override |
Not all ZONEs are really BOARD_CONNECTED_ITEMs.... More... | |
NETCLASS * | GetNetClass () const override |
Return the NETCLASS for this item. More... | |
wxString | GetNetClassName () const override |
Returns the netclass of the zone. More... | |
void | InitDataFromSrcInCopyCtor (const ZONE &aZone) |
Copy aZone data to me. More... | |
wxPoint | GetPosition () const override |
void | SetPosition (const wxPoint &aPos) override |
void | SetPriority (unsigned aPriority) |
Function SetPriority. More... | |
unsigned | GetPriority () const |
Function GetPriority. More... | |
void | GetMsgPanelInfo (EDA_DRAW_FRAME *aFrame, std::vector< MSG_PANEL_ITEM > &aList) override |
Populate aList of MSG_PANEL_ITEM objects with it's internal state for display purposes. More... | |
void | SetLayerSet (LSET aLayerSet) override |
virtual LSET | GetLayerSet () const override |
Return a std::bitset of all layers on which the item physically resides. More... | |
wxString | GetZoneName () const |
void | SetZoneName (const wxString &aName) |
bool | Matches (const wxFindReplaceData &aSearchData, void *aAuxData) const override |
Compare the item against the search criteria in aSearchData. More... | |
const EDA_RECT | GetBoundingBox () const override |
Function GetBoundingBox (virtual) More... | |
const EDA_RECT | GetCachedBoundingBox () const |
ONLY TO BE USED BY CLIENTS WHICH SET UP THE CACHE! More... | |
void | CacheBoundingBox () |
int | GetLocalClearance (wxString *aSource) const override |
Function GetLocalClearance returns any local clearances set in the "classic" (ie: pre-rule) system. More... | |
int | GetLocalClearance () const |
void | SetLocalClearance (int aClearance) |
bool | IsOnCopperLayer () const override |
Function IsOnCopperLayer. More... | |
bool | CommonLayerExists (const LSET aLayerSet) const |
Function CommonLayerExist Test if this zone shares a common layer with the given layer set. More... | |
virtual void | SetLayer (PCB_LAYER_ID aLayer) override |
Set the layer this item is on. More... | |
virtual PCB_LAYER_ID | GetLayer () const override |
Return the primary layer this item is on. More... | |
virtual bool | IsOnLayer (PCB_LAYER_ID) const override |
Test to see if this object is on the given layer. More... | |
virtual void | ViewGetLayers (int aLayers[], int &aCount) const override |
Return the all the layers within the VIEW the object is painted on. More... | |
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 |
int | GetThermalReliefSpokeWidth (PAD *aPad, wxString *aSource=nullptr) const |
double | CalculateFilledArea () |
Compute the area currently occupied by the zone fill. More... | |
double | GetFilledArea () |
Get the area currently occupied by the zone fill. More... | |
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 (PAD *aPad, wxString *aSource=nullptr) const |
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) |
double | GetHatchOrientation () const |
void | SetHatchOrientation (double 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) |
void | SetSelectedCorner (const wxPoint &aPosition, int aAccuracy) |
int | GetLocalFlags () const |
void | SetLocalFlags (int aFlags) |
ZONE_SEGMENT_FILL & | FillSegments (PCB_LAYER_ID aLayer) |
const ZONE_SEGMENT_FILL & | FillSegments (PCB_LAYER_ID aLayer) const |
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) const override |
Some pad shapes can be complex (rounded/chamfered rectangle), even without considering custom shapes. More... | |
bool | HitTest (const wxPoint &aPosition, int aAccuracy=0) const override |
Function HitTest tests if a point is near an outline edge or a corner of this zone. More... | |
bool | HitTest (const EDA_RECT &aRect, bool aContained=true, int aAccuracy=0) const override |
bool | HitTestFilledArea (PCB_LAYER_ID aLayer, const wxPoint &aRefPos, int aAccuracy=0) const |
Function HitTestFilledArea tests if the given wxPoint is within the bounds of a filled area of this zone. More... | |
bool | HitTestCutout (const VECTOR2I &aRefPos, int *aOutlineIdx=nullptr, int *aHoleIdx=nullptr) const |
Tests if the given point is contained within a cutout of the zone. More... | |
bool | HitTestCutout (const wxPoint &aRefPos, int *aOutlineIdx=nullptr, int *aHoleIdx=nullptr) const |
void | GetInteractingZones (PCB_LAYER_ID aLayer, std::vector< ZONE * > *aZones) 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. More... | |
void | TransformSolidAreasShapesToPolygon (PCB_LAYER_ID aLayer, SHAPE_POLY_SET &aCornerBuffer, int aError=ARC_HIGH_DEF) const |
Function TransformSolidAreasShapesToPolygon 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. More... | |
void | TransformSmoothedOutlineToPolygon (SHAPE_POLY_SET &aCornerBuffer, int aClearance, SHAPE_POLY_SET *aBoardOutline) const |
Function TransformSmoothedOutlineToPolygon 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. More... | |
void | TransformShapeWithClearanceToPolygon (SHAPE_POLY_SET &aCornerBuffer, PCB_LAYER_ID aLayer, int aClearanceValue, int aError, ERROR_LOC aErrorLoc, bool ignoreLineWidth=false) const override |
Function TransformShapeWithClearanceToPolygon Convert the zone shape to a closed polygon Used in filling zones calculations Circles and arcs are approximated by segments. More... | |
bool | HitTestForCorner (const wxPoint &refPos, int aAccuracy, SHAPE_POLY_SET::VERTEX_INDEX &aCornerHit) const |
Function HitTestForCorner tests if the given wxPoint is near a corner. More... | |
bool | HitTestForCorner (const wxPoint &refPos, int aAccuracy) const |
Function HitTestForCorner tests if the given wxPoint is near a corner. More... | |
bool | HitTestForEdge (const wxPoint &refPos, int aAccuracy, SHAPE_POLY_SET::VERTEX_INDEX &aCornerHit) const |
Function HitTestForEdge tests if the given wxPoint is near a segment defined by 2 corners. More... | |
bool | HitTestForEdge (const wxPoint &refPos, int aAccuracy) const |
Function HitTestForEdge tests if the given wxPoint is near a segment defined by 2 corners. More... | |
bool | UnFill () |
Function UnFill Removes the zone filling. More... | |
void | Move (const wxPoint &offset) override |
Function Move Move the outlines. More... | |
void | Move (const VECTOR2I &aMoveVector) |
void | MoveEdge (const wxPoint &offset, int aEdge) |
Function MoveEdge Move the outline Edge. More... | |
void | Rotate (const wxPoint &aCentre, double aAngle) override |
Function Rotate Move the outlines. More... | |
void | Rotate (const VECTOR2I &aRotCentre, double aAngle) |
virtual void | Flip (const wxPoint &aCentre, bool aFlipLeftRight) override |
Function Flip Flip this object, i.e. More... | |
void | Flip (const VECTOR2I &aCentre, bool aFlipLeftRight) |
void | Mirror (const wxPoint &aMirrorRef, bool aMirrorLeftRight) |
Function Mirror Mirror the outlines , relative to a given horizontal axis the layer is not changed. More... | |
wxString | GetClass () const override |
Function GetClass returns the class name. More... | |
int | GetNumCorners (void) const |
Access to m_Poly parameters. More... | |
SHAPE_POLY_SET::ITERATOR | Iterate () |
Function Iterate returns an iterator to visit all points of the zone's main outline without holes. More... | |
SHAPE_POLY_SET::ITERATOR | IterateWithHoles () |
Function IterateWithHoles returns an iterator to visit all points of the zone's main outline with holes. More... | |
SHAPE_POLY_SET::CONST_ITERATOR | CIterateWithHoles () const |
Function CIterateWithHoles returns an iterator to visit all points of the zone's main outline with holes. More... | |
void | RemoveAllContours (void) |
const VECTOR2I & | GetCornerPosition (int aCornerIndex) const |
void | SetCornerPosition (int aCornerIndex, wxPoint new_pos) |
void | NewHole () |
Function NewHole creates a new hole on the zone; i.e., a new contour on the zone's outline. More... | |
bool | AppendCorner (wxPoint aPosition, int aHoleIdx, bool aAllowDuplication=false) |
Add a new corner to the zone outline (to the main outline or a hole) More... | |
ZONE_BORDER_DISPLAY_STYLE | GetHatchStyle () const |
void | SetHatchStyle (ZONE_BORDER_DISPLAY_STYLE aStyle) |
bool | IsSame (const ZONE &aZoneToCompare) |
Function IsSame tests if 2 zones are equivalent: 2 zones are equivalent if they have same parameters and same outlines info, filling is not taken into account. More... | |
void | ClearFilledPolysList () |
Function ClearFilledPolysList clears the list of filled polygons. More... | |
bool | HasFilledPolysForLayer (PCB_LAYER_ID aLayer) const |
const SHAPE_POLY_SET & | GetFilledPolysList (PCB_LAYER_ID aLayer) const |
Function GetFilledPolysList returns a reference to the list of filled polygons. More... | |
void | CacheTriangulation (PCB_LAYER_ID aLayer=UNDEFINED_LAYER) |
(re)create a list of triangles that "fill" the solid areas. More... | |
void | SetFilledPolysList (PCB_LAYER_ID aLayer, const SHAPE_POLY_SET &aPolysList) |
Function SetFilledPolysList sets the list of filled polygons. More... | |
void | SetRawPolysList (PCB_LAYER_ID aLayer, const SHAPE_POLY_SET &aPolysList) |
Function SetFilledPolysList sets the list of filled polygons. More... | |
bool | IsIsland (PCB_LAYER_ID aLayer, int aPolyIdx) const |
Checks if a given filled polygon is an insulated island. More... | |
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 |
Function GetSmoothedPoly. More... | |
void | SetCornerSmoothingType (int aType) |
int | GetCornerSmoothingType () const |
void | SetCornerRadius (unsigned int aRadius) |
unsigned int | GetCornerRadius () const |
bool | GetFilledPolysUseThickness () const |
bool | GetFilledPolysUseThickness (PCB_LAYER_ID aLayer) const |
int | GetFillVersion () const |
void | SetFillVersion (int aVersion) |
void | RemoveCutout (int aOutlineIdx, int aHoleIdx) |
Remove a cutout from the zone. More... | |
void | AddPolygon (std::vector< wxPoint > &aPolygon) |
add a polygon to the zone outline if the zone outline is empty, this is the main outline else it is a hole inside the main outline More... | |
void | AddPolygon (const SHAPE_LINE_CHAIN &aPolygon) |
void | SetFillSegments (PCB_LAYER_ID aLayer, const ZONE_SEGMENT_FILL &aSegments) |
SHAPE_POLY_SET & | RawPolysList (PCB_LAYER_ID aLayer) |
wxString | GetSelectMenuText (EDA_UNITS aUnits) const override |
Return the text to display to be used in the selection clarification context menu when multiple items are found at the current cursor position. More... | |
BITMAP_DEF | GetMenuImage () const override |
Return a pointer to an image to be used in menus. More... | |
bool | GetIsRuleArea () const |
Accessors to parameters used in Rule Area zones: More... | |
bool | GetDoNotAllowCopperPour () const |
bool | GetDoNotAllowVias () const |
bool | GetDoNotAllowTracks () const |
bool | GetDoNotAllowPads () const |
bool | GetDoNotAllowFootprints () const |
void | SetIsRuleArea (bool aEnable) |
void | SetDoNotAllowCopperPour (bool aEnable) |
void | SetDoNotAllowVias (bool aEnable) |
void | SetDoNotAllowTracks (bool aEnable) |
void | SetDoNotAllowPads (bool aEnable) |
void | SetDoNotAllowFootprints (bool aEnable) |
const 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. More... | |
void | SetBorderDisplayStyle (ZONE_BORDER_DISPLAY_STYLE aHatchStyle, int aHatchPitch, bool aRebuildHatch) |
Function SetBorderDisplayStyle sets all hatch parameters for the zone. More... | |
void | SetHatchPitch (int aPitch) |
Function SetHatchPitch sets the hatch pitch parameter for the zone. More... | |
void | UnHatchBorder () |
Function UnHatchBorder clears the zone's hatch. More... | |
void | HatchBorder () |
Function HatchBorder computes the hatch lines depending on the hatch parameters and stores it in the zone's attribute m_borderHatchLines. More... | |
const std::vector< SEG > & | GetHatchLines () const |
bool | GetHV45 () const |
void | SetHV45 (bool aConstrain) |
void | BuildHashValue (PCB_LAYER_ID aLayer) |
Build the hash value of m_FilledPolysList, and store it internally in m_filledPolysHash. More... | |
MD5_HASH | GetHashValue (PCB_LAYER_ID aLayer) |
virtual void | SwapData (BOARD_ITEM *aImage) override |
Swap data between aItem and aImage. More... | |
NETINFO_ITEM * | GetNet () const |
Return #NET_INFO object for a given item. More... | |
void | SetNet (NETINFO_ITEM *aNetInfo) |
Set a NET_INFO object for the item. More... | |
int | GetNetCode () const |
bool | SetNetCode (int aNetCode, bool aNoAssert) |
Set net using a net code. More... | |
void | SetNetCode (int aNetCode) |
wxString | GetNetname () const |
wxString | GetNetnameMsg () const |
wxString | GetShortNetname () const |
virtual int | GetOwnClearance (PCB_LAYER_ID aLayer, wxString *aSource=nullptr) const |
Return an item's "own" clearance in internal units. More... | |
virtual int | GetLocalClearanceOverrides (wxString *aSource) const |
Return any local clearance overrides set in the "classic" (ie: pre-rule) system. More... | |
virtual NETCLASS * | GetEffectiveNetclass () const |
Return the NETCLASS for this item, or the default netclass if none is defined. More... | |
void | SetLocalRatsnestVisible (bool aVisible) |
bool | GetLocalRatsnestVisible () const |
void | SetParentGroup (PCB_GROUP *aGroup) |
PCB_GROUP * | GetParentGroup () const |
int | GetX () const |
int | GetY () const |
virtual wxPoint | GetCenter () const |
This defaults to the center of the bounding box if not overridden. More... | |
void | SetX (int aX) |
void | SetY (int aY) |
BOARD_ITEM_CONTAINER * | GetParent () const |
virtual BOARD_ITEM * | Duplicate () const |
Create a copy of a of this BOARD_ITEM. More... | |
bool | IsTrack () const |
Test to see if this object is a track or via (or microvia). More... | |
virtual bool | IsLocked () const |
virtual void | SetLocked (bool aLocked) |
Modify the 'lock' status for of the item. More... | |
void | DeleteStructure () |
Delete this object after removing from its parent if it has one. More... | |
virtual BOARD * | GetBoard () const |
Return the BOARD in which this BOARD_ITEM resides, or NULL if none. More... | |
wxString | GetLayerName () const |
Return the name of the PCB layer on which the item resides. More... | |
KICAD_T | Type () const |
Returns the type of object. More... | |
virtual void | SetParent (EDA_ITEM *aParent) |
bool | IsModified () const |
bool | IsNew () const |
bool | IsMoving () const |
bool | IsDragging () const |
bool | IsWireImage () const |
bool | IsSelected () const |
bool | IsEntered () const |
bool | IsResized () const |
bool | IsBrightened () const |
void | SetWireImage () |
void | SetSelected () |
void | SetBrightened () |
void | ClearSelected () |
void | ClearBrightened () |
void | SetModified () |
int | GetState (int type) const |
void | SetState (int type, bool state) |
STATUS_FLAGS | GetStatus () const |
void | SetStatus (STATUS_FLAGS aStatus) |
void | SetFlags (STATUS_FLAGS aMask) |
void | ClearFlags (STATUS_FLAGS aMask=EDA_ITEM_ALL_FLAGS) |
STATUS_FLAGS | GetFlags () const |
bool | HasFlag (STATUS_FLAGS aFlag) const |
STATUS_FLAGS | GetEditFlags () const |
void | ClearTempFlags () |
void | ClearEditFlags () |
virtual bool | IsType (const KICAD_T aScanTypes[]) const |
Check whether the item is one of the listed types. More... | |
void | SetForceVisible (bool aEnable) |
Set and clear force visible flag used to force the item to be drawn even if it's draw attribute is set to not visible. More... | |
bool | IsForceVisible () const |
virtual const wxPoint | GetFocusPosition () const |
Similar to GetPosition, but allows items to return their visual center rather than their anchor. More... | |
virtual SEARCH_RESULT | Visit (INSPECTOR inspector, void *testData, const KICAD_T scanTypes[]) |
May be re-implemented for each derived class in order to handle all the types given by its member data. More... | |
virtual bool | Replace (const wxFindReplaceData &aSearchData, void *aAuxData=nullptr) |
Perform a text replace using the find and replace criteria in aSearchData on items that support text find and replace. More... | |
virtual bool | IsReplaceable () const |
Override this method in any derived object that supports test find and replace. More... | |
bool | operator< (const EDA_ITEM &aItem) const |
Test if another item is less than this object. More... | |
virtual const BOX2I | ViewBBox () const override |
Return the bounding box of the item covering all its layers. More... | |
virtual void | ViewDraw (int aLayer, VIEW *aView) const |
Draw the parts of the object belonging to layer aLayer. More... | |
VIEW_ITEM_DATA * | viewPrivData () const |
void | ClearViewPrivData () |
bool | Set (PROPERTY_BASE *aProperty, wxAny &aValue) |
template<typename T > | |
bool | Set (PROPERTY_BASE *aProperty, T aValue) |
template<typename T > | |
bool | Set (const wxString &aProperty, T aValue) |
wxAny | Get (PROPERTY_BASE *aProperty) |
template<typename T > | |
T | Get (PROPERTY_BASE *aProperty) |
template<typename T > | |
boost::optional< T > | Get (const wxString &aProperty) |
Static Public Member Functions | |
static bool | ClassOf (const EDA_ITEM *aItem) |
static int | GetDefaultHatchPitch () |
Function GetDefaultHatchPitchMils. More... | |
static wxString | ShowShape (PCB_SHAPE_TYPE_T aShape) |
Convert the enum PCB_SHAPE_TYPE_T integer value to a wxString. More... | |
template<class T > | |
static SEARCH_RESULT | IterateForward (std::deque< T > &aList, INSPECTOR inspector, void *testData, const KICAD_T scanTypes[]) |
This changes first parameter to avoid the DList and use the main queue instead. More... | |
template<class T > | |
static SEARCH_RESULT | IterateForward (std::vector< T > &aList, INSPECTOR inspector, void *testData, const KICAD_T scanTypes[]) |
Change first parameter to avoid the DList and use std::vector instead. More... | |
static bool | Replace (const wxFindReplaceData &aSearchData, wxString &aText) |
Perform a text replace on aText using the find and replace criteria in aSearchData on items that support text find and replace. More... | |
static bool | Sort (const EDA_ITEM *aLeft, const EDA_ITEM *aRight) |
Helper function to be used by the C++ STL sort algorithm for sorting a STL container of EDA_ITEM pointers. More... | |
Public Attributes | |
const KIID | m_Uuid |
Static Public Attributes | |
static wxPoint | ZeroOffset |
A value of wxPoint(0,0) which can be passed to the Draw() functions. More... | |
Protected Member Functions | |
bool | Matches (const wxString &aText, const wxFindReplaceData &aSearchData) const |
Compare aText against search criteria in aSearchData. More... | |
virtual wxString | layerMaskDescribe () const |
Return a string (to be shown to the user) describing a layer mask. More... | |
Protected Attributes | |
SHAPE_POLY_SET * | m_Poly |
Outline of the zone. More... | |
int | m_cornerSmoothingType |
unsigned int | m_cornerRadius |
wxString | m_zoneName |
An optional unique name for this zone, used for identifying it in DRC checking. More... | |
LSET | m_layerSet |
unsigned | m_priority |
bool | m_isRuleArea |
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. More... | |
bool | m_isFilled |
True when a zone was filled, false after deleting the filled areas. More... | |
bool | m_needRefill |
False when a zone was refilled, true after changes in zone params. More... | |
int | m_thermalReliefGap |
int | m_thermalReliefSpokeWidth |
ZONE_FILL_MODE | m_fillMode |
How to fill areas: ZONE_FILL_MODE::POLYGONS => use solid polygons ZONE_FILL_MODE::HATCH_PATTERN => use a grid pattern as shape. More... | |
int | m_hatchThickness |
int | m_hatchGap |
double | 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. More... | |
int | m_localFlgs |
std::map< PCB_LAYER_ID, ZONE_SEGMENT_FILL > | m_FillSegmList |
Segments used to fill the zone (#m_FillMode ==1 ), when fill zone by segment is used. More... | |
std::map< PCB_LAYER_ID, SHAPE_POLY_SET > | m_FilledPolysList |
std::map< PCB_LAYER_ID, SHAPE_POLY_SET > | m_RawPolysList |
EDA_RECT | m_bboxCache |
Temp variables used while filling. More... | |
std::map< PCB_LAYER_ID, bool > | m_fillFlags |
std::map< PCB_LAYER_ID, MD5_HASH > | m_filledPolysHash |
A hash value used in zone filling calculations to see if the filled areas are up to date. More... | |
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. More... | |
bool | m_hv45 |
double | m_area |
std::mutex | m_lock |
Lock used for multi-threaded filling on multi-layer zones. More... | |
NETINFO_ITEM * | m_netinfo |
Store all information about the net that item belongs to. More... | |
PCB_LAYER_ID | m_layer |
PCB_GROUP * | m_group |
STATUS_FLAGS | m_status |
EDA_ITEM * | m_parent |
Linked list: Link (parent struct) More... | |
bool | m_forceVisible |
STATUS_FLAGS | m_flags |
FP_ZONE::FP_ZONE | ( | BOARD_ITEM_CONTAINER * | aParent | ) |
Definition at line 1319 of file zone.cpp.
References BOARD_CONNECTED_ITEM::SetNetCode().
Referenced by Clone().
FP_ZONE::FP_ZONE | ( | const FP_ZONE & | aZone | ) |
Definition at line 1328 of file zone.cpp.
References ZONE::InitDataFromSrcInCopyCtor().
|
inherited |
add a polygon to the zone outline if the zone outline is empty, this is the main outline else it is a hole inside the main outline
Definition at line 815 of file zone.cpp.
References SHAPE_LINE_CHAIN::Append(), and SHAPE_LINE_CHAIN::SetClosed().
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::getZoneFromCadstarShape(), and EAGLE_PLUGIN::loadPolygon().
|
inherited |
Definition at line 801 of file zone.cpp.
References SHAPE_POLY_SET::AddHole(), SHAPE_POLY_SET::AddOutline(), SHAPE_LINE_CHAIN::IsClosed(), ZONE::m_Poly, SHAPE_POLY_SET::OutlineCount(), and ZONE::SetNeedRefill().
|
inherited |
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 832 of file zone.cpp.
References SHAPE_POLY_SET::Append(), SHAPE_POLY_SET::HoleCount(), ZONE::m_Poly, SHAPE_POLY_SET::NewOutline(), SHAPE_POLY_SET::OutlineCount(), and ZONE::SetNeedRefill().
Referenced by BOARD::AddArea(), PCAD2KICAD::PCB_POLYGON::AddToBoard(), EAGLE_PLUGIN::loadPlain(), EAGLE_PLUGIN::packageCircle(), EAGLE_PLUGIN::packageRectangle(), and ALTIUM_PCB::ParseFills6Data().
|
inherited |
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 388 of file zone.cpp.
References g_nullPoly, SHAPE_POLY_SET::GetHash(), ZONE::m_filledPolysHash, and ZONE::m_FilledPolysList.
|
inherited |
Function GetSmoothedPoly.
Definition at line 1161 of file zone.cpp.
References SHAPE_POLY_SET::BooleanAdd(), SHAPE_POLY_SET::BooleanIntersection(), SHAPE_POLY_SET::Deflate(), EDGE_CLEARANCE_CONSTRAINT, BOARD_ITEM::GetBoard(), BOARD::GetDesignSettings(), ZONE::GetInteractingZones(), ZONE::GetIsRuleArea(), ZONE::GetNumCorners(), SHAPE_POLY_SET::Inflate(), ZONE::IsOnCopperLayer(), ZONE::m_cornerRadius, ZONE::m_cornerSmoothingType, BOARD_DESIGN_SETTINGS::m_DRCEngine, BOARD_DESIGN_SETTINGS::m_MaxError, ZONE::m_Poly, ZONE::m_ZoneClearance, BOARD_DESIGN_SETTINGS::m_ZoneKeepExternalFillets, ZONE::m_ZoneMinThickness, MINOPTMAX< T >::Min(), SHAPE_POLY_SET::PM_FAST, SHAPE_POLY_SET::PM_STRICTLY_SIMPLE, ZONE_SETTINGS::SMOOTHING_CHAMFER, ZONE_SETTINGS::SMOOTHING_FILLET, and DRC_CONSTRAINT::Value().
Referenced by ZONE_FILLER::fillSingleZone(), and ZONE::TransformSmoothedOutlineToPolygon().
|
inlineinherited |
Definition at line 149 of file zone.h.
References ZONE::GetBoundingBox(), and ZONE::m_bboxCache.
Referenced by PNS_KICAD_IFACE_BASE::syncZone().
|
inherited |
(re)create a list of triangles that "fill" the solid areas.
used for instance to draw these solid areas on opengl
Definition at line 1104 of file zone.cpp.
References ZONE::m_FilledPolysList, and UNDEFINED_LAYER.
|
inherited |
Compute the area currently occupied by the zone fill.
Definition at line 1262 of file zone.cpp.
References SHAPE_LINE_CHAIN::Area(), SHAPE_POLY_SET::Hole(), SHAPE_POLY_SET::HoleCount(), ZONE::m_area, ZONE::m_FilledPolysList, SHAPE_POLY_SET::Outline(), and SHAPE_POLY_SET::OutlineCount().
|
inlineinherited |
Function CIterateWithHoles returns an iterator to visit all points of the zone's main outline with holes.
Definition at line 560 of file zone.h.
References SHAPE_POLY_SET::CIterateWithHoles(), and ZONE::m_Poly.
Referenced by PCB_IO::format().
|
inlinestaticinherited |
|
inlineinherited |
Definition at line 182 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::ClearFlags().
Referenced by GERBVIEW_SELECTION_TOOL::disambiguationMenu(), PCB_BASE_FRAME::FocusOnItem(), SCH_EDIT_FRAME::FocusOnItem(), PL_SELECTION_TOOL::unhighlight(), EE_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
|
inlineinherited |
Definition at line 221 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and EDA_ITEM::GetEditFlags().
Referenced by FOOTPRINT::Add(), BOARD::Add(), SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), SYMBOL_EDITOR_DRAWING_TOOLS::DrawShape(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), PL_DRAWING_TOOLS::PlaceItem(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_BASE_EDIT_FRAME::SaveCopyInUndoList(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
|
inlineinherited |
Function ClearFilledPolysList clears the list of filled polygons.
Definition at line 636 of file zone.h.
References ZONE::m_FilledPolysList, and ZONE::m_insulatedIslands.
Referenced by PCB_POINT_EDITOR::updateItem().
|
inlineinherited |
Definition at line 203 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), PNS_KICAD_IFACE::AddItem(), SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), SCH_MOVE_TOOL::AlignElements(), FOOTPRINT::BuildPolyCourtyards(), EDA_ITEM::ClearBrightened(), EDA_ITEM::ClearEditFlags(), EDA_ITEM::ClearSelected(), EDA_ITEM::ClearTempFlags(), ConvertOutlineToPolygon(), SCH_EDIT_FRAME::ConvertPart(), SYMBOL_EDITOR_EDIT_TOOL::Copy(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), SYMBOL_EDITOR_PIN_TOOL::CreateImagePins(), MICROWAVE_TOOL::createMicrowaveInductor(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), KIGFX::SCH_PAINTER::draw(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), SCH_ITEM::Duplicate(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_SELECTION_TOOL::ExitGroup(), SYMBOL_EDIT_FRAME::GetSymbolFromRedoList(), SYMBOL_EDIT_FRAME::GetSymbolFromUndoList(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromBoard(), FOOTPRINT_EDIT_FRAME::LoadFootprintFromLibrary(), EE_SELECTION_TOOL::Main(), EE_SELECTION_TOOL::narrowSelection(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), FOOTPRINT_EDIT_FRAME::OpenProjectFiles(), PCB_BASE_FRAME::PlaceFootprint(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), DRAWING_TOOL::PlaceText(), BOARD_COMMIT::Push(), PCB_SELECTION_TOOL::RebuildSelection(), SCH_EDIT_TOOL::RepeatDrawItem(), SYMBOL_EDITOR_PIN_TOOL::RepeatPin(), SYMBOL_EDIT_FRAME::RollbackSymbolFromUndo(), SCH_EDIT_FRAME::SaveCopyForRepeatItem(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_SEXPR_PLUGIN_CACHE::savePin(), SCH_EDIT_FRAME::SelectUnit(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_PAD_PROPERTIES::TransferDataFromWindow(), and SCH_DRAWING_TOOLS::TwoClickPlace().
|
inlineinherited |
Definition at line 181 of file eda_item.h.
References EDA_ITEM::ClearFlags(), and SELECTED.
Referenced by PCB_POINT_EDITOR::addCorner(), EDIT_TOOL::Duplicate(), ARRAY_CREATOR::Invoke(), LIB_PART::LIB_PART(), EE_TOOL_BASE< SCH_BASE_FRAME >::saveCopyInUndoList(), PL_SELECTION_TOOL::unhighlight(), EE_SELECTION_TOOL::unhighlight(), PCB_SELECTION_TOOL::unhighlightInternal(), and GERBVIEW_SELECTION_TOOL::unselectVisually().
|
inlineinherited |
Definition at line 215 of file eda_item.h.
References CANDIDATE, EDA_ITEM::ClearFlags(), DO_NOT_DRAW, ENDPOINT, IS_LINKED, SKIP_STRUCT, STARTPOINT, and TEMP_SELECTED.
Referenced by SCH_EDIT_FRAME::PutDataInPreviousState().
|
inlineinherited |
Definition at line 148 of file view_item.h.
References KIGFX::VIEW_ITEM::m_viewPrivData.
Referenced by KIGFX::VIEW::OnDestroy().
|
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 ZONE.
Definition at line 1342 of file zone.cpp.
References FP_ZONE().
|
inherited |
Function CommonLayerExist Test if this zone shares a common layer with the given layer set.
Definition at line 227 of file zone.cpp.
References ZONE::GetLayerSet().
|
inherited |
Delete this object after removing from its parent if it has one.
Definition at line 113 of file board_item.cpp.
References BOARD_ITEM::GetParent(), and BOARD_ITEM_CONTAINER::Remove().
Referenced by BOARD::PadDelete(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow().
|
inlinevirtualinherited |
Create a copy of a of this BOARD_ITEM.
Reimplemented in FOOTPRINT.
Definition at line 202 of file board_item.h.
References EDA_ITEM::Clone(), and EDA_ITEM::m_Uuid.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::addAttribute(), PCB_GROUP::DeepDuplicate(), KIGFX::PCB_PAINTER::draw(), CADSTAR_PCB_ARCHIVE_LOADER::drawCadstarText(), EDIT_TOOL::Duplicate(), and ARRAY_CREATOR::Invoke().
|
inlineinherited |
Definition at line 311 of file zone.h.
References ZONE::m_FillSegmList.
Referenced by PCB_IO::format().
|
inlineinherited |
Definition at line 317 of file zone.h.
References ZONE::m_FillSegmList.
|
inlineinherited |
Definition at line 315 of file board_item.h.
References BOARD_ITEM::Flip(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
overridevirtualinherited |
Function Flip Flip this object, i.e.
change the board side for this object (like Mirror() but changes layer)
aCentre | - the rotation point. |
Reimplemented from BOARD_ITEM.
Definition at line 729 of file zone.cpp.
References FlipLayer(), FlipLayerMask(), BOARD_ITEM::GetBoard(), BOARD::GetCopperLayerCount(), ZONE::GetIsRuleArea(), ZONE::GetLayer(), ZONE::GetLayerSet(), ZONE::Mirror(), ZONE::SetLayer(), and ZONE::SetLayerSet().
|
inlineinherited |
Definition at line 84 of file inspectable.h.
References PROPERTY_BASE::getter(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
Referenced by CLASS_D_DESC::CLASS_D_DESC(), PCB_EXPR_VAR_REF::GetValue(), and PAD_DESC::PAD_DESC().
|
inlineinherited |
Definition at line 93 of file inspectable.h.
References PROPERTY_BASE::get(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 102 of file inspectable.h.
References PROPERTY_BASE::get(), PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
virtualinherited |
Return the BOARD in which this BOARD_ITEM resides, or NULL if none.
Definition at line 46 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD_ITEM::GetParent(), NULL, PCB_T, and EDA_ITEM::Type().
Referenced by PAD::BuildEffectivePolygon(), PAD::BuildEffectiveShapes(), ZONE::BuildSmoothedPoly(), KIGFX::PCB_PAINTER::draw(), exprFromTo(), VIA::FlashLayer(), PAD::FlashLayer(), PCB_TARGET::Flip(), PCB_TEXT::Flip(), TRACK::Flip(), FP_SHAPE::Flip(), FP_TEXT::Flip(), DIMENSION_BASE::Flip(), ARC::Flip(), PCB_SHAPE::Flip(), VIA::Flip(), ZONE::Flip(), BOARD_ITEM::GetBoard(), FOOTPRINT::GetBoundingBox(), FOOTPRINT::GetBoundingHull(), BOARD_CONNECTED_ITEM::GetEffectiveNetclass(), ZONE::GetInteractingZones(), BOARD_ITEM::GetLayerName(), VIA::GetMinAnnulus(), PCB_DRAW_PANEL_GAL::GetMsgPanelInfo(), ZONE::GetMsgPanelInfo(), NETINFO_ITEM::GetMsgPanelInfo(), TRACK::GetMsgPanelInfo(), TRACK::GetMsgPanelInfoBase_Common(), BOARD_CONNECTED_ITEM::GetNetClass(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), BOARD_CONNECTED_ITEM::GetOwnClearance(), ZONE::GetSelectMenuText(), DRC_ENGINE::GetShape(), FP_TEXT::GetShownText(), PAD::GetSolderMaskMargin(), PAD::GetSolderPasteMargin(), BOARD::GetTrackLength(), TRACK::GetWidthConstraints(), insideArea(), insideCourtyard(), isDiffPair(), BOARD_ITEM::layerMaskDescribe(), VIA::layerMaskDescribe(), CONVERT_TOOL::makePolysFromCircles(), PAD::MergePrimitivesAsPolygon(), EAGLE_PLUGIN::packageWire(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), BOARD::ResolveDRCExclusions(), BOARD_CONNECTED_ITEM::SetNetCode(), DIALOG_FOOTPRINT_FP_EDITOR::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), ZONE::TransformSmoothedOutlineToPolygon(), ZONE::TransformSolidAreasShapesToPolygon(), TRACK::ViewBBox(), FOOTPRINT::ViewBBox(), VIA::ViewGetLOD(), and PAD::ViewGetLOD().
|
inherited |
HatchBorder related methods.
Function GetBorderHatchPitch
Definition at line 886 of file zone.cpp.
References ZONE::m_borderHatchPitch.
Referenced by PCB_IO::format().
|
overridevirtualinherited |
Function GetBoundingBox (virtual)
Reimplemented from EDA_ITEM.
Definition at line 319 of file zone.cpp.
References SHAPE_POLY_SET::BBox(), and ZONE::m_Poly.
Referenced by ZONE::CacheBoundingBox(), ZONE::HitTest(), FABMASTER::orderZones(), and ALTIUM_PCB::ParsePolygons6Data().
|
inlineinherited |
ONLY TO BE USED BY CLIENTS WHICH SET UP THE CACHE!
Definition at line 148 of file zone.h.
References ZONE::m_bboxCache.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), ZONE_FILLER::buildCopperItemClearances(), ZONE_FILLER::buildThermalSpokes(), ZONE_FILLER::Fill(), hasThermalConnection(), and ZONE_FILLER::subtractHigherPriorityZones().
|
inlinevirtualinherited |
This defaults to the center of the bounding box if not overridden.
Reimplemented in ARC, PAD, PCB_SHAPE, and PCB_MARKER.
Definition at line 114 of file board_item.h.
References EDA_ITEM::GetBoundingBox(), and EDA_RECT::GetCenter().
Referenced by PCB_GRID_HELPER::computeAnchors(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersVertically(), and getDrilledHoleShape().
|
inlineoverridevirtualinherited |
|
inlineinherited |
Definition at line 570 of file zone.h.
References SHAPE_POLY_SET::CVertex(), SHAPE_POLY_SET::GetRelativeIndices(), and ZONE::m_Poly.
Referenced by ZONE::GetPosition().
|
inlineinherited |
Definition at line 710 of file zone.h.
References ZONE::m_cornerRadius.
Referenced by PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 706 of file zone.h.
References ZONE::m_cornerSmoothingType.
Referenced by PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
staticinherited |
Function GetDefaultHatchPitchMils.
Definition at line 1084 of file zone.cpp.
Referenced by PCAD2KICAD::PCB_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), EAGLE_PLUGIN::loadPlain(), LEGACY_PLUGIN::loadZONE_CONTAINER(), EAGLE_PLUGIN::packageCircle(), EAGLE_PLUGIN::packagePolygon(), EAGLE_PLUGIN::packageRectangle(), ALTIUM_PCB::ParseArcs6Data(), ALTIUM_PCB::ParseFills6Data(), ALTIUM_PCB::ParsePolygons6Data(), ALTIUM_PCB::ParseShapeBasedRegions6Data(), ALTIUM_PCB::ParseTracks6Data(), PCB_PARSER::parseZONE(), and ZONE::ZONE().
|
inlineinherited |
Definition at line 756 of file zone.h.
References ZONE::m_doNotAllowCopperPour.
Referenced by PCB_IO::format(), ZONE::GetMsgPanelInfo(), isKeepoutZone(), ZONE::IsSame(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 760 of file zone.h.
References ZONE::m_doNotAllowFootprints.
Referenced by PCB_IO::format(), ZONE::GetMsgPanelInfo(), isKeepoutZone(), ZONE::IsSame(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 759 of file zone.h.
References ZONE::m_doNotAllowPads.
Referenced by PCB_IO::format(), ZONE::GetMsgPanelInfo(), isKeepoutZone(), ZONE::IsSame(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 758 of file zone.h.
References ZONE::m_doNotAllowTracks.
Referenced by PCB_IO::format(), DSN::SPECCTRA_DB::FromBOARD(), ZONE::GetMsgPanelInfo(), isKeepoutZone(), ZONE::IsSame(), ZONE_SETTINGS::operator<<(), and PNS_KICAD_IFACE_BASE::syncZone().
|
inlineinherited |
Definition at line 757 of file zone.h.
References ZONE::m_doNotAllowVias.
Referenced by PCB_IO::format(), DSN::SPECCTRA_DB::FromBOARD(), ZONE::GetMsgPanelInfo(), isKeepoutZone(), ZONE::IsSame(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 207 of file eda_item.h.
References IS_DRAGGED, IS_MOVED, IS_NEW, IS_PASTED, IS_RESIZED, IS_WIRE_IMAGE, EDA_ITEM::m_flags, and STRUCT_DELETED.
Referenced by SCH_EDIT_TOOL::ChangeTextType(), EDA_ITEM::ClearEditFlags(), SCH_EDIT_FRAME::DeleteJunction(), SCH_EDIT_TOOL::editFieldText(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), SCH_EDITOR_CONTROL::EditWithSymbolEditor(), SCH_COMPONENT::GetMsgPanelInfo(), SELECTION_CONDITIONS::Idle(), SELECTION_CONDITIONS::IdleSelection(), SYMBOL_EDITOR_MOVE_TOOL::Main(), PCB_POINT_EDITOR::OnSelectionChange(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), SCH_EDIT_TOOL::Properties(), PAD_TOOL::recombinePad(), SCH_EDIT_FRAME::SchematicCleanUp(), SCH_EDIT_FRAME::SelectUnit(), DIALOG_DIMENSION_PROPERTIES::TransferDataFromWindow(), DIALOG_TARGET_PROPERTIES::TransferDataFromWindow(), DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow(), DIALOG_TEXT_PROPERTIES::TransferDataFromWindow(), DIALOG_LABEL_EDITOR::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow().
|
virtualinherited |
Return the NETCLASS for this item, or the default netclass if none is defined.
Definition at line 69 of file board_connected_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD_DESIGN_SETTINGS::GetDefault(), BOARD::GetDesignSettings(), BOARD_CONNECTED_ITEM::GetNetClass(), NETINFO_ITEM::GetNetCode(), and BOARD_CONNECTED_ITEM::m_netinfo.
|
overridevirtualinherited |
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. |
Reimplemented from BOARD_ITEM.
Definition at line 1372 of file zone.cpp.
References ZONE::m_FilledPolysList.
|
inlineinherited |
Get the area currently occupied by the zone fill.
This area is cached from the most recent call to CalculateFilledArea().
Definition at line 221 of file zone.h.
References ZONE::m_area.
|
inlineinherited |
Function GetFilledPolysList returns a reference to the list of filled polygons.
Definition at line 655 of file zone.h.
References ZONE::m_FilledPolysList.
Referenced by CN_LIST::Add(), 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(), CN_CONNECTIVITY_ALGO::FindIsolatedCopperIslands(), PCB_IO::format(), and CN_ZONE_LAYER::GetAnchor().
|
inlineinherited |
Definition at line 712 of file zone.h.
References ZONE::m_fillVersion.
Referenced by BOARD_ADAPTER::addSolidAreasShapes(), CN_VISITOR::checkZoneZoneConnection(), ZONE_FILLER::computeRawFilledArea(), CN_ZONE_LAYER::ContainsPoint(), KIGFX::PCB_PAINTER::draw(), ZONE_FILLER::fillSingleZone(), PCB_IO::format(), ZONE::GetFilledPolysUseThickness(), ALTIUM_PCB::ParseRegions6Data(), BRDITEMS_PLOTTER::PlotFilledAreas(), and ZONE::TransformSolidAreasShapesToPolygon().
|
inherited |
Definition at line 367 of file zone.cpp.
References ADVANCED_CFG::GetCfg(), ZONE::GetFilledPolysUseThickness(), and LSET::InternalCuMask().
|
inlineinherited |
|
inlineinherited |
Definition at line 186 of file zone.h.
References ZONE::m_fillMode.
Referenced by ZONE_FILLER::computeRawFilledArea(), ZONE_FILLER::fillSingleZone(), PCB_IO::format(), ZONE::IsSame(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
|
inlineinherited |
Definition at line 204 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by BACK_ANNOTATE::applyChangelist(), ConvertOutlineToPolygon(), SCH_EDIT_FRAME::ConvertPart(), KIGFX::SCH_PAINTER::draw(), DRC_ENGINE::EvalRules(), PCB_SELECTION_TOOL::expandConnection(), insideArea(), BOARD_INSPECTION_TOOL::InspectConstraints(), LIB_PART::LIB_PART(), DIALOG_DRC::OnDRCItemSelected(), LIB_PART::operator=(), BOARD_COMMIT::Push(), FOOTPRINT::Remove(), BOARD::Remove(), SCH_EDIT_FRAME::SaveCopyInUndoList(), SCH_EDIT_FRAME::SchematicCleanUp(), SCH_EDIT_FRAME::SelectUnit(), DS_DATA_ITEM::SyncDrawItems(), DS_DATA_ITEM_POLYGONS::SyncDrawItems(), DS_DATA_ITEM_TEXT::SyncDrawItems(), DS_DATA_ITEM_BITMAP::SyncDrawItems(), and DIALOG_SYMBOL_PROPERTIES::TransferDataFromWindow().
|
inlinevirtualinherited |
Similar to GetPosition, but allows items to return their visual center rather than their anchor.
Reimplemented in BOARD, PCB_SHAPE, and TRACK.
Definition at line 308 of file eda_item.h.
References EDA_ITEM::GetPosition().
Referenced by PCB_BASE_FRAME::FocusOnItem(), and SCH_EDIT_FRAME::FocusOnItem().
|
inherited |
Definition at line 379 of file zone.cpp.
References g_nullPoly, SHAPE_POLY_SET::GetHash(), and ZONE::m_filledPolysHash.
|
inlineinherited |
Definition at line 274 of file zone.h.
References ZONE::m_hatchBorderAlgorithm.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 259 of file zone.h.
References ZONE::m_hatchGap.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 271 of file zone.h.
References ZONE::m_hatchHoleMinArea.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 823 of file zone.h.
References ZONE::m_borderHatchLines.
Referenced by KIGFX::PCB_PAINTER::draw().
|
inlineinherited |
Definition at line 262 of file zone.h.
References ZONE::m_hatchOrientation.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 265 of file zone.h.
References ZONE::m_hatchSmoothingLevel.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 268 of file zone.h.
References ZONE::m_hatchSmoothingValue.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 620 of file zone.h.
References ZONE::m_borderStyle.
Referenced by PCB_IO::format(), BOARD::NormalizeAreaPolygon(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 256 of file zone.h.
References ZONE::m_hatchThickness.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 825 of file zone.h.
References ZONE::m_hv45.
Referenced by DRAWING_TOOL::DrawZone(), and ZONE_SETTINGS::operator<<().
|
inherited |
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 1131 of file zone.cpp.
References SHAPE_POLY_SET::CIterate(), BOARD_ITEM::GetBoard(), BOARD_CONNECTED_ITEM::GetNetCode(), ZONE::m_Poly, and Millimeter2iu().
Referenced by ZONE::BuildSmoothedPoly().
|
inlineinherited |
Definition at line 769 of file zone.h.
References ZONE::m_islandRemovalMode.
Referenced by PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Accessors to parameters used in Rule Area zones:
Definition at line 755 of file zone.h.
References ZONE::m_isRuleArea.
Referenced by ZONE::BuildSmoothedPoly(), PCB_EDIT_FRAME::Edit_Zone_Params(), ZONE::Flip(), PCB_IO::format(), DSN::SPECCTRA_DB::FromBOARD(), ZONE::GetMsgPanelInfo(), ZONE::GetNetClass(), ZONE::GetNetClassName(), ZONE::GetSelectMenuText(), ZONE::HitTestFilledArea(), ZONE::IsConnected(), isKeepoutZone(), ZONE::IsSame(), PCB_SELECTION_TOOL::itemPassesFilter(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), ZONE_SETTINGS::operator<<(), ZONE::SetLayerSet(), PNS_KICAD_IFACE_BASE::syncZone(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZones(), and BOARD_EDITOR_CONTROL::ZoneMerge().
|
overridevirtualinherited |
Return the primary layer this item is on.
Reimplemented from BOARD_ITEM.
Definition at line 215 of file zone.cpp.
References BOARD_ITEM::GetLayer().
Referenced by BOARD::Add(), DRAWING_TOOL::DrawVia(), DRAWING_TOOL::DrawZone(), PCB_EDIT_FRAME::Edit_Zone_Params(), ZONE::Flip(), DSN::SPECCTRA_DB::FromBOARD(), ZONE::GetMsgPanelInfo(), ZONE::HatchBorder(), BOARD::NormalizeAreaPolygon(), FABMASTER::orderZones(), BRDITEMS_PLOTTER::PlotFilledAreas(), BOARD::TestZoneIntersection(), ZONE::TransformSmoothedOutlineToPolygon(), and BOARD_EDITOR_CONTROL::ZoneMerge().
|
inherited |
Return the name of the PCB layer on which the item resides.
Definition at line 60 of file board_item.cpp.
References BOARD_ITEM::GetBoard(), BOARD::GetLayerName(), BOARD::GetStandardLayerName(), and BOARD_ITEM::m_layer.
Referenced by PCB_TEXT::GetMsgPanelInfo(), PCB_TARGET::GetMsgPanelInfo(), FP_TEXT::GetMsgPanelInfo(), DIMENSION_BASE::GetMsgPanelInfo(), PCB_SHAPE::GetMsgPanelInfo(), LEADER::GetMsgPanelInfo(), PCB_TEXT::GetSelectMenuText(), FP_SHAPE::GetSelectMenuText(), TRACK::GetSelectMenuText(), DIMENSION_BASE::GetSelectMenuText(), PCB_SHAPE::GetSelectMenuText(), PCB_TEXT::GetShownText(), FP_TEXT_GRID_TABLE::GetValue(), and FOOTPRINT::ResolveTextVar().
|
overridevirtualinherited |
Return a std::bitset of all layers on which the item physically resides.
Reimplemented from BOARD_ITEM.
Definition at line 288 of file zone.cpp.
References ZONE::m_layerSet.
Referenced by CN_CONNECTIVITY_ALGO::Add(), ZONE::CommonLayerExists(), ZONE::Flip(), PCB_IO::format(), ZONE::InitDataFromSrcInCopyCtor(), ZONE::IsSame(), ZONE_SETTINGS::operator<<(), DRC_ENGINE::RunTests(), SaveCopyOfZones(), PCB_SELECTION_TOOL::Selectable(), and PNS_KICAD_IFACE_BASE::syncZone().
|
overridevirtualinherited |
Function GetLocalClearance returns any local clearances set in the "classic" (ie: pre-rule) system.
These are things like zone clearance which are NOT an override.
aSource | [out] optionally reports the source as a user-readable string |
Reimplemented from BOARD_CONNECTED_ITEM.
Definition at line 491 of file zone.cpp.
References _, ZONE::m_isRuleArea, and ZONE::m_ZoneClearance.
Referenced by ZONE_FILLER::buildCopperItemClearances(), ZONE_FILLER::buildThermalSpokes(), PCB_IO::format(), ZONE_SETTINGS::operator<<(), and BOARD_INSPECTION_TOOL::reportZoneConnection().
|
inlineinherited |
Definition at line 160 of file zone.h.
References ZONE::GetLocalClearance().
Referenced by ZONE::GetLocalClearance(), and ZONE_DESC::ZONE_DESC().
|
inlinevirtualinherited |
Return any local 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 153 of file board_connected_item.h.
Referenced by DRC_ENGINE::EvalRules().
|
inlineinherited |
Definition at line 308 of file zone.h.
References ZONE::m_localFlgs.
Referenced by ZONE::InitDataFromSrcInCopyCtor().
|
inlineinherited |
Definition at line 195 of file board_connected_item.h.
References BOARD_CONNECTED_ITEM::m_localRatsnestVisible.
Referenced by PCB_EDIT_FRAME::ExchangeFootprint().
|
inlineinherited |
Definition at line 226 of file zone.h.
References ZONE::m_lock.
Referenced by ZONE_FILLER::Fill().
|
overridevirtualinherited |
Return a pointer to an image to be used in menus.
The default version returns the right arrow image. Override this function to provide object specific menu images.
Reimplemented from EDA_ITEM.
Definition at line 1090 of file zone.cpp.
References add_zone_xpm.
|
inlineinherited |
Definition at line 773 of file zone.h.
References ZONE::m_minIslandArea.
Referenced by PCB_IO::format(), and ZONE_SETTINGS::operator<<().
|
inlineinherited |
Definition at line 247 of file zone.h.
References ZONE::m_ZoneMinThickness.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), BOARD_ADAPTER::addSolidAreasShapes(), CN_VISITOR::checkZoneZoneConnection(), ZONE_FILLER::computeRawFilledArea(), CN_ZONE_LAYER::ContainsPoint(), KIGFX::PCB_PAINTER::draw(), ZONE_FILLER::fillSingleZone(), PCB_IO::format(), ZONE::IsSame(), ZONE_SETTINGS::operator<<(), ALTIUM_PCB::ParsePolygons6Data(), ALTIUM_PCB::ParseRegions6Data(), BRDITEMS_PLOTTER::PlotFilledAreas(), ZONE::TransformSolidAreasShapesToPolygon(), and ZONE_DESC::ZONE_DESC().
|
overridevirtualinherited |
Populate aList of MSG_PANEL_ITEM objects with it's internal state for display purposes.
aList | is the list to populate. |
Reimplemented from EDA_ITEM.
Definition at line 543 of file zone.cpp.
References _, AccumulateDescription(), AREA, Format(), BOARD_ITEM::GetBoard(), ZONE::GetDoNotAllowCopperPour(), ZONE::GetDoNotAllowFootprints(), ZONE::GetDoNotAllowPads(), ZONE::GetDoNotAllowTracks(), ZONE::GetDoNotAllowVias(), ZONE::GetIsRuleArea(), ZONE::GetLayer(), BOARD::GetLayerName(), ZONE::GetNetClass(), BOARD_CONNECTED_ITEM::GetNetname(), BOARD_CONNECTED_ITEM::GetOwnClearance(), ZONE::GetPriority(), EDA_BASE_FRAME::GetUserUnits(), HATCH_PATTERN, ZONE::IsOnCopperLayer(), ZONE::m_area, ZONE::m_borderHatchLines, SHAPE_POLY_SET::VERTEX_INDEX::m_contour, ZONE::m_CornerSelection, ZONE::m_FilledPolysList, ZONE::m_fillMode, BOARD_ITEM::m_layer, ZONE::m_layerSet, ZONE::m_zoneName, MessageTextFromValue(), POLYGONS, LSET::Seq(), 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_PCBNEW_RULE_RESOLVER::DpNetPair(), EDIT_TOOL::DragArcTrack(), EDIT_TOOL::FilletTracks(), EDA_3D_CANVAS::OnMouseMove(), BOARD_EDITOR_CONTROL::RepairBoard(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), and DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow().
|
inlineoverridevirtualinherited |
Return the NETCLASS for this item.
Reimplemented from BOARD_CONNECTED_ITEM.
Definition at line 88 of file zone.h.
References ZONE::GetIsRuleArea(), and BOARD_CONNECTED_ITEM::GetNetClass().
Referenced by ZONE::GetMsgPanelInfo().
|
inlineoverridevirtualinherited |
Returns the netclass of the zone.
If the net is not found (can happen when a netlist is reread) and the net name does not exist, return the default net class (should not return a null pointer).
Reimplemented from BOARD_CONNECTED_ITEM.
Definition at line 96 of file zone.h.
References ZONE::GetIsRuleArea(), and BOARD_CONNECTED_ITEM::GetNetClassName().
|
inlineinherited |
Definition at line 93 of file board_connected_item.h.
References NETINFO_ITEM::GetNetCode(), and BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by ZONE_FILLER::addHatchFillTypeOnZone(), BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), ZONE_FILLER::buildCopperItemClearances(), connectedItemFilter(), CreateRoutesSection(), KIGFX::PCB_PAINTER::draw(), DRAWING_TOOL::DrawVia(), PCB_EDIT_FRAME::ExchangeFootprint(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), ZONE_FILLER::Fill(), PNS::NODE::FindItemByParent(), PCB_IO::format(), DSN::SPECCTRA_DB::FromBOARD(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), CONNECTIVITY_DATA::GetConnectedItems(), ZONE::GetInteractingZones(), TRACK::GetMsgPanelInfoBase_Common(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), hash_fp_item(), hasThermalConnection(), BOARD_INSPECTION_TOOL::highlightNet(), DIALOG_PAD_PROPERTIES::initValues(), BOARD_INSPECTION_TOOL::InspectClearance(), CONNECTIVITY_DATA::IsConnectedOnLayer(), ZONE::IsIsland(), ZONE::IsSame(), ZONE_FILLER::knockoutThermalReliefs(), DSN::SPECCTRA_DB::makeIMAGE(), AR_AUTOPLACER::nearestPad(), ROUTER_TOOL::NeighboringSegmentFilter(), CN_ITEM::Net(), BOARD::NormalizeAreaPolygon(), TRACK::cmp_tracks::operator()(), ZONE_SETTINGS::operator<<(), DIALOG_PAD_PROPERTIES::PadTypeSelected(), process(), BOARD_EDITOR_CONTROL::RepairBoard(), PCB_SELECTION_CONDITIONS::sameNetFunc(), SaveCopyOfZones(), PCB_SELECTION_TOOL::selectNet(), ZONE_FILLER::subtractHigherPriorityZones(), PNS_KICAD_IFACE_BASE::syncArc(), PNS_KICAD_IFACE_BASE::syncPad(), PNS_KICAD_IFACE_BASE::syncTrack(), PNS_KICAD_IFACE_BASE::syncVia(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZones(), BOARD::TracksInNet(), DIALOG_TRACK_VIA_PROPERTIES::TransferDataFromWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::visitItem(), and BOARD_EDITOR_CONTROL::ZoneMerge().
|
inlineinherited |
Definition at line 119 of file board_connected_item.h.
References NETINFO_ITEM::GetNetname(), and BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), FROM_TO_CACHE::cacheFromToPaths(), KIGFX::PCB_PAINTER::draw(), PCB_IO::format(), DSN::SPECCTRA_DB::FromBOARD(), ZONE::GetMsgPanelInfo(), PAD::GetMsgPanelInfo(), TRACK::GetMsgPanelInfoBase_Common(), BOARD_NETLIST_UPDATER::getNetname(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), CN_CLUSTER::OriginNetName(), BRDITEMS_PLOTTER::PlotFilledAreas(), BRDITEMS_PLOTTER::PlotPad(), PlotStandardLayer(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem().
|
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 TRACK::GetSelectMenuText(), VIA::GetSelectMenuText(), and ZONE::GetSelectMenuText().
|
inlineinherited |
Access to m_Poly parameters.
Definition at line 530 of file zone.h.
References ZONE::m_Poly, and SHAPE_POLY_SET::TotalVertices().
Referenced by ZONE::BuildSmoothedPoly(), and PCB_IO::format().
|
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. |
Definition at line 83 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(), ZONE::GetMsgPanelInfo(), TRACK::GetMsgPanelInfo(), VIA::GetMsgPanelInfo(), PAD::GetMsgPanelInfo(), and PAD::ViewBBox().
|
inherited |
Definition at line 770 of file zone.cpp.
References _, PAD::GetEffectiveZoneConnection(), INHERITED, ZONE::m_PadConnection, and NULL.
Referenced by ZONE_FILLER::buildCopperItemClearances(), PCB_IO::format(), hasThermalConnection(), ZONE_SETTINGS::operator<<(), and BOARD_INSPECTION_TOOL::reportZoneConnection().
|
inlineinherited |
Definition at line 244 of file zone.h.
References ZONE::m_PadConnection.
Referenced by ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 168 of file board_item.h.
References EDA_ITEM::m_parent.
Referenced by PCB_POINT_EDITOR::addCorner(), ALIGN_DISTRIBUTE_TOOL::AlignBottom(), ALIGN_DISTRIBUTE_TOOL::AlignCenterX(), ALIGN_DISTRIBUTE_TOOL::AlignCenterY(), ALIGN_DISTRIBUTE_TOOL::AlignTop(), PNS_KICAD_IFACE::Commit(), EDIT_TOOL::copyToClipboard(), FOOTPRINT::CoverageRatio(), EDIT_TOOL::CreateArray(), BOARD_ITEM::DeleteStructure(), ALIGN_DISTRIBUTE_TOOL::doAlignLeft(), ALIGN_DISTRIBUTE_TOOL::doAlignRight(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeCentersVertically(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsVertically(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Drag(), EDIT_TOOL::DragArcTrack(), KIGFX::PCB_PAINTER::draw(), EDIT_TOOL::Duplicate(), PCB_SELECTION_TOOL::FilterCollectorForGroups(), EDIT_TOOL::Flip(), PCB_IO::format(), FormatProbeItem(), BOARD_ITEM::GetBoard(), PCB_MARKER::GetColorLayer(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), FP_TEXT::GetSelectMenuText(), PCB_TEXT::GetShownText(), FP_TEXT::GetShownText(), insideArea(), GENERAL_COLLECTOR::Inspect(), ARRAY_CREATOR::Invoke(), DRC_ENGINE::IsNetTie(), FP_SHAPE::IsParentFlipped(), FP_TEXT::IsParentFlipped(), LEGACY_PLUGIN::loadMODULE_TEXT(), memberOf(), EDIT_TOOL::Mirror(), EDIT_TOOL::MoveExact(), ALTIUM_PCB::ParseTexts6Data(), BRDITEMS_PLOTTER::PlotFootprintGraphicItem(), BRDITEMS_PLOTTER::PlotFootprintTextItem(), POSITION_RELATIVE_TOOL::PositionRelative(), BOARD_COMMIT::Push(), PCB_PARSER::resolveGroups(), EDIT_TOOL::Rotate(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), PCB_BASE_EDIT_FRAME::SaveCopyInUndoList(), CLIPBOARD_IO::SaveSelection(), PCB_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::Selectable(), SwapItemData(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), PCB_GROUP::TopLevelGroup(), DIALOG_TEXT_PROPERTIES::TransferDataToWindow(), PCB_MARKER::ViewGetLayers(), ViewGetLOD(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem(), and PCB_GROUP::WithinScope().
|
inlineinherited |
Definition at line 93 of file board_item.h.
References BOARD_ITEM::m_group.
Referenced by PCB_GROUP::AddItem(), PCB_EDIT_FRAME::ExchangeFootprint(), BOARD::GroupsSanityCheckInternal(), memberOf(), PCB_CONTROL::placeBoardItems(), BOARD_COMMIT::Push(), EDIT_TOOL::Remove(), FOOTPRINT::Remove(), BOARD::Remove(), GROUP_TOOL::RemoveFromGroup(), PCB_GROUP::TopLevelGroup(), DIALOG_GROUP_PROPERTIES::TransferDataFromWindow(), and PCB_GROUP::WithinScope().
|
overridevirtualinherited |
Reimplemented from EDA_ITEM.
Definition at line 209 of file zone.cpp.
References ZONE::GetCornerPosition().
Referenced by EAGLE_PLUGIN::loadPlain().
|
inlineinherited |
Function GetPriority.
Definition at line 124 of file zone.h.
References ZONE::m_priority.
Referenced by ZONE_FILLER::buildCopperItemClearances(), ZONE_FILLER::Fill(), PCB_IO::format(), ZONE::GetMsgPanelInfo(), ZONE::IsSame(), ZONE_SETTINGS::operator<<(), ZONE_FILLER::subtractHigherPriorityZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZones(), ZONE_DESC::ZONE_DESC(), and BOARD_EDITOR_CONTROL::ZoneMerge().
|
inlineinherited |
Definition at line 277 of file zone.h.
References SHAPE_POLY_SET::GetGlobalIndex(), ZONE::m_CornerSelection, and ZONE::m_Poly.
|
overridevirtualinherited |
Return the text to display to be used in the selection clarification context menu when multiple items are found at the current cursor position.
The default version of this function raises an assertion in the debug mode and returns a string to indicate that it was not overridden to provide the object specific text.
Reimplemented from EDA_ITEM.
Definition at line 852 of file zone.cpp.
References _, Format(), BOARD_ITEM::GetBoard(), ZONE::GetIsRuleArea(), BOARD::GetLayerName(), BOARD_CONNECTED_ITEM::GetNetnameMsg(), SHAPE_POLY_SET::VERTEX_INDEX::m_contour, ZONE::m_CornerSelection, ZONE::m_layerSet, and LSET::Seq().
Referenced by PNS_KICAD_IFACE_BASE::syncZone().
|
inlineinherited |
Definition at line 133 of file board_connected_item.h.
References NETINFO_ITEM::GetShortNetname(), and BOARD_CONNECTED_ITEM::m_netinfo.
Referenced by KIGFX::PCB_PAINTER::draw().
|
inlineinherited |
Definition at line 186 of file eda_item.h.
References EDA_ITEM::m_status.
Referenced by BOARD_ITEM::IsLocked().
|
inlineinherited |
|
inlineinherited |
Definition at line 195 of file zone.h.
References ZONE::m_thermalReliefGap.
Referenced by ZONE_FILLER::buildCopperItemClearances(), ZONE_FILLER::buildThermalSpokes(), PCB_IO::format(), hasThermalConnection(), ZONE_FILLER::knockoutThermalReliefs(), ZONE_SETTINGS::operator<<(), BOARD_INSPECTION_TOOL::reportZoneConnection(), and ZONE_DESC::ZONE_DESC().
|
inherited |
Definition at line 329 of file zone.cpp.
References _, PAD::GetEffectiveThermalGap(), and ZONE::m_thermalReliefGap.
|
inlineinherited |
Definition at line 205 of file zone.h.
References ZONE::m_thermalReliefSpokeWidth.
Referenced by ZONE_FILLER::buildThermalSpokes(), PCB_IO::format(), ZONE_SETTINGS::operator<<(), and ZONE_DESC::ZONE_DESC().
|
inherited |
Definition at line 344 of file zone.cpp.
References _, PAD::GetEffectiveThermalSpokeWidth(), and ZONE::m_thermalReliefSpokeWidth.
|
inlineinherited |
Definition at line 97 of file board_item.h.
References EDA_ITEM::GetPosition().
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), ALIGN_DISTRIBUTE_TOOL::DistributeHorizontally(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsHorizontally(), BOARD_ITEM::SetY(), and TRACK_VIA_DESC::TRACK_VIA_DESC().
|
inlineinherited |
Definition at line 103 of file board_item.h.
References EDA_ITEM::GetPosition().
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), ALIGN_DISTRIBUTE_TOOL::DistributeVertically(), ALIGN_DISTRIBUTE_TOOL::doDistributeGapsVertically(), BOARD_ITEM::SetX(), and TRACK_VIA_DESC::TRACK_VIA_DESC().
|
inlineinherited |
Definition at line 131 of file zone.h.
References ZONE::m_zoneName.
Referenced by PCB_IO::format(), PNS::ROUTER::isStartingPointRoutable(), ZONE::Matches(), ZONE_SETTINGS::operator<<(), PNS_KICAD_IFACE_BASE::syncZone(), and ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 645 of file zone.h.
References ZONE::m_FilledPolysList.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), and ALTIUM_PCB::ParseRegions6Data().
|
inlineinherited |
Definition at line 205 of file eda_item.h.
References EDA_ITEM::m_flags.
Referenced by TRACKS_CLEANER::cleanup(), GRAPHICS_CLEANER::cleanupSegments(), SCH_EDIT_TOOL::DoDelete(), KIGFX::SCH_PAINTER::draw(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::moveItem(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), SCH_EDIT_TOOL::Rotate(), and EE_TOOL_BASE< SCH_BASE_FRAME >::saveCopyInUndoList().
|
inherited |
Function HatchBorder computes the hatch lines depending on the hatch parameters and stores it in the zone's attribute m_borderHatchLines.
Definition at line 923 of file zone.cpp.
References SEG::A, SEG::B, SHAPE_POLY_SET::CVertex(), DIAGONAL_EDGE, DIAGONAL_FULL, ZONE::GetLayer(), SHAPE_POLY_SET::IsEmpty(), SHAPE_POLY_SET::IterateSegmentsWithHoles(), SHAPE_POLY_SET::IterateWithHoles(), KiROUND(), ZONE::m_borderHatchLines, ZONE::m_borderHatchPitch, ZONE::m_borderStyle, ZONE::m_Poly, MAXPTS, NO_HATCH, sortEndsByDescendingX(), ZONE::UnHatchBorder(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by CONVERT_TOOL::LinesToPoly(), ZONE::Mirror(), ZONE::Move(), ZONE::MoveEdge(), BOARD::NormalizeAreaPolygon(), EDIT_TOOL::Remove(), ZONE::Rotate(), ZONE::SetBorderDisplayStyle(), and PCB_POINT_EDITOR::updateItem().
|
overridevirtualinherited |
Function HitTest tests if a point is near an outline edge or a corner of this zone.
aPosition | the wxPoint to test |
Reimplemented from EDA_ITEM.
Definition at line 397 of file zone.cpp.
References ZONE::HitTestForCorner(), ZONE::HitTestForEdge(), and Millimeter2iu().
|
overridevirtualinherited |
aRect | A reference to a EDA_RECT 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 450 of file zone.cpp.
References EDA_RECT::Contains(), SHAPE_POLY_SET::CVertex(), ZONE::GetBoundingBox(), EDA_RECT::Inflate(), EDA_RECT::Intersects(), ZONE::m_Poly, EDA_RECT::Normalize(), and SHAPE_POLY_SET::TotalVertices().
|
inherited |
Tests 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 518 of file zone.cpp.
References SHAPE_POLY_SET::Hole(), SHAPE_POLY_SET::HoleCount(), ZONE::m_Poly, SHAPE_POLY_SET::OutlineCount(), and SHAPE_LINE_CHAIN_BASE::PointInside().
Referenced by ZONE::HitTestCutout(), and EDIT_TOOL::Remove().
|
inlineinherited |
Definition at line 361 of file zone.h.
References ZONE::HitTestCutout().
|
inherited |
Function HitTestFilledArea tests if the given wxPoint is within the bounds of a filled area of this zone.
aLayer | is the layer to test on |
aRefPos | A wxPoint to test |
aAccuracy | Expand the distance by which the areas are expanded for the hittest |
Definition at line 503 of file zone.cpp.
References SHAPE_POLY_SET::Contains(), ZONE::GetIsRuleArea(), ZONE::m_FilledPolysList, and ZONE::m_Poly.
Referenced by CN_ANCHOR::ConnectedItemsCount(), GENERAL_COLLECTOR::Inspect(), and CN_ANCHOR::IsDangling().
|
inherited |
Function HitTestForCorner tests if the given wxPoint is near a corner.
refPos | is the wxPoint to test. |
aAccuracy | increase the item bounding box by this amount. |
aCornerHit | [out] is the index of the closest vertex found, useless when return value is false. |
Definition at line 422 of file zone.cpp.
References SHAPE_POLY_SET::CollideVertex(), and ZONE::m_Poly.
Referenced by ZONE::HitTest(), ZONE::HitTestForCorner(), GENERAL_COLLECTOR::Inspect(), PCB_SELECTION_TOOL::Main(), and ZONE::SetSelectedCorner().
|
inherited |
Function HitTestForCorner tests if the given wxPoint is near a corner.
refPos | is the wxPoint to test. |
aAccuracy | increase the item bounding box by this amount. |
Definition at line 429 of file zone.cpp.
References dummy(), and ZONE::HitTestForCorner().
|
inherited |
Function HitTestForEdge tests if the given wxPoint is near a segment defined by 2 corners.
refPos | is the wxPoint to test. |
aAccuracy | increase the item bounding box by this amount. |
aCornerHit | [out] is the index of the closest vertex found, useless when return value is false. |
Definition at line 436 of file zone.cpp.
References SHAPE_POLY_SET::CollideEdge(), and ZONE::m_Poly.
Referenced by ZONE::HitTest(), PCB_SELECTION_TOOL::hitTestDistance(), ZONE::HitTestForEdge(), GENERAL_COLLECTOR::Inspect(), PCB_SELECTION_TOOL::Main(), and ZONE::SetSelectedCorner().
|
inherited |
Function HitTestForEdge tests if the given wxPoint is near a segment defined by 2 corners.
refPos | is the wxPoint to test. |
aAccuracy | increase the item bounding box by this amount. |
Definition at line 443 of file zone.cpp.
References dummy(), and ZONE::HitTestForEdge().
|
inherited |
Copy aZone data to me.
Definition at line 105 of file zone.cpp.
References ZONE::GetLayerSet(), ZONE::GetLocalFlags(), ZONE::m_area, ZONE::m_borderHatchLines, ZONE::m_borderHatchPitch, ZONE::m_borderStyle, ZONE::m_cornerRadius, ZONE::m_CornerSelection, ZONE::m_cornerSmoothingType, ZONE::m_doNotAllowCopperPour, ZONE::m_doNotAllowFootprints, ZONE::m_doNotAllowPads, ZONE::m_doNotAllowTracks, ZONE::m_doNotAllowVias, ZONE::m_filledPolysHash, ZONE::m_FilledPolysList, ZONE::m_fillMode, ZONE::m_FillSegmList, ZONE::m_fillVersion, EDA_ITEM::m_flags, EDA_ITEM::m_forceVisible, ZONE::m_hatchBorderAlgorithm, ZONE::m_hatchGap, ZONE::m_hatchHoleMinArea, ZONE::m_hatchOrientation, ZONE::m_hatchSmoothingLevel, ZONE::m_hatchSmoothingValue, ZONE::m_hatchThickness, ZONE::m_hv45, ZONE::m_insulatedIslands, ZONE::m_isFilled, ZONE::m_islandRemovalMode, ZONE::m_isRuleArea, ZONE::m_minIslandArea, ZONE::m_needRefill, BOARD_CONNECTED_ITEM::m_netinfo, ZONE::m_PadConnection, ZONE::m_Poly, ZONE::m_priority, ZONE::m_RawPolysList, ZONE::m_thermalReliefGap, ZONE::m_thermalReliefSpokeWidth, ZONE::m_ZoneClearance, ZONE::m_ZoneMinThickness, ZONE::m_zoneName, LSET::Seq(), ZONE::SetLayerSet(), and ZONE::SetLocalFlags().
Referenced by FP_ZONE(), ZONE::operator=(), CLIPBOARD_IO::SaveSelection(), and ZONE::ZONE().
|
inlineinherited |
Definition at line 175 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::m_flags.
Referenced by GERBVIEW_SELECTION_TOOL::disambiguationMenu(), KIGFX::SCH_PAINTER::draw(), KIGFX::GERBVIEW_PAINTER::draw(), KIGFX::DS_RENDER_SETTINGS::GetColor(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), KIGFX::SCH_PAINTER::getRenderColor(), SCH_EDITOR_CONTROL::UpdateFind(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
|
inlineoverridevirtualinherited |
Not all ZONEs are really BOARD_CONNECTED_ITEMs....
Reimplemented from BOARD_CONNECTED_ITEM.
Definition at line 83 of file zone.h.
References ZONE::GetIsRuleArea().
|
inlineinherited |
Definition at line 170 of file eda_item.h.
References IS_DRAGGED, and EDA_ITEM::m_flags.
Referenced by DIALOG_SYMBOL_PROPERTIES::DIALOG_SYMBOL_PROPERTIES(), and KIGFX::SCH_PAINTER::setDeviceColors().
|
inlineinherited |
Definition at line 173 of file eda_item.h.
References ENTERED, and EDA_ITEM::m_flags.
Referenced by KIGFX::PCB_PAINTER::draw().
|
inlineinherited |
Definition at line 237 of file zone.h.
References ZONE::m_isFilled.
Referenced by PCB_EDIT_FRAME::Edit_Zone_Params(), PCB_POINT_EDITOR::finishItem(), PCB_IO::format(), and insideArea().
|
inlineinherited |
Definition at line 255 of file eda_item.h.
References EDA_ITEM::m_forceVisible.
Referenced by KIGFX::SCH_PAINTER::draw(), and SCH_FIELD::Print().
|
inherited |
Checks 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 1119 of file zone.cpp.
References BOARD_CONNECTED_ITEM::GetNetCode(), and ZONE::m_insulatedIslands.
Referenced by PCB_IO::format().
|
inlinevirtualinherited |
Reimplemented in FOOTPRINT, and PAD.
Definition at line 249 of file board_item.h.
References EDA_ITEM::GetState(), and LOCKED.
Referenced by BOARD_ITEM_DESC::BOARD_ITEM_DESC(), EDIT_TOOL::CreateArray(), PCB_CONTROL::DeleteItemCursor(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Drag(), EDIT_TOOL::Duplicate(), EDIT_TOOL::FilletTracks(), EDIT_TOOL::Flip(), PCB_IO::format(), PCB_TEXT::GetMsgPanelInfo(), FP_TEXT::GetMsgPanelInfo(), PCB_SHAPE::GetMsgPanelInfo(), TRACK::GetMsgPanelInfoBase_Common(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), GENERAL_COLLECTOR::Inspect(), PAD::IsLocked(), PCB_SELECTION_TOOL::itemPassesFilter(), TRACKS_CLEANER::mergeCollinearSegments(), EDIT_TOOL::Mirror(), BOARD_EDITOR_CONTROL::modifyLockSelected(), EDIT_TOOL::MoveExact(), POSITION_RELATIVE_TOOL::PositionRelative(), PCB_SELECTION_TOOL::RequestSelection(), EDIT_TOOL::Rotate(), PNS_KICAD_IFACE_BASE::syncArc(), PNS_KICAD_IFACE_BASE::syncTrack(), PNS_KICAD_IFACE_BASE::syncVia(), DIALOG_GRAPHIC_ITEM_PROPERTIES::TransferDataToWindow(), and DIALOG_TEXT_PROPERTIES::TransferDataToWindow().
|
inlineinherited |
Definition at line 167 of file eda_item.h.
References IS_CHANGED, and EDA_ITEM::m_flags.
Referenced by PCB_EDIT_FRAME::OpenProjectFiles().
|
inlineinherited |
Definition at line 169 of file eda_item.h.
References IS_MOVED, and EDA_ITEM::m_flags.
Referenced by SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), LIB_PIN::CalcEdit(), LIB_ARC::CalcRadiusAngles(), KIGFX::SCH_PAINTER::draw(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), SCH_EDIT_TOOL::Mirror(), PCB_BASE_FRAME::PlaceFootprint(), SYMBOL_EDITOR_EDIT_TOOL::Rotate(), SCH_EDIT_TOOL::Rotate(), and KIGFX::SCH_PAINTER::setDeviceColors().
|
inlineinherited |
Definition at line 168 of file eda_item.h.
References IS_NEW, and EDA_ITEM::m_flags.
Referenced by SCH_EDIT_FRAME::AddItemToScreenAndUndoList(), SCH_EDIT_TOOL::AutoplaceFields(), SCH_EDIT_TOOL::ChangeTextType(), SCH_EDIT_TOOL::ConvertDeMorgan(), EDIT_TOOL::DragArcTrack(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), SCH_EDIT_TOOL::Duplicate(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), SYMBOL_EDITOR_DRAWING_TOOLS::Init(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), EE_POINT_EDITOR::Main(), PL_POINT_EDITOR::Main(), SYMBOL_EDITOR_MOVE_TOOL::Main(), SCH_MOVE_TOOL::Main(), EDIT_TOOL::MoveExact(), PCB_BASE_FRAME::PlaceFootprint(), SYMBOL_EDITOR_PIN_TOOL::PlacePin(), DIALOG_SHEET_PIN_PROPERTIES::TransferDataFromWindow(), DIALOG_SHEET_PROPERTIES::TransferDataFromWindow(), DIALOG_LABEL_EDITOR::TransferDataFromWindow(), DIALOG_SHEET_PROPERTIES::TransferDataToWindow(), and SCH_EDIT_FRAME::UpdateSymbolFromEditor().
|
overridevirtualinherited |
Function IsOnCopperLayer.
Reimplemented from BOARD_ITEM.
Definition at line 221 of file zone.cpp.
References LSET::AllCuMask(), and ZONE::m_layerSet.
Referenced by ZONE::BuildSmoothedPoly(), ZONE_FILLER::fillSingleZone(), ZONE::GetMsgPanelInfo(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), EDA_3D_CANVAS::OnMouseMove(), and BRDITEMS_PLOTTER::PlotFilledAreas().
|
overridevirtualinherited |
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 313 of file zone.cpp.
References ZONE::m_layerSet.
Referenced by KIGFX::PCB_PAINTER::draw(), DSN::SPECCTRA_DB::FromBOARD(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZones().
|
inlinevirtualinherited |
Override this method in any derived object that supports test find and replace.
Reimplemented in SCH_COMPONENT, SCH_SHEET, SCH_LABEL, SCH_TEXT, SCH_SHEET_PIN, and SCH_FIELD.
Definition at line 452 of file eda_item.h.
Referenced by EDA_ITEM::Matches().
|
inlineinherited |
Definition at line 174 of file eda_item.h.
References IS_RESIZED, and EDA_ITEM::m_flags.
Referenced by KIGFX::SCH_PAINTER::setDeviceColors().
|
inherited |
Function IsSame tests if 2 zones are equivalent: 2 zones are equivalent if they have same parameters and same outlines info, filling is not taken into account.
Function IsSame test is 2 zones are equivalent: 2 zones are equivalent if they have same parameters and same outlines info relative to filling is not take in account.
aZoneToCompare | = zone to compare with "this" |
Definition at line 61 of file zones_functions_for_undo_redo.cpp.
References ZONE::GetDoNotAllowCopperPour(), ZONE::GetDoNotAllowFootprints(), ZONE::GetDoNotAllowPads(), ZONE::GetDoNotAllowTracks(), ZONE::GetDoNotAllowVias(), ZONE::GetFillMode(), ZONE::GetIsRuleArea(), ZONE::GetLayerSet(), ZONE::GetMinThickness(), BOARD_CONNECTED_ITEM::GetNetCode(), ZONE::GetPriority(), ZONE::m_fillMode, ZONE::m_islandRemovalMode, ZONE::m_minIslandArea, ZONE::m_PadConnection, ZONE::m_Poly, ZONE::m_thermalReliefGap, ZONE::m_thermalReliefSpokeWidth, ZONE::m_ZoneClearance, ZONE::m_ZoneMinThickness, ZONE::m_zoneName, and ZONE::Outline().
Referenced by UpdateCopyOfZonesList().
|
inlineinherited |
Definition at line 172 of file eda_item.h.
References EDA_ITEM::m_flags, and SELECTED.
Referenced by SCH_EDIT_TOOL::ChangeTextType(), SCH_EDIT_FRAME::ConvertPart(), DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(), KIGFX::SCH_PAINTER::draw(), KIGFX::PCB_PAINTER::draw(), DS_PROXY_UNDO_ITEM::DS_PROXY_UNDO_ITEM(), KIGFX::DS_RENDER_SETTINGS::GetColor(), KIGFX::GERBVIEW_RENDER_SETTINGS::GetColor(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), SCH_MOVE_TOOL::getConnectedDragItems(), KIGFX::SCH_PAINTER::getLineWidth(), KIGFX::SCH_PAINTER::getRenderColor(), KIGFX::SCH_PAINTER::getTextThickness(), SCH_LINE::MergeOverlap(), SCH_EDIT_TOOL::Mirror(), SCH_MOVE_TOOL::moveItem(), BOARD_COMMIT::Push(), PCB_SELECTION_TOOL::RebuildSelection(), EE_SELECTION_TOOL::RebuildSelection(), RENDER_3D_LEGACY::renderFootprint(), SCH_EDIT_TOOL::Rotate(), EE_TOOL_BASE< SCH_BASE_FRAME >::saveCopyInUndoList(), SCH_EDIT_FRAME::SchematicCleanUp(), GERBVIEW_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::selectionContains(), EE_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), GERBVIEW_SELECTION_TOOL::selectPoint(), KIGFX::SCH_PAINTER::setDeviceColors(), and GERBVIEW_SELECTION_TOOL::unselect().
|
inlineinherited |
Test to see if this object is a track or via (or microvia).
Definition at line 241 of file board_item.h.
References PCB_TRACE_T, PCB_VIA_T, and EDA_ITEM::Type().
|
inlinevirtualinherited |
Check whether the item is one of the listed types.
aScanTypes | List of item types |
Reimplemented in VIA, SCH_LABEL, DIMENSION_BASE, PAD, PCB_SHAPE, SCH_FIELD, SCH_LINE, FP_TEXT, FP_SHAPE, and PCB_TEXT.
Definition at line 232 of file eda_item.h.
References EOT, EDA_ITEM::m_structType, and SCH_LOCATE_ANY_T.
Referenced by ROUTER_TOOL::CanInlineDrag(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingBus(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLine(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingWire(), PCB_TEXT::IsType(), FP_SHAPE::IsType(), FP_TEXT::IsType(), SCH_LINE::IsType(), SCH_FIELD::IsType(), PCB_SHAPE::IsType(), PAD::IsType(), DIMENSION_BASE::IsType(), SCH_LABEL::IsType(), VIA::IsType(), EE_POINT_EDITOR::Main(), PL_POINT_EDITOR::Main(), EE_SELECTION_TOOL::RequestSelection(), SCH_BASE_FRAME::UpdateItem(), EDA_ITEM::Visit(), and DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem().
|
inlineinherited |
Definition at line 171 of file eda_item.h.
References IS_WIRE_IMAGE, and EDA_ITEM::m_flags.
|
inlineinherited |
Function Iterate returns an iterator to visit all points of the zone's main outline without holes.
Definition at line 540 of file zone.h.
References SHAPE_POLY_SET::Iterate(), and ZONE::m_Poly.
|
inlinestaticinherited |
This changes first parameter to avoid the DList and use the main queue instead.
Definition at line 344 of file eda_item.h.
References CONTINUE, QUIT, and 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 363 of file eda_item.h.
References CONTINUE, QUIT, and EDA_ITEM::Visit().
|
inlineinherited |
Function IterateWithHoles returns an iterator to visit all points of the zone's main outline with holes.
Definition at line 550 of file zone.h.
References SHAPE_POLY_SET::IterateWithHoles(), and ZONE::m_Poly.
Referenced by DSN::SPECCTRA_DB::FromBOARD().
|
protectedvirtualinherited |
Return a string (to be shown to the user) describing a layer mask.
The BOARD is needed because layer names are customizable.
Reimplemented in VIA.
Definition at line 72 of file board_item.cpp.
References _, LSET::AllCuMask(), LSET::AllTechMask(), B_Cu, F_Cu, BOARD_ITEM::GetBoard(), BOARD::GetEnabledLayers(), BOARD::GetLayerName(), BOARD_ITEM::GetLayerSet(), PCB_LAYER_ID_COUNT, and PCBNEW_LAYER_ID_START.
Referenced by TRACK::GetMsgPanelInfo(), PAD::GetMsgPanelInfo(), and PAD::GetSelectMenuText().
|
inlineoverridevirtualinherited |
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 134 of file zone.h.
References ZONE::GetZoneName(), and EDA_ITEM::Matches().
Referenced by DIALOG_FIND::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 132 of file eda_item.cpp.
References FR_MATCH_WILDCARD, FR_SEARCH_REPLACE, and EDA_ITEM::IsReplaceable().
|
inherited |
Function Mirror Mirror the outlines , relative to a given horizontal axis the layer is not changed.
aMirrorRef | = axis position |
aMirrorLeftRight | mirror across Y axis (otherwise mirror across X) |
Definition at line 741 of file zone.cpp.
References SEG::A, SEG::B, ZONE::HatchBorder(), ZONE::m_FilledPolysList, ZONE::m_FillSegmList, ZONE::m_Poly, MIRROR(), SHAPE_POLY_SET::Mirror(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by ZONE::Flip(), and EDIT_TOOL::Mirror().
|
inlineinherited |
Definition at line 283 of file board_item.h.
References BOARD_ITEM::Move(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
overridevirtualinherited |
Function Move Move the outlines.
offset | = moving vector |
Reimplemented from BOARD_ITEM.
Definition at line 667 of file zone.cpp.
References SEG::A, SEG::B, ZONE::HatchBorder(), ZONE::m_FilledPolysList, ZONE::m_FillSegmList, ZONE::m_Poly, and SHAPE_POLY_SET::Move().
|
inherited |
Function MoveEdge Move the outline Edge.
offset | = moving vector |
aEdge | = start point of the outline edge |
Definition at line 688 of file zone.cpp.
References SHAPE_POLY_SET::CVertex(), SHAPE_POLY_SET::GetNeighbourIndexes(), ZONE::HatchBorder(), ZONE::m_Poly, ZONE::SetNeedRefill(), and SHAPE_POLY_SET::SetVertex().
|
inlineinherited |
Definition at line 240 of file zone.h.
References ZONE::m_needRefill.
Referenced by PCB_POINT_EDITOR::finishItem().
|
inlineinherited |
Function NewHole creates a new hole on the zone; i.e., a new contour on the zone's outline.
Definition at line 605 of file zone.h.
References ZONE::m_Poly, and SHAPE_POLY_SET::NewHole().
Referenced by EAGLE_PLUGIN::loadPlain(), and EAGLE_PLUGIN::packageCircle().
|
inherited |
Test if another item is less than this object.
aItem | - Item to compare against. |
Definition at line 185 of file eda_item.cpp.
References Format(), and EDA_ITEM::GetClass().
|
inlineinherited |
Definition at line 323 of file zone.h.
References ZONE::m_Poly.
Referenced by PCB_POINT_EDITOR::addCorner(), ZONE_FILLER::addHatchFillTypeOnZone(), KIGFX::PCB_PAINTER::draw(), ZONE::IsSame(), CONVERT_TOOL::LinesToPoly(), CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), PCB_POINT_EDITOR::makePoints(), BOARD::NormalizeAreaPolygon(), EAGLE_PLUGIN::packagePolygon(), ALTIUM_PCB::ParseArcs6Data(), ALTIUM_PCB::ParsePolygons6Data(), ALTIUM_PCB::ParseShapeBasedRegions6Data(), ALTIUM_PCB::ParseTracks6Data(), ZONE_CREATE_HELPER::performZoneCutout(), PCB_POINT_EDITOR::removeCorner(), PNS_KICAD_IFACE_BASE::syncZone(), BOARD::TestZoneIntersection(), PCB_POINT_EDITOR::updateItem(), and PCB_POINT_EDITOR::updatePoints().
|
inlineinherited |
|
inlineinherited |
Definition at line 740 of file zone.h.
References ZONE::m_RawPolysList.
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::loadCoppers(), and ALTIUM_PCB::ParseRegions6Data().
|
inlineinherited |
Definition at line 565 of file zone.h.
References ZONE::m_Poly, and SHAPE_POLY_SET::RemoveAllContours().
|
inherited |
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 786 of file zone.cpp.
References SHAPE_POLY_SET::BooleanAdd(), SHAPE_POLY_SET::Hole(), SHAPE_POLY_SET::HoleCount(), ZONE::m_Poly, SHAPE_POLY_SET::OutlineCount(), SHAPE_POLY_SET::PM_FAST, and ZONE::SetNeedRefill().
Referenced by EDIT_TOOL::Remove().
|
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 159 of file eda_item.cpp.
References traceFindReplace.
Referenced by SCH_FIELD::Replace(), EDA_TEXT::Replace(), and SCH_EDITOR_CONTROL::ReplaceAndFindNext().
|
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_TEXT, SCH_SHEET_PIN, SCH_FIELD, and SCH_PIN.
Definition at line 441 of file eda_item.h.
|
inlineinherited |
Definition at line 299 of file board_item.h.
References BOARD_ITEM::Rotate(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
overridevirtualinherited |
Function Rotate Move the outlines.
aCentre | = rot centre |
aAngle | = in 0.1 degree |
Reimplemented from BOARD_ITEM.
Definition at line 703 of file zone.cpp.
References SEG::A, SEG::B, DECIDEG2RAD(), ZONE::HatchBorder(), ZONE::m_FilledPolysList, ZONE::m_FillSegmList, ZONE::m_Poly, SHAPE_POLY_SET::Rotate(), and RotatePoint().
Referenced by EAGLE_PLUGIN::loadPlain(), EAGLE_PLUGIN::packageRectangle(), and ALTIUM_PCB::ParseFills6Data().
|
inlineinherited |
Definition at line 40 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_BASE::setter(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 53 of file inspectable.h.
References PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inlineinherited |
Definition at line 66 of file inspectable.h.
References PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::Instance(), PROPERTY_BASE::OwnerHash(), PROPERTY_BASE::set(), TYPE_HASH, and PROPERTY_MANAGER::TypeCast().
|
inherited |
Function SetBorderDisplayStyle sets all hatch parameters for the zone.
aHatchStyle | is the style of the hatch, specified as one of HATCH_STYLE possible values. |
aHatchPitch | is the hatch pitch in iu. |
aRebuildHatch | is a flag to indicate whether to re-hatch after having set the previous parameters. |
Definition at line 892 of file zone.cpp.
References ZONE::HatchBorder(), ZONE::m_borderStyle, and ZONE::SetHatchPitch().
Referenced by PCAD2KICAD::PCB_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), EAGLE_PLUGIN::loadPlain(), EAGLE_PLUGIN::packageCircle(), EAGLE_PLUGIN::packagePolygon(), EAGLE_PLUGIN::packageRectangle(), ALTIUM_PCB::ParseArcs6Data(), ALTIUM_PCB::ParseFills6Data(), ALTIUM_PCB::ParsePolygons6Data(), ALTIUM_PCB::ParseShapeBasedRegions6Data(), and ALTIUM_PCB::ParseTracks6Data().
|
inlineinherited |
Definition at line 179 of file eda_item.h.
References BRIGHTENED, and EDA_ITEM::SetFlags().
Referenced by GERBVIEW_SELECTION_TOOL::disambiguationMenu(), KIGFX::SCH_PAINTER::draw(), PCB_BASE_FRAME::FocusOnItem(), SCH_EDIT_FRAME::FocusOnItem(), PL_SELECTION_TOOL::highlight(), EE_SELECTION_TOOL::highlight(), PCB_SELECTION_TOOL::highlightInternal(), and SCH_EDITOR_CONTROL::UpdateNetHighlighting().
|
inlineinherited |
Definition at line 581 of file zone.h.
References SHAPE_POLY_SET::CVertex(), SHAPE_POLY_SET::GetRelativeIndices(), ZONE::m_Poly, ZONE::SetNeedRefill(), SHAPE_POLY_SET::SetVertex(), VECTOR2< T >::x, and VECTOR2< T >::y.
|
inherited |
Definition at line 358 of file zone.cpp.
References ZONE::m_cornerRadius, and ZONE::SetNeedRefill().
Referenced by ZONE_SETTINGS::ExportSetting().
|
inlineinherited |
Definition at line 704 of file zone.h.
References ZONE::m_cornerSmoothingType.
Referenced by ZONE_SETTINGS::ExportSetting().
|
inlineinherited |
Definition at line 763 of file zone.h.
References ZONE::m_doNotAllowCopperPour.
Referenced by PCAD2KICAD::PCB_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), EAGLE_PLUGIN::loadPolygon(), FABMASTER::loadZone(), ALTIUM_PCB::ParseArcs6Data(), ALTIUM_PCB::ParseFills6Data(), ALTIUM_PCB::ParseShapeBasedRegions6Data(), ALTIUM_PCB::ParseTracks6Data(), setKeepoutSettingsToZone(), and ZONE::ZONE().
|
inlineinherited |
Definition at line 767 of file zone.h.
References ZONE::m_doNotAllowFootprints.
Referenced by PCAD2KICAD::PCB_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), EAGLE_PLUGIN::loadPolygon(), FABMASTER::loadZone(), ALTIUM_PCB::ParseArcs6Data(), ALTIUM_PCB::ParseFills6Data(), ALTIUM_PCB::ParseShapeBasedRegions6Data(), ALTIUM_PCB::ParseTracks6Data(), setKeepoutSettingsToZone(), and ZONE::ZONE().
|
inlineinherited |
Definition at line 766 of file zone.h.
References ZONE::m_doNotAllowPads.
Referenced by PCAD2KICAD::PCB_POLYGON::AddToBoard(), ZONE_SETTINGS::ExportSetting(), CADSTAR_PCB_ARCHIVE_LOADER::loadAreas(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryAreas(), EAGLE_PLUGIN::loadPolygon(), FABMASTER::loadZone(), ALTIUM_PCB::ParseArcs6Data(), ALTIUM_PCB::ParseFills6Data(), ALTIUM_PCB::ParseShapeBasedRegions6Data(), ALTIUM_PCB::ParseTracks6Data(), setKeepoutSettingsToZone(), and ZONE::ZONE().