File tree Expand file tree Collapse file tree 3 files changed +29
-47
lines changed
Expand file tree Collapse file tree 3 files changed +29
-47
lines changed Original file line number Diff line number Diff line change 44 Homogr H;
55 H.addScale( 50 );
66 H.addTranslation( 20 ,20 );
7-
8- // grid
9- int g=220 , g0=g/2 ;
10- auto colgrid = img::DrawParams().setColor(g,g,g);
11- auto colgrid0 = img::DrawParams().setColor(g0,g0,g0).setThickness(2 );
12- for (int i=0 ; i<6 ; i++ )
13- {
14- Line2d li ( LineDir::H, i );
15- auto li2 = H*li;
16- if ( i==0 )
17- li2.draw ( img2, colgrid0 );
18- else
19- li2.draw ( img2, colgrid );
20- }
21- for (int i=0 ; i<7 ; i++ )
22- {
23- Line2d li ( LineDir::V, i );
24- auto li2 = H*li;
25- if ( i==0 )
26- li2.draw ( img2, colgrid0 );
27- else
28- li2.draw ( img2, colgrid );
29- }
7+ drawGrid ( img2, H );
308
319 auto r1b = H*r1;
3210 auto r2b = H*r2;
3715 r1b.draw( img2, img::DrawParams().setColor(250 ,0 ,20 ) );
3816 r2b.draw( img2, img::DrawParams().setColor(20 ,0 ,250 ) );
3917
40- // img2.write( std::string(argv[0])+ ".png" );
4118 img2.write( std::string(argv[0 ])+ " .svg" );
4219}
4320
Original file line number Diff line number Diff line change 44 Homogr H;
55 H.addScale( 50 );
66 H.addTranslation( 20 ,20 );
7-
8- // grid
9- int g=220 , g0=g/2 ;
10- auto colgrid = img::DrawParams().setColor(g,g,g);
11- auto colgrid0 = img::DrawParams().setColor(g0,g0,g0).setThickness(2 );
12- for (int i=0 ; i<6 ; i++ )
13- {
14- Line2d li ( LineDir::H, i );
15- auto li2 = H*li;
16- if ( i==0 )
17- li2.draw ( img2, colgrid0 );
18- else
19- li2.draw ( img2, colgrid );
20- }
21- for (int i=0 ; i<7 ; i++ )
22- {
23- Line2d li ( LineDir::V, i );
24- auto li2 = H*li;
25- if ( i==0 )
26- li2.draw ( img2, colgrid0 );
27- else
28- li2.draw ( img2, colgrid );
29- }
7+ drawGrid ( img2, H );
308
319 auto poly1 = H*pl;
3210 auto dp = img::DrawParams().setColor(250 ,0 ,20 ).showPoints(true ).setPointStyle(img::PtStyle::Times).showIndex(true );
Original file line number Diff line number Diff line change 88#define NUMTYPE double
99
1010using namespace h2d ;
11+
12+ template <typename IMG,typename HOMOG>
13+ void drawGrid ( IMG& img, const HOMOG& H )
14+ {
15+ int g=220 , g0=g/2 ;
16+ auto colgrid = img::DrawParams ().setColor (g,g,g);
17+ auto colgrid0 = img::DrawParams ().setColor (g0,g0,g0).setThickness (2 );
18+ for (int i=0 ; i<6 ; i++ )
19+ {
20+ Line2d li ( LineDir::H, i );
21+ auto li2 = H*li;
22+ if ( i==0 )
23+ li2.draw ( img, colgrid0 );
24+ else
25+ li2.draw ( img, colgrid );
26+ }
27+ for (int i=0 ; i<7 ; i++ )
28+ {
29+ Line2d li ( LineDir::V, i );
30+ auto li2 = H*li;
31+ if ( i==0 )
32+ li2.draw ( img, colgrid0 );
33+ else
34+ li2.draw ( img, colgrid );
35+ }
36+ }
37+
1138int main ( int argc, const char ** argv )
1239{
1340 img::Image<img::SvgImage> img2 (350 ,400 );
You can’t perform that action at this time.
0 commit comments