comparison doodle/dia/grid_layer.d @ 70:0e61702c6ea6

Checkpoint
author "David Bryant <bagnose@gmail.com>"
date Sat, 14 Aug 2010 20:05:55 +0930
parents c63719604adb
children 6f2525e170f2
comparison
equal deleted inserted replaced
69:d540f7e4af9e 70:0e61702c6ea6
44 modelCr.setSourceRgba(0.0, 0.0, 0.0, 0.3); 44 modelCr.setSourceRgba(0.0, 0.0, 0.0, 0.3);
45 modelCr.setLineWidth(0.5); 45 modelCr.setLineWidth(0.5);
46 46
47 { 47 {
48 // vertical grid lines 48 // vertical grid lines
49 double x = start(modelDamage.minCorner.x, _spacing); 49 double x = start(modelDamage.corner0.x, _spacing);
50 50
51 for (;;) { 51 for (;;) {
52 vline(modelCr, x, modelDamage.minCorner.y, modelDamage.maxCorner.y); 52 vline(modelCr, x, modelDamage.corner0.y, modelDamage.corner1.y);
53 53
54 // Ensure 1 pixel wide FIXME is this naughty? We are sneaking 54 // Ensure 1 pixel wide FIXME is this naughty? We are sneaking
55 // through cairo to mix model and pixel coordinates... 55 // through cairo to mix model and pixel coordinates...
56 modelCr.save(); { 56 modelCr.save(); {
57 modelCr.scale(1.0 / xx, 1.0 / yy); 57 modelCr.scale(1.0 / xx, 1.0 / yy);
58 modelCr.stroke(); 58 modelCr.stroke();
59 } modelCr.restore(); 59 } modelCr.restore();
60 60
61 if (x > modelDamage.maxCorner.x) { 61 if (x > modelDamage.corner1.x) {
62 break; 62 break;
63 } 63 }
64 64
65 x += _spacing; 65 x += _spacing;
66 } 66 }
67 } 67 }
68 68
69 { 69 {
70 // horizontal grid lines 70 // horizontal grid lines
71 double y = start(modelDamage.minCorner.y, _spacing); 71 double y = start(modelDamage.corner0.y, _spacing);
72 72
73 for (;;) { 73 for (;;) {
74 hline(modelCr, y, modelDamage.minCorner.x, modelDamage.maxCorner.x); 74 hline(modelCr, y, modelDamage.corner0.x, modelDamage.corner1.x);
75 75
76 // FIXME? 76 // FIXME?
77 modelCr.save(); { 77 modelCr.save(); {
78 modelCr.scale(1.0 / xx, 1.0 / yy); 78 modelCr.scale(1.0 / xx, 1.0 / yy);
79 modelCr.stroke(); 79 modelCr.stroke();
80 } modelCr.restore(); 80 } modelCr.restore();
81 81
82 if (y > modelDamage.maxCorner.y) { 82 if (y > modelDamage.corner1.y) {
83 break; 83 break;
84 } 84 }
85 85
86 y += _spacing; 86 y += _spacing;
87 } 87 }