24#ifndef PCBNEW_ARRAY_OPTIONS__H
25#define PCBNEW_ARRAY_OPTIONS__H
49 m_shouldNumber( false ),
50 m_arrangeSelection( false ),
51 m_reannotateFootprints( false ),
52 m_numberingStartIsSpecified( false )
94 return m_shouldNumber;
99 m_shouldNumber = aShouldNumber;
107 return m_arrangeSelection;
112 m_arrangeSelection = aShouldArrange;
121 return m_reannotateFootprints;
126 m_reannotateFootprints = aShouldReannotate;
136 return m_shouldNumber && m_numberingStartIsSpecified;
141 m_numberingStartIsSpecified = aIsSpecified;
171 m_horizontalThenVertical( true ),
172 m_reverseNumberingAlternate( false ),
174 m_stagger_rows( true ),
175 m_2dArrayNumbering( false )
191 int GetArraySize()
const override;
192 wxString GetItemNumber(
int n )
const override;
195 VECTOR2I gtItemPosRelativeToItem0(
int n )
const;
196 VECTOR2I getGridCoords(
int n )
const;
206 m_rotateItems( false )
220 int GetArraySize()
const override;
221 wxString GetItemNumber(
int n )
const override;
Class that contains information about a single array axis and the numbering of items along that axis.
Options that govern the setup of an "array" of multiple item.
virtual int GetArraySize() const =0
The number of points in this array.
void SetSShouldReannotateFootprints(bool aShouldReannotate)
bool m_shouldNumber
True if this array numbers the new items.
bool ShouldNumberItems() const
virtual wxString GetItemNumber(int n) const =0
Get the position number (name) for the n'th array point.
virtual TRANSFORM GetTransform(int aN, const VECTOR2I &aPos) const =0
Get the transform of the n-th point in the array.
void SetShouldNumber(bool aShouldNumber)
bool ShouldReannotateFootprints() const
bool ShouldArrangeSelection() const
void SetNumberingStartIsSpecified(bool aIsSpecified)
bool m_arrangeSelection
True if this array should arrange the selected items instead of creating an array of copies of the se...
bool GetNumberingStartIsSpecified() const
@ ARRAY_CIRCULAR
A circular array.
@ ARRAY_GRID
A grid (x*y) array.
void SetShouldArrangeSelection(bool aShouldArrange)
ARRAY_OPTIONS(ARRAY_TYPE_T aType)
bool m_numberingStartIsSpecified
True if this array's number starts from the preset point False if the array numbering starts from som...
bool m_reannotateFootprints
True if this array will rename any footprints to be unique.
static constexpr EDA_ANGLE ANGLE_0
long m_nPts
number of point in the array
EDA_ANGLE m_angle
angle between points, or 0 for each point separated by this value (decideg)
bool m_horizontalThenVertical