1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
|
diff -Ncr src/bin/idraw/idarrows.c src/bin/idraw/idarrows.c
*** src/bin/idraw/idarrows.c Sat Feb 6 19:11:32 1999
--- src/bin/idraw/idarrows.c Sat Feb 6 19:05:49 1999
***************
*** 295,311 ****
}
boolean ArrowMultiLine::contains (PointObj& po, Graphic* gs) {
! return
! SF_MultiLine::contains(po, gs) ||
! Head() && ArrowheadContains(_head, po, gs) ||
! Tail() && ArrowheadContains(_tail, po, gs);
}
boolean ArrowMultiLine::intersects (BoxObj& bo, Graphic* gs) {
! return
! SF_MultiLine::intersects(bo, gs) ||
! Head() && ArrowheadIntersects(_head, bo, gs) ||
! Tail() && ArrowheadIntersects(_tail, bo, gs);
}
void ArrowMultiLine::draw (Canvas* c, Graphic* gs) {
--- 295,331 ----
}
boolean ArrowMultiLine::contains (PointObj& po, Graphic* gs) {
! PSPattern *pat;
! boolean ret;
!
! if (Head() || Tail()) {
! pat = gs->GetPattern();
! gs->SetPattern(psnonepat);
! }
! ret = (SF_MultiLine::contains(po, gs)
! || (Head() && ArrowheadContains(_head, po, gs))
! || (Tail() && ArrowheadContains(_tail, po, gs)));
! if (Head() || Tail()) {
! gs->SetPattern(pat);
! }
! return ret;
}
boolean ArrowMultiLine::intersects (BoxObj& bo, Graphic* gs) {
! PSPattern *pat;
! boolean ret;
!
! if (Head() || Tail()) {
! pat = gs->GetPattern();
! gs->SetPattern(psnonepat);
! }
! ret = (SF_MultiLine::intersects(bo, gs)
! || (Head() && ArrowheadIntersects(_head, bo, gs))
! || (Tail() && ArrowheadIntersects(_tail, bo, gs)));
! if (Head() || Tail()) {
! gs->SetPattern(pat);
! }
! return ret;
}
void ArrowMultiLine::draw (Canvas* c, Graphic* gs) {
***************
*** 486,502 ****
}
boolean ArrowOpenBSpline::contains (PointObj& po, Graphic* gs) {
! return
! SFH_OpenBSpline::contains(po, gs) ||
! Head() && ArrowheadContains(_head, po, gs) ||
! Tail() && ArrowheadContains(_tail, po, gs);
}
boolean ArrowOpenBSpline::intersects (BoxObj& bo, Graphic* gs) {
! return
! SFH_OpenBSpline::intersects(bo, gs) ||
! Head() && ArrowheadIntersects(_head, bo, gs) ||
! Tail() && ArrowheadIntersects(_tail, bo, gs);
}
void ArrowOpenBSpline::draw (Canvas* c, Graphic* gs) {
--- 506,542 ----
}
boolean ArrowOpenBSpline::contains (PointObj& po, Graphic* gs) {
! PSPattern *pat;
! boolean ret;
!
! if (Head() || Tail()) {
! pat = gs->GetPattern();
! gs->SetPattern(psnonepat);
! }
! ret = (SFH_OpenBSpline::contains(po, gs)
! || (Head() && ArrowheadContains(_head, po, gs))
! || (Tail() && ArrowheadContains(_tail, po, gs)));
! if (Head() || Tail()) {
! gs->SetPattern(pat);
! }
! return ret;
}
boolean ArrowOpenBSpline::intersects (BoxObj& bo, Graphic* gs) {
! PSPattern *pat;
! boolean ret;
!
! if (Head() || Tail()) {
! pat = gs->GetPattern();
! gs->SetPattern(psnonepat);
! }
! ret = (SFH_OpenBSpline::intersects(bo, gs)
! || (Head() && ArrowheadIntersects(_head, bo, gs))
! || (Tail() && ArrowheadIntersects(_tail, bo, gs)));
! if (Head() || Tail()) {
! gs->SetPattern(pat);
! }
! return ret;
}
void ArrowOpenBSpline::draw (Canvas* c, Graphic* gs) {
|