KiCad PCB EDA Suite
Loading...
Searching...
No Matches
test_arc_construction.cpp File Reference
#include <qa_utils/wx_utils/unit_test_utils.h>
#include <cmath>
#include <geometry/arc_construction.h>
#include <math/util.h>

Go to the source code of this file.

Functions

 BOOST_AUTO_TEST_CASE (ProjectLandsOnBisector)
 
 BOOST_AUTO_TEST_CASE (ThroughPointsQuarterCircle)
 
 BOOST_AUTO_TEST_CASE (ThroughPointsMajorArcMidIsHalfway)
 
 BOOST_AUTO_TEST_CASE (ThroughPointsDirectionFollowsOnArcPoint)
 
 BOOST_AUTO_TEST_CASE (ThroughPointsMirroredOnArcPointMirrorsMid)
 
 BOOST_AUTO_TEST_CASE (ThroughPointsDegenerateIsInvalid)
 
 BOOST_AUTO_TEST_CASE (ThroughPointsVeryShallowArc)
 
 BOOST_AUTO_TEST_CASE (ThroughPointsOneNanometerSagitta)
 
 BOOST_AUTO_TEST_CASE (ThroughPointsNearIntegerLimits)
 
 BOOST_AUTO_TEST_CASE (OppositeCornersNearBillionUnits)
 
 BOOST_AUTO_TEST_CASE (MidDragProjectsOntoBisector)
 
 BOOST_AUTO_TEST_CASE (MidDragDiagonalChordIsEquidistant)
 
 BOOST_AUTO_TEST_CASE (MidDragOnChordIsInvalid)
 
 BOOST_AUTO_TEST_CASE (CenterDragMinorIsDefault)
 
 BOOST_AUTO_TEST_CASE (CenterDragMajorSweepsPastHalfTurn)
 
 BOOST_AUTO_TEST_CASE (CenterDragOnChordIsSemicircle)
 
 BOOST_AUTO_TEST_CASE (CenterDragDegenerateAndOverflowAreInvalid)
 
 BOOST_AUTO_TEST_CASE (TangentStartDirectionIsParallelOverEndSweep)
 
 BOOST_AUTO_TEST_CASE (TangentSweepIsTwiceTheChordAngle)
 
 BOOST_AUTO_TEST_CASE (TangentSideFollowsEndSide)
 
 BOOST_AUTO_TEST_CASE (TangentDegenerateIsInvalid)
 

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/21]

BOOST_AUTO_TEST_CASE ( CenterDragDegenerateAndOverflowAreInvalid )

◆ BOOST_AUTO_TEST_CASE() [2/21]

BOOST_AUTO_TEST_CASE ( CenterDragMajorSweepsPastHalfTurn )

◆ BOOST_AUTO_TEST_CASE() [3/21]

BOOST_AUTO_TEST_CASE ( CenterDragMinorIsDefault )

◆ BOOST_AUTO_TEST_CASE() [4/21]

BOOST_AUTO_TEST_CASE ( CenterDragOnChordIsSemicircle )

◆ BOOST_AUTO_TEST_CASE() [5/21]

BOOST_AUTO_TEST_CASE ( MidDragDiagonalChordIsEquidistant )

Definition at line 256 of file test_arc_construction.cpp.

References KIGEOM::ArcFromStartEndMidDrag(), and end.

◆ BOOST_AUTO_TEST_CASE() [6/21]

BOOST_AUTO_TEST_CASE ( MidDragOnChordIsInvalid )

◆ BOOST_AUTO_TEST_CASE() [7/21]

BOOST_AUTO_TEST_CASE ( MidDragProjectsOntoBisector )

◆ BOOST_AUTO_TEST_CASE() [8/21]

◆ BOOST_AUTO_TEST_CASE() [9/21]

BOOST_AUTO_TEST_CASE ( ProjectLandsOnBisector )

◆ BOOST_AUTO_TEST_CASE() [10/21]

BOOST_AUTO_TEST_CASE ( TangentDegenerateIsInvalid )

◆ BOOST_AUTO_TEST_CASE() [11/21]

BOOST_AUTO_TEST_CASE ( TangentSideFollowsEndSide )

◆ BOOST_AUTO_TEST_CASE() [12/21]

◆ BOOST_AUTO_TEST_CASE() [13/21]

BOOST_AUTO_TEST_CASE ( TangentSweepIsTwiceTheChordAngle )

Definition at line 373 of file test_arc_construction.cpp.

References KIGEOM::ArcFromStartTangentEnd().

◆ BOOST_AUTO_TEST_CASE() [14/21]

BOOST_AUTO_TEST_CASE ( ThroughPointsDegenerateIsInvalid )

◆ BOOST_AUTO_TEST_CASE() [15/21]

◆ BOOST_AUTO_TEST_CASE() [16/21]

BOOST_AUTO_TEST_CASE ( ThroughPointsMajorArcMidIsHalfway )

◆ BOOST_AUTO_TEST_CASE() [17/21]

BOOST_AUTO_TEST_CASE ( ThroughPointsMirroredOnArcPointMirrorsMid )

Definition at line 143 of file test_arc_construction.cpp.

References KIGEOM::ArcThroughPoints(), BOOST_CHECK_EQUAL(), down, end, and up.

◆ BOOST_AUTO_TEST_CASE() [18/21]

BOOST_AUTO_TEST_CASE ( ThroughPointsNearIntegerLimits )

◆ BOOST_AUTO_TEST_CASE() [19/21]

BOOST_AUTO_TEST_CASE ( ThroughPointsOneNanometerSagitta )

◆ BOOST_AUTO_TEST_CASE() [20/21]

BOOST_AUTO_TEST_CASE ( ThroughPointsQuarterCircle )

◆ BOOST_AUTO_TEST_CASE() [21/21]

BOOST_AUTO_TEST_CASE ( ThroughPointsVeryShallowArc )