Lines Matching defs:point
18 /// sequence into another. The main entry point for that is the
57 class point
65 point()
69 point(int x, int y)
73 point(const point& p)
120 operator!=(const point& o) const
124 operator==(const point& o) const
128 operator<(const point& o) const
132 operator>(const point& o) const
136 operator<=(const point& o) const
140 operator>=(const point& o) const
143 point
145 {return point(x() + val, y() + val);}
147 point
149 {return point(x() - val, y() - val);}
151 point&
158 point&
162 point&
166 point&
170 point
173 point tmp(*this);
178 point
181 point tmp(*this);
186 point&
193 point&
194 operator=(const point& p)
218 };// end point
226 /// the snake. This is given by the snake::begin() method. This point
230 /// The end point of the non-diagonal edge is the intermediate point
232 /// This point is what is referred to as "the begining of the snake"
235 /// The end point of the first diagonal edge is given by the
238 /// The end point of the last diagonal edge is given by the
241 /// same point; snake::diagonal_start() contains an empty point (i.e,
242 /// a point for which point::is_empty() returns true).
245 point begin_, intermediate_, diagonal_start_, end_;
257 /// @param b the beginning point of the snake. That is, the
258 /// starting point of the non-diagonal edge.
260 /// @param i the intermediate point of the snake. That is, the end
261 /// point of the non-diagonal edge.
263 /// @param e the end point of the snake. That is the end point of
265 snake(const point& b,
266 const point& i,
267 const point& e)
274 /// @param b the beginning point of the snake. That is, the
275 /// starting point of the non-diagonal edge.
277 /// @param i the intermediate point of the snake. That is, the end
278 /// point of the non-diagonal edge.
283 /// @param e the end point of the snake. That is the end point of
285 snake(const point& b,
286 const point& i,
287 const point& d,
288 const point& e)
294 /// Getter for the starting point of the non-diagonal edge of the
297 /// @return the starting point of the non-diagonal edge of the snake
298 const point&
302 /// Getter for the starting point of the non-diagonal edge of the
303 /// snake, aka begin point.
305 ///@param p the new begin point.
307 begin(const point& p)
310 /// Getter for the end point of the non-diagonal edge of the snake.
312 /// @return the end point of the non-diagonal edge of the snake
313 const point&
317 /// Setter for the end point of the non-diagonal edge of the snake,
318 /// aka intermediate point.
320 /// @param p the new intermediate point.
322 intermediate(const point& p)
325 /// Getter for the end point of the first diagonal edge, aka
326 /// diagonal start point. Note that if the snake has no diagonal
327 /// edge, this point is empty.
329 /// @return the end point of the first diagonal edge.
330 const point&
334 /// Setter for the end point of the first diagonal edge, aka
335 /// diagonal start point.
339 diagonal_start(const point& p)
342 /// Getter for the end point of the last diagonal edge, aka snake
343 /// end point. Note that if the snake has no diagonal edge, this
344 /// point is equal to the intermediate point.
346 /// @return the end point of the last diagonal edge
347 const point&
351 /// Setter for the end point of the last diagonal edge, aka snake
352 /// end point. Note that if the snake has no diagonal edge, this
353 /// point is equal to the intermediate point.
355 end(const point& p)
360 /// @param b the new snake begin point
362 /// @param i the new snake intermediate point
364 /// @param e the new snake end point
366 set(const point& b, const point&i, const point&e)
376 /// @param b the new snake begin point
378 /// @param i the new snake intermediate point
380 /// @param d the new diagonal start point
382 /// @param e the new snake end point
384 set(const point& b, const point&i, const point& d, const point&e)
558 /// - An insertion point: this is the index (starting at 0) of the
563 /// after the insertion point.
708 point_is_valid_in_graph(point& p,
713 ends_of_furthest_d_paths_overlap(const point& forward_d_path_end,
714 const point& reverse_d_path_end);
833 /// point of the snake is the end point of the furthest path.
849 point begin, intermediate, diag_start, end;
853 // Let's pick the end point of the furthest reaching
858 // So, the abscissa of the end point of the furthest
873 // So the abscissa of the end point of the furthest
884 // This is the point where we first touch K, when we move
910 // Note the point that we store in v here might be outside the
913 // at this step to be able to compute the value of the point on the
932 /// That is, starting from the point (M,N) of the edit graph.
974 /// point of the snake is the end point of the furthest path.
994 point begin, intermediate, diag_start, end;
998 // Let's pick the end point of the furthest reaching (D-1)-path and
1000 // point of the furthest reaching (D-1)-path is either on
1017 // So the furthest end point is on the k_plus_delta - 1
1046 // Note the point that we store in v here might be outside the
1049 // at this step to be able to compute the value of the point on the
1065 /// Tests if a given point is a match point in an edit graph.
1081 /// @param point the point to test for being a match point.
1083 /// @return true iff \a point is a match point.
1090 const point& point)
1094 if (point.x() < 0
1095 || point.x () >= a_size
1096 || point.y() < 0
1097 || point.y() >= b_size)
1100 return (a_begin[point.x()] == b_begin[point.y()]);
1153 // These points below are the top leftmost point and bottom
1155 point first_point(-1, -1), last_point(a_size -1, b_size -1), point_zero(0, 0);
1158 // furthest reaching point on diagonal k == 0; For that, we need the
1160 // k == 1 (diagonal 1), the point in the edit graph is (-1,-2).
1161 // That way, to get the furthest reaching point on diagonal 0 (k ==
1169 // where they are centered on zero), we set the initial point to
1171 // to reach diagonal delta from the point (a_size, b_size - 1) on
1174 // point value the algorithm expects for k == 0 in the reverse case.
1201 point reverse_end;
1236 point forward_end;
1279 out << "diagonal point(s): ";
1342 // Set a fictitious (-1,-2) point into v[1], to find the furthest
1350 point end;
1423 snake_end_points(const snake& s, point&, point&);
1488 vector<point>& lcs,
1524 vector<point> trace; // the trace of the edit graph. Read the paper
1546 point p(x, y);
1576 point px, pu;
1604 point p(x, y);
1611 point p = snak.intermediate();
1690 vector<point>& lcs,
1757 vector<point>& lcs,
1810 vector<point>& lcs,
1853 vector<point>& lcs,
1916 vector<point> lcs;