KiCad PCB EDA Suite
Loading...
Searching...
No Matches
test_footprint_transform_sync.cpp File Reference
#include <qa_utils/wx_utils/unit_test_utils.h>
#include <board.h>
#include <board_design_settings.h>
#include <connectivity/connectivity_data.h>
#include <connectivity/connectivity_algo.h>
#include <drc/drc_engine.h>
#include <drc/drc_item.h>
#include <footprint.h>
#include <pad.h>
#include <pcb_barcode.h>
#include <pcb_dimension.h>
#include <pcb_marker.h>
#include <pcb_point.h>
#include <pcb_shape.h>
#include <pcb_table.h>
#include <pcb_tablecell.h>
#include <pcb_text.h>
#include <pcb_textbox.h>
#include <pcbnew_utils/board_file_utils.h>
#include <pcbnew_utils/board_test_utils.h>
#include <settings/settings_manager.h>
#include <widgets/report_severity.h>
#include <zone.h>
#include <filesystem>

Go to the source code of this file.

Classes

struct  BOARD_FIXTURE
 

Functions

static void CHECK_TRANSFORM_MATCHES_LEGACY (const FOOTPRINT &aFp)
 
 BOOST_AUTO_TEST_CASE (DefaultIsIdentity)
 
 BOOST_AUTO_TEST_CASE (SetPositionUpdatesTransform)
 
 BOOST_AUTO_TEST_CASE (SetOrientationUpdatesTransform)
 
 BOOST_AUTO_TEST_CASE (MoveUpdatesTransform)
 
 BOOST_AUTO_TEST_CASE (PadEffectiveShapeFollowsFootprintScale)
 
 BOOST_AUTO_TEST_CASE (PadBBoxFollowsFootprintMove)
 
 BOOST_AUTO_TEST_CASE (PadBBoxFollowsFootprintRotation)
 
 BOOST_AUTO_TEST_CASE (RotateUpdatesTransform)
 
 BOOST_AUTO_TEST_CASE (SetLayerUpdatesFlipped)
 
 BOOST_AUTO_TEST_CASE (CopyPreservesTransform)
 
static void CHECK_TRANSFORM_PAD_INVARIANT (const FOOTPRINT &aFp)
 
static void CHECK_PAD_LIBPOS_MIRROR (const FOOTPRINT &aFp)
 
 BOOST_FIXTURE_TEST_CASE (PadTransformInvariantOnLoadedBoard, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PadTransformInvariantAfterMutation, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PadLibPosMirrorOnLoad, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PadLibPosMirrorAfterMutation, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (UndoRedoRestoresFootprintAndPadState, BOARD_FIXTURE)
 
static void CHECK_SHAPE_LIBPOS_MIRROR (const FOOTPRINT &aFp)
 
 BOOST_FIXTURE_TEST_CASE (ShapeLibPosMirrorOnLoad, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (ShapeLibPosMirrorAfterMutation, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (SetTransformScaleDoublesPadOffsets, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (SetTransformScaleRebakeShapes, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (ScalePersistsAcrossSaveLoad, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (ScaleSurvivesUndoRedo, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (SetTransformScaleScalesZoneOutline)
 
 BOOST_FIXTURE_TEST_CASE (SetTransformScaleScalesPadAndDrillSize, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (SetTransformScaleScalesTextSize, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (SetTransformScaleInvalidatesTextBBoxCache, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (SetTransformScaleScalesShapeLineWidth, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (DRCFlagsScaledFootprintWithPads, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (DRCSilentForUnscaledFootprintWithPads, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (RescaleAroundPointKeepsCenterFixed, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (RescaleAroundPointMovesAnchorByExpectedDelta, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (RescaleAroundPointComposesScale, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (RatsnestFollowsScaledPads, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (SetTransformScaleInvalidatesBoundingBoxCache, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (SetTransformScaleInvalidatesCourtyardCache, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (SetTransformScaleInvalidatesZoneFill)
 
 BOOST_AUTO_TEST_CASE (MultiFootprintScaleSelectionCenterIsBBoxCenter)
 
 BOOST_AUTO_TEST_CASE (MultiFootprintScaleAroundSelectionCenter)
 
 BOOST_FIXTURE_TEST_CASE (ScaleXSetterPreservesOtherAxis, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (ScaleYSetterPreservesOtherAxis, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PromotedArcSerializesAsLibArc, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PromotedCircleSerializesAsLibCircle, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (NativeEllipseRoundTripsThroughRotatedFootprint, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (NativeEllipseRebakesUnderUniformScale)
 
 BOOST_FIXTURE_TEST_CASE (SizesAreStableAcrossSaveLoad, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (PolyShapeLibMirrorDoesNotDriftOnTranslate)
 
 BOOST_AUTO_TEST_CASE (PolyShapeScalesWithFootprint)
 
 BOOST_AUTO_TEST_CASE (BezierShapeScalesWithFootprint)
 
 BOOST_AUTO_TEST_CASE (RectangleSurvivesScaleRotateRoundTrip)
 
 BOOST_AUTO_TEST_CASE (RectangleSwapsDimsAt90)
 
 BOOST_AUTO_TEST_CASE (RectangleMorphsToPolyUnderNonCardinalRotation)
 
 BOOST_AUTO_TEST_CASE (RectangleSurvivesIncrementalRotateAroundExternalCenter)
 
 BOOST_FIXTURE_TEST_CASE (NativeEllipseFlipSurvivesNonUniformScale, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (NativeEllipseRebakesUnderNonUniformScaleAxisAligned)
 
 BOOST_AUTO_TEST_CASE (NativeEllipseSignUnderNonUniformScaleAndParentRotation)
 
 BOOST_AUTO_TEST_CASE (NativeEllipseContinuousAtUniformLimit)
 
 BOOST_AUTO_TEST_CASE (NativeEllipseTessellatesUnderNonUniformScaleRotated)
 
 BOOST_AUTO_TEST_CASE (PadPrimitiveScalesRuntimeKeepsLibPadLocal)
 
 BOOST_AUTO_TEST_CASE (PadPrimitiveCircleBecomesEllipseUnderNonUniformScale)
 
 BOOST_AUTO_TEST_CASE (PadPrimitiveFlipStaysPadLocal)
 
 BOOST_AUTO_TEST_CASE (CirclePadStaysCircularUnderNonUniformScale)
 
 BOOST_FIXTURE_TEST_CASE (CirclePadRoundTripsAcrossSaveLoad, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PadPrimitiveRoundTripsAcrossSaveLoad, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (PadPrimitiveSyncKeepsLibUnscaled)
 
 BOOST_FIXTURE_TEST_CASE (PadPolyPrimitiveRoundTripsAcrossSaveLoad, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (NonUniformScalePromotesCircleToEllipse)
 
 BOOST_AUTO_TEST_CASE (CircleToEllipseRotatesWithParent)
 
 BOOST_AUTO_TEST_CASE (NonUniformScaleSwapsAxesWhenMinorWouldExceedMajor)
 
 BOOST_AUTO_TEST_CASE (NonUniformScalePromotesArcToEllipseArc)
 
 BOOST_AUTO_TEST_CASE (UniformRescaleRestoresArc)
 
 BOOST_AUTO_TEST_CASE (UniformRescaleRestoresCircle)
 
static void seedSquareLibOutline (ZONE *aZone, int aHalfSide=1000000)
 
 BOOST_AUTO_TEST_CASE (ZoneOutlineFollowsFootprintTransform)
 
 BOOST_AUTO_TEST_CASE (ZoneOutlineSurvivesFootprintFlip)
 
 BOOST_AUTO_TEST_CASE (ZoneHitTestRespectsFootprintTransform)
 
 BOOST_AUTO_TEST_CASE (ZoneMoveTranslatesInBoardFrame)
 
 BOOST_AUTO_TEST_CASE (ZoneRotateAboutBoardCenter)
 
 BOOST_AUTO_TEST_CASE (ZoneBoundingBoxIsBoardFrameForFPChild)
 
 BOOST_AUTO_TEST_CASE (ZoneSmoothedPolyForFPRuleAreaIsBoardFrame)
 
 BOOST_AUTO_TEST_CASE (ZoneEffectiveShapeForFPRuleAreaIsBoardFrame)
 
 BOOST_AUTO_TEST_CASE (FootprintFlipPreservesChildRectUnderRotation)
 
 BOOST_AUTO_TEST_CASE (FootprintFlipPreservesChildSegmentUnderRotation)
 
 BOOST_AUTO_TEST_CASE (FootprintFlipPreservesChildCircleUnderRotation)
 
 BOOST_AUTO_TEST_CASE (FootprintFlipPreservesChildArcUnderRotation)
 
 BOOST_AUTO_TEST_CASE (FootprintFlipPreservesPCBTextUnderRotation)
 
 BOOST_FIXTURE_TEST_CASE (TableInRotatedFootprintSurvivesSaveLoad, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (TableRotatedInFootprintThenFootprintRotatedRoundTrips, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (TableInRotatedFootprintCellsAreVisuallyRotated)
 
 BOOST_AUTO_TEST_CASE (TableRotates90Cleanly)
 
 BOOST_AUTO_TEST_CASE (TextBoxInFootprintKeepsRectangleShape)
 
 BOOST_FIXTURE_TEST_CASE (PCBTextInRotatedFootprintSurvivesSaveLoad, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PCBFieldInRotatedFootprintSurvivesSaveLoad, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (DimensionAndBarcodeInScaledFootprintSurviveSaveLoad, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (PCBTextSizeFollowsFootprintScale)
 
 BOOST_AUTO_TEST_CASE (FootprintRotateRoundTripPreservesChildRect)
 
 BOOST_AUTO_TEST_CASE (FootprintSetOrientationRoundTripPreservesChildRect)
 
 BOOST_AUTO_TEST_CASE (FootprintSetOrientationNoOpPreservesChildRect)
 
 BOOST_AUTO_TEST_CASE (FootprintFlipPreservesChildPolyUnderRotation)
 
 BOOST_AUTO_TEST_CASE (FootprintFlipPreservesChildBezierUnderRotation)
 
 BOOST_AUTO_TEST_CASE (FootprintFlipPreservesChildPointUnderRotation)
 
 BOOST_AUTO_TEST_CASE (FlipRoundTripUnderNonUniformScaleDivergedRect)
 
 BOOST_AUTO_TEST_CASE (BezierControlPointsFollowFootprintMove)
 
 BOOST_AUTO_TEST_CASE (BezierControlPointsFollowFootprintRotate)
 
 BOOST_AUTO_TEST_CASE (BezierBoardCoordsCorrectAfterRotation)
 
 BOOST_AUTO_TEST_CASE (BezierFromParserHasCorrectBoardCoords)
 
 BOOST_AUTO_TEST_CASE (PolyFromParserHasCorrectBoardCoords)
 
 BOOST_AUTO_TEST_CASE (PolyFollowsFootprintRotate)
 
 BOOST_AUTO_TEST_CASE (PolyFollowsFootprintMove)
 
 BOOST_AUTO_TEST_CASE (PadOrientationLibFrameFollowsFootprintRotate)
 
 BOOST_AUTO_TEST_CASE (PCBTextAngleLibFrameFollowsFootprintRotate)
 
 BOOST_AUTO_TEST_CASE (PCBTextBoxAngleLibFrameFollowsFootprintRotate)
 
 BOOST_AUTO_TEST_CASE (PCBTextBoxAngleLibFrameSurvivesFlipRoundTrip)
 
 BOOST_AUTO_TEST_CASE (DimensionFollowsFootprintScale)
 
 BOOST_AUTO_TEST_CASE (DimensionAngleLibFrameFollowsFootprintRotate)
 
 BOOST_AUTO_TEST_CASE (DimensionLibCoordsSurviveFootprintRotate)
 
 BOOST_AUTO_TEST_CASE (BarcodeFollowsFootprintRotate)
 
 BOOST_AUTO_TEST_CASE (BarcodeFollowsFootprintMove)
 
 BOOST_AUTO_TEST_CASE (BarcodeFlipPreservesBoardAngleDelta)
 
 BOOST_AUTO_TEST_CASE (BarcodeSurvivesFootprintFlipRoundTrip)
 
 BOOST_AUTO_TEST_CASE (DimensionLibCoordsSurviveFootprintFlipRoundTrip)
 
 BOOST_FIXTURE_TEST_CASE (StandaloneRectangleNonCardinalRotationSurvivesSaveLoad, BOARD_FIXTURE)
 A standalone rectangle rotated by a non-cardinal angle should keep that orientation when saved and reloaded.
 
 BOOST_AUTO_TEST_CASE (MoveAnchorMovesPointsLikeOtherChildren)
 
 BOOST_AUTO_TEST_CASE (FlipNonCardinalKeepsPadAndShapeCoincident)
 
 BOOST_AUTO_TEST_CASE (FlipBarcodeAngleMatchesTextOnRotatedFootprint)
 
static FOOTPRINTbuildCoincidentFootprint (BOARD &aBoard, const EDA_ANGLE &aOrient, double aScaleX, double aScaleY, const VECTOR2I &aCoincident, PAD *&aPad, PCB_SHAPE *&aSeg, PCB_TEXT *&aTxt, PCB_POINT *&aPt)
 
static void CHECK_ALL_COINCIDENT (PAD *aPad, PCB_SHAPE *aSeg, PCB_TEXT *aTxt, PCB_POINT *aPt, const std::string &aWhen)
 
 BOOST_AUTO_TEST_CASE (RoundTripPreservesChildGeometryScaledRotated)
 
 BOOST_AUTO_TEST_CASE (RotateAndMoveKeepChildrenCoincident)
 
 BOOST_AUTO_TEST_CASE (FlipLeftRightKeepsChildrenCoincident)
 
 BOOST_AUTO_TEST_CASE (CloneKeepsChildGeometryScaledRotated)
 
 BOOST_AUTO_TEST_CASE (DoubleFlipIsIdentityScaledRotated)
 
 BOOST_AUTO_TEST_CASE (ScalarAttributesStableAcrossSaveLoadUnderScale)
 
 BOOST_AUTO_TEST_CASE (EllipseRadiusEditSurvivesRebakeUnderNonUniformScale)
 
 BOOST_AUTO_TEST_CASE (ScaledTextGlyphShapeFollowsScale)
 
 BOOST_AUTO_TEST_CASE (TextBoxScalarAttributesStableAcrossSaveLoadUnderScale)
 
static PCB_TABLEbuildLibTable (FOOTPRINT *aFp)
 
static void checkTableSane (PCB_TABLE *aTable, const VECTOR2I &aNearPos)
 
 BOOST_AUTO_TEST_CASE (PolyTextBoxRebakeDoesNotOverflowOnStaleStartEnd)
 
 BOOST_AUTO_TEST_CASE (RotatedTableSurvivesNonUniformScale)
 
 BOOST_AUTO_TEST_CASE (TableInRotatedFootprintStaysSane)
 
 BOOST_FIXTURE_TEST_CASE (TableInNonCardinalRotatedFootprintSurvivesSaveLoad, BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (LegacyEmbeddedTableInRotatedFootprintLoads, BOARD_FIXTURE)
 
 BOOST_AUTO_TEST_CASE (TableScalesWithFootprint)
 
 BOOST_AUTO_TEST_CASE (CustomPadShapeScalesWithFootprint)
 

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/97]

◆ BOOST_AUTO_TEST_CASE() [2/97]

◆ BOOST_AUTO_TEST_CASE() [3/97]

◆ BOOST_AUTO_TEST_CASE() [4/97]

◆ BOOST_AUTO_TEST_CASE() [5/97]

◆ BOOST_AUTO_TEST_CASE() [6/97]

◆ BOOST_AUTO_TEST_CASE() [7/97]

◆ BOOST_AUTO_TEST_CASE() [8/97]

◆ BOOST_AUTO_TEST_CASE() [9/97]

◆ BOOST_AUTO_TEST_CASE() [10/97]

BOOST_AUTO_TEST_CASE ( CirclePadStaysCircularUnderNonUniformScale )

◆ BOOST_AUTO_TEST_CASE() [11/97]

BOOST_AUTO_TEST_CASE ( CircleToEllipseRotatesWithParent )

◆ BOOST_AUTO_TEST_CASE() [12/97]

BOOST_AUTO_TEST_CASE ( CloneKeepsChildGeometryScaledRotated )

◆ BOOST_AUTO_TEST_CASE() [13/97]

BOOST_AUTO_TEST_CASE ( CopyPreservesTransform )

◆ BOOST_AUTO_TEST_CASE() [14/97]

◆ BOOST_AUTO_TEST_CASE() [15/97]

BOOST_AUTO_TEST_CASE ( DefaultIsIdentity )

◆ BOOST_AUTO_TEST_CASE() [16/97]

◆ BOOST_AUTO_TEST_CASE() [17/97]

◆ BOOST_AUTO_TEST_CASE() [18/97]

◆ BOOST_AUTO_TEST_CASE() [19/97]

◆ BOOST_AUTO_TEST_CASE() [20/97]

◆ BOOST_AUTO_TEST_CASE() [21/97]

◆ BOOST_AUTO_TEST_CASE() [22/97]

◆ BOOST_AUTO_TEST_CASE() [23/97]

BOOST_AUTO_TEST_CASE ( FlipLeftRightKeepsChildrenCoincident )

◆ BOOST_AUTO_TEST_CASE() [24/97]

◆ BOOST_AUTO_TEST_CASE() [25/97]

◆ BOOST_AUTO_TEST_CASE() [26/97]

◆ BOOST_AUTO_TEST_CASE() [27/97]

◆ BOOST_AUTO_TEST_CASE() [28/97]

◆ BOOST_AUTO_TEST_CASE() [29/97]

◆ BOOST_AUTO_TEST_CASE() [30/97]

◆ BOOST_AUTO_TEST_CASE() [31/97]

◆ BOOST_AUTO_TEST_CASE() [32/97]

◆ BOOST_AUTO_TEST_CASE() [33/97]

◆ BOOST_AUTO_TEST_CASE() [34/97]

◆ BOOST_AUTO_TEST_CASE() [35/97]

◆ BOOST_AUTO_TEST_CASE() [36/97]

◆ BOOST_AUTO_TEST_CASE() [37/97]

◆ BOOST_AUTO_TEST_CASE() [38/97]

◆ BOOST_AUTO_TEST_CASE() [39/97]

◆ BOOST_AUTO_TEST_CASE() [40/97]

◆ BOOST_AUTO_TEST_CASE() [41/97]

◆ BOOST_AUTO_TEST_CASE() [42/97]

◆ BOOST_AUTO_TEST_CASE() [43/97]

◆ BOOST_AUTO_TEST_CASE() [44/97]

◆ BOOST_AUTO_TEST_CASE() [45/97]

◆ BOOST_AUTO_TEST_CASE() [46/97]

◆ BOOST_AUTO_TEST_CASE() [47/97]

BOOST_AUTO_TEST_CASE ( NonUniformScalePromotesCircleToEllipse )

◆ BOOST_AUTO_TEST_CASE() [48/97]

BOOST_AUTO_TEST_CASE ( NonUniformScaleSwapsAxesWhenMinorWouldExceedMajor )

◆ BOOST_AUTO_TEST_CASE() [49/97]

BOOST_AUTO_TEST_CASE ( PadBBoxFollowsFootprintMove )

◆ BOOST_AUTO_TEST_CASE() [50/97]

◆ BOOST_AUTO_TEST_CASE() [51/97]

◆ BOOST_AUTO_TEST_CASE() [52/97]

BOOST_AUTO_TEST_CASE ( PadOrientationLibFrameFollowsFootprintRotate )

◆ BOOST_AUTO_TEST_CASE() [53/97]

◆ BOOST_AUTO_TEST_CASE() [54/97]

◆ BOOST_AUTO_TEST_CASE() [55/97]

◆ BOOST_AUTO_TEST_CASE() [56/97]

◆ BOOST_AUTO_TEST_CASE() [57/97]

BOOST_AUTO_TEST_CASE ( PCBTextAngleLibFrameFollowsFootprintRotate )

◆ BOOST_AUTO_TEST_CASE() [58/97]

◆ BOOST_AUTO_TEST_CASE() [59/97]

◆ BOOST_AUTO_TEST_CASE() [60/97]

BOOST_AUTO_TEST_CASE ( PCBTextSizeFollowsFootprintScale )

◆ BOOST_AUTO_TEST_CASE() [61/97]

◆ BOOST_AUTO_TEST_CASE() [62/97]

◆ BOOST_AUTO_TEST_CASE() [63/97]

◆ BOOST_AUTO_TEST_CASE() [64/97]

◆ BOOST_AUTO_TEST_CASE() [65/97]

◆ BOOST_AUTO_TEST_CASE() [66/97]

◆ BOOST_AUTO_TEST_CASE() [67/97]

◆ BOOST_AUTO_TEST_CASE() [68/97]

◆ BOOST_AUTO_TEST_CASE() [69/97]

◆ BOOST_AUTO_TEST_CASE() [70/97]

◆ BOOST_AUTO_TEST_CASE() [71/97]

◆ BOOST_AUTO_TEST_CASE() [72/97]

◆ BOOST_AUTO_TEST_CASE() [73/97]

BOOST_AUTO_TEST_CASE ( RotateUpdatesTransform )

◆ BOOST_AUTO_TEST_CASE() [74/97]

◆ BOOST_AUTO_TEST_CASE() [75/97]

◆ BOOST_AUTO_TEST_CASE() [76/97]

◆ BOOST_AUTO_TEST_CASE() [77/97]

BOOST_AUTO_TEST_CASE ( SetLayerUpdatesFlipped )

◆ BOOST_AUTO_TEST_CASE() [78/97]

BOOST_AUTO_TEST_CASE ( SetOrientationUpdatesTransform )

◆ BOOST_AUTO_TEST_CASE() [79/97]

BOOST_AUTO_TEST_CASE ( SetPositionUpdatesTransform )

◆ BOOST_AUTO_TEST_CASE() [80/97]

◆ BOOST_AUTO_TEST_CASE() [81/97]

◆ BOOST_AUTO_TEST_CASE() [82/97]

◆ BOOST_AUTO_TEST_CASE() [83/97]

◆ BOOST_AUTO_TEST_CASE() [84/97]

◆ BOOST_AUTO_TEST_CASE() [85/97]

◆ BOOST_AUTO_TEST_CASE() [86/97]

◆ BOOST_AUTO_TEST_CASE() [87/97]

◆ BOOST_AUTO_TEST_CASE() [88/97]

◆ BOOST_AUTO_TEST_CASE() [89/97]

BOOST_AUTO_TEST_CASE ( UniformRescaleRestoresCircle )

◆ BOOST_AUTO_TEST_CASE() [90/97]

◆ BOOST_AUTO_TEST_CASE() [91/97]

◆ BOOST_AUTO_TEST_CASE() [92/97]

◆ BOOST_AUTO_TEST_CASE() [93/97]

◆ BOOST_AUTO_TEST_CASE() [94/97]

◆ BOOST_AUTO_TEST_CASE() [95/97]

◆ BOOST_AUTO_TEST_CASE() [96/97]

◆ BOOST_AUTO_TEST_CASE() [97/97]

◆ BOOST_FIXTURE_TEST_CASE() [1/41]

◆ BOOST_FIXTURE_TEST_CASE() [2/41]

◆ BOOST_FIXTURE_TEST_CASE() [3/41]

◆ BOOST_FIXTURE_TEST_CASE() [4/41]

◆ BOOST_FIXTURE_TEST_CASE() [5/41]

BOOST_FIXTURE_TEST_CASE ( LegacyEmbeddedTableInRotatedFootprintLoads ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [6/41]

◆ BOOST_FIXTURE_TEST_CASE() [7/41]

◆ BOOST_FIXTURE_TEST_CASE() [8/41]

BOOST_FIXTURE_TEST_CASE ( PadLibPosMirrorAfterMutation ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [9/41]

BOOST_FIXTURE_TEST_CASE ( PadLibPosMirrorOnLoad ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [10/41]

◆ BOOST_FIXTURE_TEST_CASE() [11/41]

◆ BOOST_FIXTURE_TEST_CASE() [12/41]

BOOST_FIXTURE_TEST_CASE ( PadTransformInvariantAfterMutation ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [13/41]

BOOST_FIXTURE_TEST_CASE ( PadTransformInvariantOnLoadedBoard ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [14/41]

◆ BOOST_FIXTURE_TEST_CASE() [15/41]

◆ BOOST_FIXTURE_TEST_CASE() [16/41]

◆ BOOST_FIXTURE_TEST_CASE() [17/41]

◆ BOOST_FIXTURE_TEST_CASE() [18/41]

◆ BOOST_FIXTURE_TEST_CASE() [19/41]

◆ BOOST_FIXTURE_TEST_CASE() [20/41]

◆ BOOST_FIXTURE_TEST_CASE() [21/41]

BOOST_FIXTURE_TEST_CASE ( RescaleAroundPointMovesAnchorByExpectedDelta ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [22/41]

◆ BOOST_FIXTURE_TEST_CASE() [23/41]

◆ BOOST_FIXTURE_TEST_CASE() [24/41]

◆ BOOST_FIXTURE_TEST_CASE() [25/41]

◆ BOOST_FIXTURE_TEST_CASE() [26/41]

◆ BOOST_FIXTURE_TEST_CASE() [27/41]

◆ BOOST_FIXTURE_TEST_CASE() [28/41]

BOOST_FIXTURE_TEST_CASE ( SetTransformScaleInvalidatesCourtyardCache ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [29/41]

◆ BOOST_FIXTURE_TEST_CASE() [30/41]

◆ BOOST_FIXTURE_TEST_CASE() [31/41]

BOOST_FIXTURE_TEST_CASE ( SetTransformScaleScalesPadAndDrillSize ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [32/41]

◆ BOOST_FIXTURE_TEST_CASE() [33/41]

◆ BOOST_FIXTURE_TEST_CASE() [34/41]

BOOST_FIXTURE_TEST_CASE ( ShapeLibPosMirrorAfterMutation ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [35/41]

BOOST_FIXTURE_TEST_CASE ( ShapeLibPosMirrorOnLoad ,
BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [36/41]

◆ BOOST_FIXTURE_TEST_CASE() [37/41]

BOOST_FIXTURE_TEST_CASE ( StandaloneRectangleNonCardinalRotationSurvivesSaveLoad ,
BOARD_FIXTURE  )

A standalone rectangle rotated by a non-cardinal angle should keep that orientation when saved and reloaded.

The rectangle converts to a polygon on rotation, which is the on-disk form that preserves the tilt.

Definition at line 3979 of file test_footprint_transform_sync.cpp.

References APPEND, BOOST_CHECK_EQUAL(), BOOST_REQUIRE(), SHAPE_LINE_CHAIN::CPoints(), DEGREES_T, KI_TEST::DumpBoardToFile(), F_SilkS, EDA_SHAPE::GetPolyShape(), EDA_SHAPE::GetShape(), KI_TEST::LoadBoard(), SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), POLY, KI_TEST::ReadBoardFromFileOrStream(), RECTANGLE, PCB_SHAPE::Rotate(), PCB_SHAPE::SetEnd(), PCB_SHAPE::SetLayer(), and PCB_SHAPE::SetStart().

◆ BOOST_FIXTURE_TEST_CASE() [38/41]

◆ BOOST_FIXTURE_TEST_CASE() [39/41]

◆ BOOST_FIXTURE_TEST_CASE() [40/41]

◆ BOOST_FIXTURE_TEST_CASE() [41/41]

◆ buildCoincidentFootprint()

◆ buildLibTable()

◆ CHECK_ALL_COINCIDENT()

static void CHECK_ALL_COINCIDENT ( PAD * aPad,
PCB_SHAPE * aSeg,
PCB_TEXT * aTxt,
PCB_POINT * aPt,
const std::string & aWhen )
static

◆ CHECK_PAD_LIBPOS_MIRROR()

◆ CHECK_SHAPE_LIBPOS_MIRROR()

◆ CHECK_TRANSFORM_MATCHES_LEGACY()

◆ CHECK_TRANSFORM_PAD_INVARIANT()

◆ checkTableSane()

◆ seedSquareLibOutline()