KiCad PCB EDA Suite
test_shape_line_chain.cpp File Reference

Go to the source code of this file.

Functions

 BOOST_AUTO_TEST_CASE (ArcToPolyline)
 

Function Documentation

◆ BOOST_AUTO_TEST_CASE()

BOOST_AUTO_TEST_CASE ( ArcToPolyline  )

Definition at line 35 of file test_shape_line_chain.cpp.

36 {
37  SHAPE_LINE_CHAIN base_chain( { VECTOR2I( 0, 0 ), VECTOR2I( 0, 1000 ), VECTOR2I( 1000, 0 ) } );
38 
39  SHAPE_LINE_CHAIN chain_insert( {
40  VECTOR2I( 0, 1500 ),
41  VECTOR2I( 1500, 1500 ),
42  VECTOR2I( 1500, 0 ),
43  } );
44 
45  SHAPE_LINE_CHAIN arc_insert1( SHAPE_ARC( VECTOR2I( 0, -100 ), VECTOR2I( 0, -200 ), 1800 ) );
46 
47  SHAPE_LINE_CHAIN arc_insert2( SHAPE_ARC( VECTOR2I( 0, 500 ), VECTOR2I( 0, 400 ), 1800 ) );
48 
49  BOOST_CHECK_EQUAL( base_chain.CShapes().size(), base_chain.CPoints().size() );
50  BOOST_CHECK_EQUAL( arc_insert1.CShapes().size(), arc_insert1.CPoints().size() );
51  BOOST_CHECK_EQUAL( arc_insert2.CShapes().size(), arc_insert2.CPoints().size() );
52 
53  base_chain.Insert( 0, SHAPE_ARC( VECTOR2I( 0, -100 ), VECTOR2I( 0, -200 ), 1800 ) );
54 
55  BOOST_CHECK_EQUAL( base_chain.CShapes().size(), base_chain.CPoints().size() );
56 
57  base_chain.Replace( 0, 2, chain_insert );
58  BOOST_CHECK_EQUAL( base_chain.CShapes().size(), base_chain.CPoints().size() );
59 }
VECTOR2< int > VECTOR2I
Definition: vector2d.h:623
SHAPE_LINE_CHAIN.

References SHAPE_LINE_CHAIN::CPoints(), and SHAPE_LINE_CHAIN::CShapes().