diff --git a/include/mapnik/markers_placements/interior.hpp b/include/mapnik/markers_placements/interior.hpp index 6d36c44ae..395ee07a1 100644 --- a/include/mapnik/markers_placements/interior.hpp +++ b/include/mapnik/markers_placements/interior.hpp @@ -37,6 +37,10 @@ public: { } + markers_interior_placement(markers_interior_placement && rhs) + : markers_point_placement(std::move(rhs)) + {} + bool get_point(double &x, double &y, double &angle, bool ignore_placement) { if (this->done_) diff --git a/include/mapnik/markers_placements/line.hpp b/include/mapnik/markers_placements/line.hpp index 3c829e787..24bb229ec 100644 --- a/include/mapnik/markers_placements/line.hpp +++ b/include/mapnik/markers_placements/line.hpp @@ -25,10 +25,8 @@ #include #include -#include -#include //round - -#include +#include +#include namespace mapnik { @@ -38,29 +36,28 @@ class markers_line_placement : public markers_point_placement public: markers_line_placement(Locator &locator, Detector &detector, markers_placement_params const& params) : markers_point_placement(locator, detector, params), - last_x(0.0), - last_y(0.0), - next_x(0.0), - next_y(0.0), + first_point_(true), spacing_(0.0), marker_width_((params.size * params.tr).width()), - error_(0.0), - spacing_left_(0.0), - marker_nr_(0) + path_(locator) { spacing_ = params.spacing < 1 ? 100 : params.spacing; rewind(); } + markers_line_placement(markers_line_placement && rhs) + : markers_point_placement(std::move(rhs)), + first_point_(std::move(rhs.first_point_)), + spacing_(std::move(rhs.spacing_)), + marker_width_(std::move(rhs.marker_width_)), + path_(std::move(rhs.path_)) + {} + void rewind() { this->locator_.rewind(0); - //Get first point - this->done_ = agg::is_stop(this->locator_.vertex(&next_x, &next_y)); - last_x = next_x; - last_y = next_y; // Force request of new segment - error_ = 0.0; - marker_nr_ = 0; + this->done_ = false; + first_point_ = true; } bool get_point(double &x, double &y, double &angle, bool ignore_placement) @@ -75,159 +72,56 @@ public: return markers_point_placement::get_point(x, y, angle, ignore_placement); } - unsigned cmd; - /* This functions starts at the position of the previous marker, - walks along the path, counting how far it has to go in spacing_left. - If one marker can't be placed at the position it should go to it is - moved a bit. The error is compensated for in the next call to this - function. + double move = spacing_; - error > 0: Marker too near to the end of the path. - error = 0: Perfect position. - error < 0: Marker too near to the beginning of the path. - */ - if (marker_nr_ == 0) + if (first_point_) { - //First marker - marker_nr_++; - spacing_left_ = spacing_ / 2; + if (!path_.next_subpath()) + { + this->done_ = true; + return false; + } + first_point_ = false; + move = spacing_ / 2.0; } - else + + while (path_.forward(move)) { - spacing_left_ = spacing_; - } - spacing_left_ -= error_; - error_ = 0.0; - double max_err_allowed = this->params_.max_error * spacing_; - //Loop exits when a position is found or when no more segments are available - while (true) - { - //Do not place markers too close to the beginning of a segment - if (spacing_left_ < this->marker_width_ / 2) - { - set_spacing_left(this->marker_width_ / 2); //Only moves forward - } - //Error for this marker is too large. Skip to the next position. - if (std::fabs(error_) > max_err_allowed) - { - while (this->error_ > spacing_) - { - error_ -= spacing_; //Avoid moving backwards - } - spacing_left_ += spacing_ - this->error_; - error_ = 0.0; - } - double dx = next_x - last_x; - double dy = next_y - last_y; - double segment_length = std::sqrt(dx * dx + dy * dy); - if (segment_length <= spacing_left_) - { - //Segment is too short to place marker. Find next segment - spacing_left_ -= segment_length; - last_x = next_x; - last_y = next_y; - while (agg::is_move_to(cmd = this->locator_.vertex(&next_x, &next_y))) - { - //Skip over "move" commands - last_x = next_x; - last_y = next_y; - } - if (agg::is_stop(cmd) || cmd == SEG_CLOSE) - { - this->done_ = true; - return false; - } - continue; //Try again - } - /* At this point we know the following things: - - segment_length > spacing_left - - error is small enough - - at least half a marker fits into this segment - */ - //Check if marker really fits in this segment - if (segment_length < this->marker_width_) - { - //Segment to short => Skip this segment - set_spacing_left(segment_length + this->marker_width_/2); //Only moves forward - continue; - } - else if (segment_length - spacing_left_ < this->marker_width_/2) - { - //Segment is long enough, but we are to close to the end - //Note: This function moves backwards. This could lead to an infinite - // loop when another function adds a positive offset. Therefore we - // only move backwards when there is no offset - if (error_ == 0) - { - set_spacing_left(segment_length - this->marker_width_/2, true); - } - else - { - //Skip this segment - set_spacing_left(segment_length + this->marker_width_/2); //Only moves forward - } - continue; //Force checking of max_error constraint - } - angle = std::atan2(dy, dx); - x = last_x + dx * (spacing_left_ / segment_length); - y = last_y + dy * (spacing_left_ / segment_length); - box2d box = this->perform_transform(angle, x, y); - if (this->params_.avoid_edges && !this->detector_.extent().contains(box)) - { - set_spacing_left(spacing_left_ + spacing_ * this->params_.max_error / 10.0); - continue; - } - if (!this->params_.allow_overlap && !this->detector_.has_placement(box)) - { - //10.0 is the approxmiate number of positions tried and choosen arbitrarily - set_spacing_left(spacing_left_ + spacing_ * this->params_.max_error / 10.0); //Only moves forward - continue; - } - if (!ignore_placement) - { - this->detector_.insert(box); - } - last_x = x; - last_y = y; - return true; + tolerance_iterator tolerance_offset(spacing_ * this->params_.max_error, 0.0); + while (tolerance_offset.next()) + { + vertex_cache::scoped_state state(path_); + if (path_.move(tolerance_offset.get()) && (path_.linear_position() + marker_width_ / 2.0) < path_.length()) + { + pixel_position pos = path_.current_position(); + x = pos.x; + y = pos.y; + angle = path_.current_segment_angle(); + box2d box = this->perform_transform(angle, x, y); + if ((this->params_.avoid_edges && !this->detector_.extent().contains(box)) + || (!this->params_.allow_overlap && !this->detector_.has_placement(box))) + { + continue; + } + if (!ignore_placement) + { + this->detector_.insert(box); + } + return true; + } + } } + + this->done_ = true; + + return false; } private: - double last_x; - double last_y; - double next_x; - double next_y; + bool first_point_; double spacing_; double marker_width_; - // If a marker could not be placed at the exact point where it should - // go the next marker's distance will be a bit lower. - double error_; - double spacing_left_; - unsigned marker_nr_; - - // Set spacing_left_, adjusts error_ and performs sanity checks. - void set_spacing_left(double sl, bool allow_negative=false) - { - double delta_error = sl - spacing_left_; - if (!allow_negative && delta_error < 0) - { - MAPNIK_LOG_WARN(markers_line_placement) - << "Unexpected negative error in markers_line_placement. " - "Please file a bug report."; - return; - } -#ifdef MAPNIK_DEBUG - if (delta_error == 0.0) - { - MAPNIK_LOG_WARN(markers_line_placement) - << "Not moving at all in set_spacing_left()! " - "Please file a bug report."; - } -#endif - error_ += delta_error; - spacing_left_ = sl; - } + vertex_cache path_; }; } diff --git a/include/mapnik/markers_placements/point.hpp b/include/mapnik/markers_placements/point.hpp index e9af96f8e..52709b246 100644 --- a/include/mapnik/markers_placements/point.hpp +++ b/include/mapnik/markers_placements/point.hpp @@ -41,7 +41,7 @@ struct markers_placement_params }; template -class markers_point_placement +class markers_point_placement : noncopyable { public: markers_point_placement(Locator &locator, Detector &detector, markers_placement_params const& params) @@ -53,6 +53,14 @@ public: rewind(); } + markers_point_placement(markers_point_placement && rhs) + : locator_(rhs.locator_), + detector_(rhs.detector_), + params_(rhs.params_), + done_(rhs.done_) + {} + + // Start again at first marker. Returns the same list of markers only works when they were NOT added to the detector. void rewind() { diff --git a/include/mapnik/markers_placements/vertext_first.hpp b/include/mapnik/markers_placements/vertext_first.hpp index 8ac11e2b4..9f142e160 100644 --- a/include/mapnik/markers_placements/vertext_first.hpp +++ b/include/mapnik/markers_placements/vertext_first.hpp @@ -36,6 +36,10 @@ public: { } + markers_vertex_first_placement(markers_vertex_first_placement && rhs) + : markers_point_placement(std::move(rhs)) + {} + bool get_point(double &x, double &y, double &angle, bool ignore_placement) { if (this->done_) diff --git a/include/mapnik/markers_placements/vertext_last.hpp b/include/mapnik/markers_placements/vertext_last.hpp index 3268c7c64..456687003 100644 --- a/include/mapnik/markers_placements/vertext_last.hpp +++ b/include/mapnik/markers_placements/vertext_last.hpp @@ -32,7 +32,12 @@ class markers_vertex_last_placement : public markers_point_placement(locator, detector, params) {} + : markers_point_placement(locator, detector, params) + {} + + markers_vertex_last_placement(markers_vertex_last_placement && rhs) + : markers_point_placement(std::move(rhs)) + {} bool get_point(double &x, double &y, double &angle, bool ignore_placement) { diff --git a/include/mapnik/text/placement_finder_impl.hpp b/include/mapnik/text/placement_finder_impl.hpp index 866a09553..9bf7256cf 100644 --- a/include/mapnik/text/placement_finder_impl.hpp +++ b/include/mapnik/text/placement_finder_impl.hpp @@ -28,8 +28,8 @@ #include #include #include -#include -#include +#include +#include // agg #include "agg_conv_clip_polyline.h" diff --git a/include/mapnik/text/tolerance_iterator.hpp b/include/mapnik/tolerance_iterator.hpp similarity index 100% rename from include/mapnik/text/tolerance_iterator.hpp rename to include/mapnik/tolerance_iterator.hpp diff --git a/include/mapnik/text/vertex_cache.hpp b/include/mapnik/vertex_cache.hpp similarity index 99% rename from include/mapnik/text/vertex_cache.hpp rename to include/mapnik/vertex_cache.hpp index 277936032..3c3a57a63 100644 --- a/include/mapnik/text/vertex_cache.hpp +++ b/include/mapnik/vertex_cache.hpp @@ -97,12 +97,14 @@ public: /////////////////////////////////////////////////////////////////////// template vertex_cache(T &path); + vertex_cache(vertex_cache && rhs); double length() const { return current_subpath_->length; } pixel_position const& current_position() const { return current_position_; } double angle(double width=0.); + double current_segment_angle(); double linear_position() const { return position_; } @@ -141,7 +143,6 @@ private: void rewind_subpath(); bool next_segment(); bool previous_segment(); - double current_segment_angle(); void find_line_circle_intersection( double cx, double cy, double radius, double x1, double y1, double x2, double y2, diff --git a/src/build.py b/src/build.py index de04ea3b8..6ccbdb11f 100644 --- a/src/build.py +++ b/src/build.py @@ -204,8 +204,8 @@ source = Split( svg/svg_transform_parser.cpp warp.cpp css_color_grammar.cpp + vertex_cache.cpp text/font_library.cpp - text/vertex_cache.cpp text/text_layout.cpp text/text_line.cpp text/itemizer.cpp diff --git a/src/group/group_symbolizer_helper.cpp b/src/group/group_symbolizer_helper.cpp index faa5e4ae4..6a432e7e1 100644 --- a/src/group/group_symbolizer_helper.cpp +++ b/src/group/group_symbolizer_helper.cpp @@ -29,8 +29,8 @@ #include #include #include -#include -#include +#include +#include //agg #include "agg_conv_clip_polyline.h" diff --git a/src/text/placement_finder.cpp b/src/text/placement_finder.cpp index f63d6db1e..c180c8984 100644 --- a/src/text/placement_finder.cpp +++ b/src/text/placement_finder.cpp @@ -29,7 +29,7 @@ #include #include #include -#include +#include // agg #include "agg_conv_clip_polyline.h" @@ -328,7 +328,9 @@ double placement_finder::normalize_angle(double angle) { angle += 2.0 * M_PI; } - return angle; + // y axis is inverted. + // See note about coordinate systems in placement_finder::find_point_placement(). + return -angle; } double placement_finder::get_spacing(double path_length, double layout_width) const diff --git a/src/text/vertex_cache.cpp b/src/vertex_cache.cpp similarity index 92% rename from src/text/vertex_cache.cpp rename to src/vertex_cache.cpp index 8a2fb2b89..319b9b6df 100644 --- a/src/text/vertex_cache.cpp +++ b/src/vertex_cache.cpp @@ -21,23 +21,36 @@ *****************************************************************************/ // mapnik #include -#include +#include #include #include namespace mapnik { +vertex_cache::vertex_cache(vertex_cache && rhs) + : current_position_(std::move(rhs.current_position_)), + segment_starting_point_(std::move(rhs.segment_starting_point_)), + subpaths_(std::move(rhs.subpaths_)), + position_in_segment_(std::move(rhs.position_in_segment_)), + angle_(std::move(rhs.angle_)), + angle_valid_(std::move(rhs.angle_valid_)), + offseted_lines_(std::move(rhs.offseted_lines_)), + position_(std::move(rhs.position_)) +{ + // The C++11 standard doesn't guarantee iterators are valid when container is moved. + // We can create them from indexes but we don't need to. Just let them uninitialized. + initialized_ = false; +} + double vertex_cache::current_segment_angle() { - return std::atan2(-(current_segment_->pos.y - segment_starting_point_.y), - current_segment_->pos.x - segment_starting_point_.x); + return std::atan2(current_segment_->pos.y - segment_starting_point_.y, + current_segment_->pos.x - segment_starting_point_.x); } double vertex_cache::angle(double width) { - // IMPORTANT NOTE: See note about coordinate systems in placement_finder::find_point_placement() - // for imformation about why the y axis is inverted! double tmp = width + position_in_segment_; if ((tmp <= current_segment_->length) && (tmp >= 0)) { @@ -53,8 +66,8 @@ double vertex_cache::angle(double width) if (move(width)) { pixel_position const& old_pos = s.get_state().position(); - return std::atan2(-(current_position_.y - old_pos.y), - current_position_.x - old_pos.x); + return std::atan2(current_position_.y - old_pos.y, + current_position_.x - old_pos.x); } else { diff --git a/tests/cpp_tests/line_offset_test.cpp b/tests/cpp_tests/line_offset_test.cpp index 9e5732be1..d8dce5847 100644 --- a/tests/cpp_tests/line_offset_test.cpp +++ b/tests/cpp_tests/line_offset_test.cpp @@ -1,6 +1,6 @@ // mapnik #include -#include +#include // boost #include diff --git a/tests/visual_tests/grids/marker-line-placement-many-vertices-600-400-1.0-grid-reference.json b/tests/visual_tests/grids/marker-line-placement-many-vertices-600-400-1.0-grid-reference.json new file mode 100644 index 000000000..84bafe267 --- /dev/null +++ b/tests/visual_tests/grids/marker-line-placement-many-vertices-600-400-1.0-grid-reference.json @@ -0,0 +1,109 @@ +{ + "keys": [ + "", + "1" + ], + "data": {}, + "grid": [ + " !! ", + " !! !!! ", + " !!! !!!! ", + " !!! ! !!! ", + " !!! ", + " !!! ", + " ! !! ", + " ! !!! ", + " ! ! ", + " ", + " !!! ", + " !!! ", + " ! ", + " ! !! ", + " !!! ", + " ! !! ", + " ", + " !!! ", + " !!! ", + " ", + " ! ", + " !! ", + " !!! ", + " !!! ! ", + " !!! ", + " ! ", + " ", + " ", + " !! !! ", + " !! !!! ", + " !! !! ", + " ! ", + " ", + " ", + " !! ", + " !! ", + " !! !! ", + " ! !!! ", + " ! ! ", + " !!! ", + " !!! ", + " ! ", + " ! ", + " !! ", + " !! !!! ", + " !!! !! ", + " !! ", + " ! ", + " ! ", + " ", + " !!! ", + " !!! !! ", + " !!! ", + " ! ", + " ", + " !!! ", + " !!! ", + " !! ", + " ! !! ", + " ! !!! ", + " ! !! ", + " !!! ", + " !!! ", + " ! ", + " ! ", + " ! ", + " !!! !! ", + " !!! !!! ", + " ! ", + " ! ", + " ! ", + " !! ", + " !!! ", + " !!! !! ", + " !!! ", + " !! ", + " ! ", + " !!! ", + " !!! ", + " ! ", + " ", + " !! !! ", + " !!! !!! ", + " !! ! ", + " ", + " ", + " ", + " !!! ", + " !!! !! ", + " !!! ", + " !! ", + " ! ! ", + " !!! ", + " !!! ", + " ! ", + " ", + " !! ", + " !!! !!! ", + " !!! ! ", + " ! ! " + ] +} \ No newline at end of file diff --git a/tests/visual_tests/grids/marker-line-placement-many-vertices-600-400-2.0-grid-reference.json b/tests/visual_tests/grids/marker-line-placement-many-vertices-600-400-2.0-grid-reference.json new file mode 100644 index 000000000..84b7fe727 --- /dev/null +++ b/tests/visual_tests/grids/marker-line-placement-many-vertices-600-400-2.0-grid-reference.json @@ -0,0 +1,109 @@ +{ + "keys": [ + "", + "1" + ], + "data": {}, + "grid": [ + " ! !! !!! ", + " !!!!! ! ! !!!!! ", + " !!!!! !!!!!! ", + " !!!!!! !!!!! ", + " !!!!! !!!!!! ", + " !!! ! ", + " ! ", + " ! ", + " ! !!! ", + " !!!! ", + " !!!!!! ", + " ! !!!!!! ", + " !!!! !!!! ", + " !!!!! !! ", + " !!!!!! ", + " !!!!!! ", + " !!!! ", + " ! ", + " ! ", + " ", + " ! ", + " ", + " ", + " ! !!! ", + " !!!! !!!! ", + " !!!!! !!!!!! ", + " !!!!! !!!!!! ", + " !!!!! !!!! ", + " !!!!! !! ", + " ! ! ", + " ! ", + " ! ", + " ", + " ", + " ", + " !!!!! ", + " !!!!! ", + " !!!!!! ", + " !!!!! !!! ", + " !!!!! !!!! ", + " !!!!!! ", + " ! !!!!!! ", + " ! !!!! ", + " !! ", + " ! ", + " ", + " !!!! ", + " !!!!! ", + " !!!!! ", + " !!!!! ", + " !!!! ", + " ", + " ", + " !!! ", + " !!!! ", + " ! !!!!!! ", + " ! ! !!!!!! ", + " !!!! !!!! ", + " !!!!! !! ", + " !!!!!! ", + " !!!!! ", + " !!!! ", + " ! ", + " ! ", + " ! ", + " ! ", + " ", + " !!!! ", + " !!!!! !!! ", + " !!!!!! !!!! ", + " !!!!! !!!!!! ", + " !!!! !!!!!! ", + " ! !!!! ", + " ! !! ", + " ! ", + " ", + " ", + " ! ", + " !!!!! ", + " !!!!! ", + " !!!!! ", + " !!!!! ", + " !!! ", + " !!! ", + " !!!! ", + " !!!!!! ", + " !!!!!! ", + " !!!! ", + " !!! !! ", + " !!!!! ", + " !!!!! ", + " !!!!! ", + " !!!!! ", + " ", + " ! ", + " ", + " ", + " !! ", + " !!!!! ", + " !!!!! " + ] +} \ No newline at end of file diff --git a/tests/visual_tests/grids/marker-on-hex-grid-257-256-1.0-grid-reference.json b/tests/visual_tests/grids/marker-on-hex-grid-257-256-1.0-grid-reference.json index 3754d9a40..303abc8b4 100644 --- a/tests/visual_tests/grids/marker-on-hex-grid-257-256-1.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-hex-grid-257-256-1.0-grid-reference.json @@ -6,68 +6,68 @@ "data": {}, "grid": [ " !!!! !!!! !!!! !!!! !!!! !!!! ", - " ! ! ! ! ! ! ! ", - " ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ", - " ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ", - " ", - " ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ! ", - " ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ", - " ", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ", - " ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! !!!! !!!! !!!! !!!! !!!! !!!! ", - " ! ! ! ", - " ! ! ! ! ! ! ", - " !!!! !!!! !!!! !!!! !!!! !!!! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! !!!! !!!! !!!! !!!! !!!! !!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ", - " !!!! !!!! !!!! !!!! !!!! !!!! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ", - " ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ", - " ", - " ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ", - " ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ", - " ", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ", - " ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ", - " ! ! ! ! ! ! ! ! ", - " !!!! !!!! !!!! !!!! !!!! !!!! ! ", - " ! ! ! ", - " ! ! ! ! ! ! ", - " ! !!!! !!!! !!!! !!!! !!!! !!!! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ", - " !!!! !!!! !!!! !!!! !!!! !!!! ! ", + " ! ! ! ! ! ! ! ! ! ", + " ! ! ! !! !! ! !! ", + " ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! !! ! !! !! ", + " ! ! ! ! !! !! ! ", + " ! ! ! ! ! ! ! ! !! !! ", + " ! ! ! ! ! ! ! !! ! !! !! ", + " ! ! ! ! !! !! !! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! !! ! !! ! !! ", + " ! ! ! ! ! !! !! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! !! ! !! ! !! ", + " ! ! ! ! ! ! ! ! ! !! ! ", + " ! ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! !! ! !! ! ", + " ! ! ! ! ! ! ! ! ! !! ! !! ", + " ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! !! ! !! ", + " !!! ! !!!!! !!!!! !!!!! !!!!! !!!!! ! ", + " ! ! ! ! ! ! ", + " ! ! ! ! !! ! !! ! !! ! ", + " ! !!!!! !!!!! !!!!! !!!!! !!!!! !!!!! ", + " ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! !! ! !! ", + " !!!!! !!!!! !!!!! !!!!! !!!!! !!!!! ! ", + " ! ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! !! ! ", + " ! !!!!! !!!!! !!!!! !!!!! !!!!! !!!!! ", + " ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! ! !! ! !! ", + " !!!!! !!!!! !!!!! !!!!! !!!!! !!!!! ! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! !! ! ", + " ! !!! ! !!!!! !!!!! !!!!! !!!! !!!! ", + " ! ! ! ! ! ! ! !! !! !! ", + " ! ! ! ! !! !! !! ", + " ! ! ! ! ! ! ! ! ! !! ! ", + " ! ! ! ! ! ! ! !! ! !! !! ", + " ! ! ! ! !! !! ", + " ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! !! ! !! ! !! ", + " ! ! ! ! ! !! !! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! !! ! !! ! ", + " ! ! ! ! ! ! ! ! !! !! ", + " ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! !! ! !! ! !! ", + " ! ! ! ! ! ! ! ! ! ! !! ! ! ", + " ! ! ! ! ! ", + " ! ! ! ! ! !! ! !! ! !! ! ", + " ! !!! ! !!!!! !!!!! !!!!! !!!!! !!!!! ", + " ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! !! ! ! ", + " !!!!! !!!!! !!!!! !!!!! !!!!! !!!!! ! ", + " ! ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! !! ! ", + " ! !!!!! !!!!! !!!!! !!!!! !!!!! !!!!! ", + " ! ! ! ! ! ! ! ", + " ! ! ! ! !! ! !! ! !! ", + " !!!!! !!!!! !!!!! !!!!! !!!!! !!!!! ! ", " ! ! ! ! ! ", - " ! ! ! ! " + " ! ! ! ! ! " ] } \ No newline at end of file diff --git a/tests/visual_tests/grids/marker-on-hex-grid-257-256-2.0-grid-reference.json b/tests/visual_tests/grids/marker-on-hex-grid-257-256-2.0-grid-reference.json index a3c42b2a0..9948b2723 100644 --- a/tests/visual_tests/grids/marker-on-hex-grid-257-256-2.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-hex-grid-257-256-2.0-grid-reference.json @@ -5,69 +5,69 @@ ], "data": {}, "grid": [ - " !!!! !!!! !!!! !!!! !!!! !!!! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ", - " ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ", - " ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ", - " ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ", - " ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ", - " ! ", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ", - " ! ! ! ! ! ! ! ! ", + " !!!!! !!!! !!!! !!!! !!!! !!!! ", + " !! ! !! ! !! ! !!! ! !!! ! !!! !! ! ", + " !!! !! !!! !! !!! !! !!! ! !!! ! !!! ! ", + " !!! ! !!! ! !! ! !! ! !! ! !! ! ! ", + " ! !! ! !! ! !!!! ! !!!! ! !!!! ! !!! ", + " ! !!! !! !!! !! !!! !! !!! ! !!! ! !!! ! ", + " ! !!! ! !!! ! !! ! !! ! !! ! !! ", + " !! ! !!! ! !!! ! !!! ! !!! ! !!! ! ! ", + " !!! ! !!! !! !!! !! !!! !! !! ! !! ! ", + " ! ! ! !!! ! !!! ! !!! ! !! ! !! ! ! ", + " ! !!! ! !!! ! !!! ! !!! ! !!! ! !!! ", + " ! !!! ! !! ! !! !! !! !! !! !! !! ", + " ! ! ! ! !!! ! !!! ! !!! ! !! ! ! ", + " !!! ! !!! ! !!! ! !!! ! !!! ! !!! ! ! ", + " !! ! !! ! !! ! !! !! !! !! !! !! ! ", + " ! ! ! ! ! ! ! ! !!! ! ! !!! ! ! !! ! ! ! ", + " ! !!! ! !!! ! !!! ! !!! ! !!! ! !! ! ", + " ! !! ! !! ! !! ! !! !! !! !! !! ", + "!! ! ! ! ! ! ! ! ! ! !! ! ! !! ! ! !! ! ! ! ! ", + " !!! ! !!! ! !!! ! !!! ! !!! ! !!! ! ", + " !! ! !! ! !! ! !! ! !! !! !! !! ! ", + " ! ! ! ! ! ! ! ! ! ! !! ! ! !! ! ! !! !! ! ", + " !! !!! ! !!! ! !!! ! !!! ! !!! ! !!! ! ", + " ! !!!! !!!! !!!! !!!! !!!!! !!!! ", + "!! ! ! ! ! ! ! ! ! ! ! !! ! ! !! !! ! !! ! ", + " !!! !! !!! ! !!! ! !!! ! !!! ! !!! ! ", + " !!!! !!!! !!!! !!!! !!!! !!!!! ! ", + " ! ! !! ! ! ! ! ! ! ! ! ! ! !! ! !! !! ! ", + " !! !!! !! !!! ! !!! ! !!! ! !!! ! !!! ! ", " ! !!!! !!!! !!!! !!!! !!!! !!!! ", - " ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!! !!!! !!!! !!!! !!!! !!!! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ", + " !! ! ! !! ! ! !! ! !! ! ! !! ! ! !! ! !! ! ", + " !!! !! !!! !! !!! ! !!! ! !!! ! !!! ! ", + " !!!!! !!!!! !!!! !!!! !!!! !!!! ! ", + " ! !! ! ! !! ! !!!! ! !!!! ! !!!! ! !! ! ", + " ! !!! !! !!! !! !!! !! !!! ! !!! ! !!! ! ", + " ! !!! ! !!! ! !! ! !! ! !! ! !! ", + " !! ! !! ! !!! ! !!!! ! !!!! ! !!!! ! ! ", + " !!! ! !!! !! !!! !! !!! !! !!! ! !!! ! ", + " !!! ! !!! ! !!! ! !! ! !! ! !! ! ! ", + " ! !! ! !!! ! !!! ! !!! ! !!! ! !!! ", + " ! !!! ! !!! !! !!! !! !!! !! !! ! !! ", + " ! !!! ! !!! ! !!! ! !! ! !! ! !! ", + " !! ! !!! ! !!! ! !!! ! !!! ! !!! ! ! ", + " !!! ! !! ! !! !! !! !! !! !! !! ! ! ", + " ! ! ! !!! ! !!! ! !!! ! !! ! !! ! ! ", + " ! !!! ! !!! ! !!! ! !!! ! !!! ! !!! ! ", + " ! !! ! !! ! !! !! !! !! !! !! !! ", + "!! ! ! ! ! ! !!! ! ! !!! ! ! !!! ! ! ! ! ", + " !!! ! !!! ! !!! ! !!! ! !!! ! !!! ! ", + " !! ! !! ! !! ! !! !! !! !! !! !! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! !! ! ! !! ! ! !! ! ! ", + " ! !!! ! !!! ! !!! ! !!! ! !!! ! !!! ! ", + " ! !! ! !! ! !! ! !! ! !! !! !! ", + "!! ! ! ! ! ! ! ! ! ! ! ! !! ! ! !! !! ! !! ! ", + " !!! ! !!! ! !!! ! !!! ! !!! ! !!! ! ", + " !!!! !!!! !!!! !!!! !!!! !!!!! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! !! !! ! !! !! ! ", + " !! !!! !! !!! ! !!! ! !!! ! !!! ! !!! ! ", " ! !!!! !!!! !!!! !!!! !!!! !!!! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ", + " ! ! ! ! ! ! ! !! !! !! !! ! ", + " ! !! ! !! ! ! ! ! ! ", " !!!! !!!! !!!! !!!! !!!! !!!! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ", - " ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ", - " ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ", - " ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ", - " ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ", - " ! ", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " !!!! !!!! !!!! !!!! !!!! !!!! ! ", - " ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! !!!! !!!! !!!! !!!! !!!! !!!! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " !!!! !!!! !!!! !!!! !!!! !!!! ! ", - " ! ! ! ! ! ! ", + " ! ! ! ! ! !! !! !! ", " ! ! ! ! " ] } \ No newline at end of file diff --git a/tests/visual_tests/grids/marker-on-hex-grid-400-600-1.0-grid-reference.json b/tests/visual_tests/grids/marker-on-hex-grid-400-600-1.0-grid-reference.json index bb8f37083..20b10a31d 100644 --- a/tests/visual_tests/grids/marker-on-hex-grid-400-600-1.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-hex-grid-400-600-1.0-grid-reference.json @@ -30,109 +30,109 @@ " ", " ", " ! ! ! ! ", - " !! ! !! ! ! !! ! !! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", + " !! ! !! ! ! ! ! !! ! !! ! ", + " ! ! ! ! ! ! ! ! ! ! !", + " ! ! ! !! ! !! ! ! ! ! !", " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", " ! ! ! ! ! ! ", - " ! ! ! ! ! !! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ! ! ", - "! !!!! !!!! ! !!! ! !!!! !!!! !!!! ", - " ! ! ! ! ! ! ! ! ! ", - " ! !! ! ! ! !! ! !! ! ", - " ! ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " !! ! !! ! ! ! !! !! ! !", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - "! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! !! ! ! ", - " ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ! ! ", - " !!!! !!!! ! !!!! ! !!! !!!! !!!! ", + " ! ! ! ! ! ! ! !! ! ! ! ", + " ! ! ! !! ! !! ! ! ! ! ! ", + "! ! ! ! ! !! ! ! !! ! ! ! ! ", + "! !!!! !!!! ! !!!! ! !!! !!! !!!! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! !! ! ! ! ! ! !! ! !! ! ! ", + " ! ! ! !! ! !! ! ! ! ! !", + " ! ! ! ! ! ! ! ! ! ! ! ! ! !", + " ! ! ! ! ! ! ! ! ! ", + " !! ! !! ! ! ! ! !! ! !! ! !", + " ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! ! ! ! ! ! ! ! ", + "! !!!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! !!!!!!! ", + " ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! !! ! ! ! ", + " ! ! ! ! ! ! ! ! ! !", + " ! ! ! !! ! ! !! ! ! !! ! ! !", + " !!!! !!!! ! !!!! ! !!! !!! !!!! ", " ! ! ! ! ! ! !! ! !", - " !! ! ! ! ! !! ! !! ", - " ! ! ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ! ! ! ", - " !! ! !! ! ! ! !! ! !! ! ", - " ! ! ! !! ! !! ! ", - " ! ! ! ! ! ! ! ! ! !", - " !!!! !!!! ! !!!! ! !!! !!!! !!!! ", - " ! ! ! ! ! ! ! ", - " !! ! ! ! ! !! ! !! ! !", - " ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ! ! ! ", - "! !!!! ! !!!! ! !!!! !!!! !!!! !!!! ", + " !! ! ! ! ! ! ! !! ! !! ! ", + " ! ! ! !! ! !! ! ! ! ! ! ! ", + "! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ", + "! ! ! ! ! ! ! ! ! ! ", + " !! ! !! ! ! ! ! !! ! !! ! ", + " ! ! ! ! !! ! !! ! !", + " ! ! ! ! !! ! ! ! ! ! ! !", + " !!!! !!!! ! !!!! ! !!!! !!! !!!! ", + " ! ! ! ! ! ! ! ", + " !! ! ! ! ! ! ! !! ! !! ! !", + " ! ! ! ! ! ! ! ! ! ! ", + "! ! ! ! ! !! ! ! !! ! ! ! ", + "! !!!! ! !!!! ! !!!! !!! !!! !!!! ", " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! !! ! ! ", - " ! ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " !! ! !! ! ! ! !! !! ! !", - " !! ! ! ! ! !! ! ", - " ! ! ! ! ! ! ! ! ! ", - "! !!!! ! !!!! ! !!! ! !!!! !!!! !!!! ", - " ! ! ! ! ! ! ! ! ", - " ! !! ! ! ! ! ! !! ! !! ! ", - " ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", + " ! ! ! ! ! ! ! ! !! ! ! ", + " ! ! ! !! ! !! ! ! ! ! !", + " ! ! !! ! ! ! ! ! ! ! ! ! ! !", + " ! ! ! ! ! ! ! ! ! ", + " !! ! !! ! ! ! ! !! ! !! ! !", + " !! ! ! ! ! ! !! ! ! ", + " ! ! !! ! ! ! ! ! ! ! ! ", + "! !!!! ! !!!! ! !!!! ! !!! !!! !!!! ", + " ! ! ! ! ! ! ! ", + " ! !! ! ! ! ! ! ! !! ! !! ! ", + " ! ! ! ! ! ! ! ! ! !", + " ! ! ! !! ! ! !! ! !! ! ! !", + " !!!!!!! !!!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!!! ", " ! ! ! ! ! ! ! ! !", - " !! ! ! ! ! ! !! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ! ! ! ! ! ", + " !! ! ! ! ! ! ! !! ! ! ! ", + " ! ! ! !! ! !! ! ! ! ! ! ! ", + "! ! ! ! ! ! !! ! ! ! ! ! ! ! ! ", + "! ! ! ! ! ! ! ! ! ! ! ! ", " !! ! !! ! ! ! !! ! !! ! ", - " !! ! ! !! ! !! ! ", - " ! ! ! ! ! ! ! ! !", - " !!!! !!!! ! !!!! ! !!! !!!! !!!! ", - " ! ! ! ! ! ! ! ! ! ", - " !! ! !! ! ! ! !! ! !! ! !", - " ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ! ! ! ", - "! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", + " !! ! ! ! !! ! !! ! ! ", + " ! ! ! ! !! ! ! ! ! ! ! !", + " !!!! !!!! ! !!!! ! !!! ! !!! !!!! ", + " ! ! ! ! ! ! ! ! ", + " !! ! !! ! ! ! ! !! ! !! ! !", + " ! ! ! ! ! ! ! ! ! ", + "! ! ! ! ! ! !! ! ! !! ! ! ! ", + "! !!!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! !!!!!!! ", " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! !! ! ! ", - " ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ", - " !! ! !! ! ! ! ! !! !! ! !", - " !! ! ! ! ! !! !! ", - " ! ! ! ! ! ! ! ! ! ! ", - "! !!!! !!!! ! !!! ! !!!! !!!! !!!! ", - " ! ! ! ! ! ! ! ", - " ! !! ! !! ! ! !! ! !! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", + " ! ! ! ! ! ! ! ! !! ! ! ! ", + " ! ! ! !! ! !! ! ! ! !", + " ! ! !! ! ! !! ! ! ! ! ! ! !", + " ! ! ! ! ! ! ! ! ! ! ! ! ", + " !! ! !! ! ! ! ! !! ! !! ! !", + " !! ! ! ! ! ! !! ! !! ", + " ! ! ! !! ! !! ! ! ! ! ! ! ", + "! ! !!!! !!!! ! !!! ! !!! ! !!! !!!! ", + " ! ! ! ! ! ! ! ", + " ! !! ! !! ! ! ! ! !! ! !! ! ", + " ! ! ! ! ! ! ! ! ! !", + " ! ! ! !! ! !! ! !! ! ! ! !", + " !!!!!!! !!!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!!! ", " ! ! ! ! ! ! ! ", - " !! ! ! ! ! ! !! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ! ! ! ! ", - " !! ! ! ! ! ! !! ! ! ", - " !! ! ! !! ! !! !! ", - " ! ! ! ! ! ! ! ! ! !", - " ! ! !! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " !! ! !! ! ! ! !! ! !! ! !", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - "! !!!!!! !!!!!! !!!!!! !!!!! !!!!!! !!!!!! ", + " !! ! ! ! ! ! ! !! ! ! ! ", + " ! ! ! !! ! !! ! ! ! ! ! ! ", + " ! ! ! ! !! ! ! !! ! ! ! ! ! ", + "! ! ! ! ! ! ! ! ! ! ! ", + " !! ! ! ! ! ! !! ! ! ! ", + " !! ! ! ! !! ! !! ! !! ", + " ! ! ! ! !! ! ! ! ! ! ! ! !", + " ! ! ! ! !! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ", + " !! ! !! ! ! ! ! ! !! ! !! ! !", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! ! !! ! ! ! ", + "! !!!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! !!!!!!! ", " ! ! ! ! ! ! ", - " ! ! ! ! ! ! !! ! ! ", - " ! ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! !! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! !! ! ! ! ", + " ! ! ! !! ! !! ! ! ! ! !", + " ! ! ! !! ! ! !! ! ! !! ! ! ! !", + " ! ! ! ! !! ! ! ! ! ! ! ", " ! ! ! ! ! !", " ! ! ! ! ", " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ", " ", " ", " ", diff --git a/tests/visual_tests/grids/marker-on-hex-grid-400-600-2.0-grid-reference.json b/tests/visual_tests/grids/marker-on-hex-grid-400-600-2.0-grid-reference.json index 67f9164f2..327f40fe6 100644 --- a/tests/visual_tests/grids/marker-on-hex-grid-400-600-2.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-hex-grid-400-600-2.0-grid-reference.json @@ -34,106 +34,106 @@ " ! ! ! ! ! ! ", " ! ! ! ! ! ! ", " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ", - "! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! !", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ", - "! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ", - " ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ", - "! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! !", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ", - " ! ! ! ! ! !", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - "! !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ", - " ! ! ! ! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! !", - " ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ", - "! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - "! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ", - " ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - "! ! ! ! ! ! ", - "! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - "! !!!!!! !!!!!! !!!!!! !!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! !", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! !", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ", - " ", - " ", + " ! !!! ! !! !! !! ! !! ! !!! ", + " !! !! ! !! ! !! !! !!! !", + " ! ! ! ! ! ! ! ! ! !!! ! ! ! ! ", + " ! !! ! ! ! ! ! ! ", + "! ! ! ! ! ! !! ! ! ! ! ", + "!!! !!! !!! ! ! !!! ! !!! ! !!! !! !!! !!! ! ", + "!! !!! !! ! !! ! !! ! !! ", + " ! ! ! ! ! ! !! ! ! ! !", + " ! ! !! ! ! ! ! ! !! ", + " !! !! ! ! ! ! !! ! !! !! ! !! ", + " ! !!! ! !!! ! ! !!! ! !!! ! !!! !! !!! !", + " ! !!! !!! !! !! ! !! ! !!! ", + " ! ! ! !! ! ! ! ! ! ", + "! !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! ", + "!! !! !! !! !! ! !! !! !! !! !! !! ", + "!! !!! ! !! ! !! ! !! !!! ", + "!!! ! ! ! ! ! ! !!! ! ! ! ! !", + " ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ", + " !! !!! !!! !! ! !!! ! !!! ! !!! !! !!! !", + " !! !! !! ! !! ! !! !! ", + " ! ! ! ! ! !! ! ! ! ! ", + "! !! ! ! ! ! ! ! ! !! ", + "!! ! ! ! ! !! ! !! ! !! !! ! ", + "!!! !! !!! ! ! !!! ! ! !!! ! !!! ! !!! ! ! ! ", + "!! ! !!! !! !! ! !! ! !!! ", + " ! ! ! ! ! !! ! ! !", + " !!!!!!! !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!!! ", + " !! !! ! !! !! !! ! !! !! !! !! !! ", + " !!! !! ! !! ! !! ! !!! !!! !", + " ! ! ! ! ! ! ! !! ! !!! ! ! ! ! ", + " ! !! ! ! ! ! ! ! ! ", + "! !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! ", + "!!! !! !!! !!! !! ! !!! ! !!! !! !!! !!! ! ", + "!! !! !! ! !! ! !! !! ", + " ! ! ! ! ! ! ! !! ! ! ! !", + " ! !! ! ! ! ! ! ! ", + " ! !! ! ! ! ! !! ! !! ! ! ! ", + " ! !!! ! ! !!! ! ! !!! ! !!! ! !!! !! !!! !", + " ! !!! !!! !! ! !! ! !! ! !!! ", + " ! ! ! ! !! ! ! ! ! ! ", + "! !! ! ! ! ! ! !! ! ! ", + "!! !! ! ! !! !! !! !! !! !! !! ! ", + "!!! !!! ! !! ! !! ! !!! ! !!! ! ", + "!!! ! ! ! ! !! !! ! !!! ! !", + " ! ! !! ! ! ! ! ! ", + " !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! ", + " !! !!! !!! !! ! !! ! !!! !! !!! !! !!! !", + " !! !! ! !! ! !! ! !! !! ", + " ! ! ! ! ! ! ! ! !! ! ! ! ! ! ", + "! ! !! ! ! ! ! ! !! ", + "! ! ! ! ! ! ! !! ! ! !! ! ", + "!!! !!! !!! ! ! !!! ! !!! ! !!! ! !!! !!! ! ", + "!! !!! !! !! ! !! ! !! ", + " ! ! ! ! ! !! ! ! ! !", + " !! ! ! ! ! ! ! ! !! ! ", + " !! !! ! ! !! !! !! !! !! !! !! !! ", + " ! !!! ! !! ! !! ! ! !!! ! !!! !!! !", + " ! !!! ! ! ! !! !! ! !!! ! ! ! ", + " ! ! ! !! ! ! ! ! ", + "! !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! ", + "!!! !! !!! !! !! ! !! ! !!! !! !!! !!! ! ", + "!! !! !! ! !! ! !! !! ", + "! ! ! ! ! ! ! ! !! ! ! ! ! !", + " ! !! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! !! ! ! ! ", + " !! !!! !!! !!! ! ! !!! ! !!! ! !!! !! !!! !", + " ! !! !! !! ! !! ! !! !!! ", + " ! ! ! ! ! !! ! ! ! ", + "! !! ! ! ! ! ! !! ! !! ", + "!! ! ! ! ! !! !! !! !! !! !! ! ", + "!!! !!! ! !! ! ! !!! ! !!! ! !!! ! ! ", + "!!! ! ! ! ! !! ! !! ! !!! ! ", + " ! ! ! !! ! ! ! ! ! ", + " !!!!!!! !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!! ", + " !! !!! !!! !! !! !! ! !! !! !!! !! !!! ", + " !! ! ! !! ! !! !! !! ", + " ! ! ! ! ! ! ! !! !!! ! ! ! ! ", + "! ! !! ! ! ! ! ! !! ", + "! ! ! ! ! ! !! ! ! ! ! ", + "!!! !!! !!! ! ! !!! ! !!! ! !!! !! !!! !!! ! ", + "!! !!! !! ! !! ! !! ! !! ", + " ! ! ! ! ! ! !! ! ! ! !", + " !! ! !! ! ! ! ! ! !! ! ", + " !! !! ! ! !! ! !! !! !! !! ! !! ", + " ! !!! ! !! ! ! !!! ! !!! ! !!! !!! !", + " ! !!! ! ! ! !! !! ! !!! ! !!! ", + " ! ! ! !! ! ! ! ! ! ", + "! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!! ", + "!!! !! !!! !! !! ! !! !! !! !! !!! !! ", + "!! !! ! !! ! !! ! !! !! ", + "!!! ! ! ! ! ! ! !!! ! ! ! ! !", + " ! !! !! ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! ! ! ! ! ", + " ! !!! !!! !!! ! ! !!! ! !!! ! !!! !! !!! !", + " !! !! !! ! !! ! !! !!! ", + " ! ! ! ! ! !! ! ! ! ! ", + " !! ! ! ! ! ! ! !! ", + " ! ! !! ! ! ! ", + " ! ! ! ", " ", " ", " ", diff --git a/tests/visual_tests/grids/marker-on-hex-grid-600-400-1.0-grid-reference.json b/tests/visual_tests/grids/marker-on-hex-grid-600-400-1.0-grid-reference.json index 70e91644a..f08630850 100644 --- a/tests/visual_tests/grids/marker-on-hex-grid-600-400-1.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-hex-grid-600-400-1.0-grid-reference.json @@ -7,103 +7,103 @@ "grid": [ " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", " ! !! !! ! !! ! ! !! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! ! !! ! ! ! ! ", + " ! ! ! ! ! !! ! ! ! ", " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", + " ! ! ! ! ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! ! !! ! ! ! ! ", + " !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!! !!!!!! ", " ! ! !! !! ! ! ! ! !! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", + " ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! ! !! ! ! ! ", + " ! ! ! ! ! ! !! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ", + " !!!!!! !!!!!! !!!!!! !!!!!!! !!!!!! !!!!!! ", " ! ! !! !! ! ! ! ! !! ", - " ! ! ! !! !! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! !! ! ! ! ", - " ! ! ! ! !! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! !! ! ! ! ! ! ! ", - " ! ! ! !! !! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " !! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " !!!! !!!! ! !!! ! !!!! !!!! !!!! ", - " ! ! !! ! ! ! ! ! ! ", - " ! ! ! ! !! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! !!!! !!!! !!!! ! !!!! ! !!!! !!!! ", - " ! ! ! !! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! !! !! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", + " ! ! ! !! ! !! ! ! ! ", + " ! ! ! ! ! !! ! !! ! ! ! ", + " ! ! ! ! ! !! ! !! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ", + " !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! ", + " ! ! ! !! ! ! ! ! ! ! ! ", + " ! ! ! !! ! !! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ", + " ! ! !! ! ! !! ! ! !! ! ! !! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ", + " !!! ! !!! ! !!!! ! !!!! !!! ! !!! ", + " ! ! ! !! ! ! ! ! ! ! ", + " ! ! ! ! !! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ", + " ! !! ! ! !! ! ! !! ! !! ", + " ! !!!! !!! !!!! ! !!!! ! !!!! !!! ", + " ! ! ! ! !! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! !! ! ! !! ! ! !! ! !! ", + " !!!!!!! !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! ", " ! ! ! !! !! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! !! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", + " ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! !! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! !! ! !! ! ! ! ", + " !!!!!!! !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! ", " ! ! ! !! !! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ", + " ! ! ! ! ! ! ! ! !! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! !! ! ! ! ", + " !!!!!!! !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! ", " ! ! !! !! ! ! ! ! ", - " ! ! ! ! !! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! !! ! !! ! ! ! ! ! ! ", - " ! ! ! !! !! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! !! ! ! ! ", + " ! ! ! ! ! !! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ", + " ! ! ! ! ! !! ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ", + " !!!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!!! !!!!!! ! ", + " ! ! !! ! ! !! ! ! ! ! ! ", + " ! ! ! ! !! ! !! ! ! ! ! ", + " ! ! ! ! ! !! ! ! ! ! ", + " ! ! ! ! !! ! ! !! ! ! ! ! ", + " ! ! ! ! !! ! ! ! ! ! ", " ! ! ! ! !! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! !!!! !!!! !!!! ! !!! ! !!!! !!!! ", - " ! ! ! ! ! !! ! ! ! ! ! ! ", - " ! ! ! ! ! !! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!! !!!! ! !!! ! !!!! !!!! !!!! ", - " ! ! !! !! !! ! ! !! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ! ", - " !! ! ! ! ! ! ! !! ! ! ", - " ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ", + " ! !!!! !!! ! !!!! ! !!!! ! !!!! !!! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ! ! ", + " ! ! ! ! ! ! !! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! !! ! ! !! ! ! ! ", + " !!! !!! ! !!!! ! !!!! !!! !!! ", + " ! ! ! !! !! !! ! ! ! !! ", + " ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! !! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ! ", " ! ! ! ! ! ! ", " ! ! ! ! ! ", - " ! ! ! ! ! ! " + " ! ! ! ! ! ! " ] } \ No newline at end of file diff --git a/tests/visual_tests/grids/marker-on-hex-grid-600-400-2.0-grid-reference.json b/tests/visual_tests/grids/marker-on-hex-grid-600-400-2.0-grid-reference.json index 0f4089f51..733a97de2 100644 --- a/tests/visual_tests/grids/marker-on-hex-grid-600-400-2.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-hex-grid-600-400-2.0-grid-reference.json @@ -10,100 +10,100 @@ " ! ! ! ! ! ", " ! ! ! ! ! ! ! ", " ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! !!!!!! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ! ! ", - " ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! ! ", - " ! ! ! ! ! " + " !!! !! ! !! ! !! !!! !! ! ", + " ! !! ! !! !! !! ! !! ! !! ", + " ! ! ! !!! ! ! ! ! ! ! ! !! ! ", + " ! ! ! ! ! !! ! ! ! ", + " ! !!!!!! !!!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!!! ", + " !!! !! !!! !! !!! ! !!! ! !!! !! !!! !! ", + " !!! !! !! ! !! ! !!! !! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " ! !! ! ! ! ! ! !! ! ! ", + " ! !! ! !! !! !! !! !! ! !! ! !! ! ", + " ! !!! !! !! ! !! !! ! !!! !! !! ", + " ! ! !! ! ! ! ! ! ! ! ! !! ! ", + " ! ! ! ! ! !! ! ! ! ", + " !!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! !!!!!!! ", + " !!! ! !!! !! !!! !! !!! !! !!! ! !!! !! ", + " !!! !! !! ! !! ! !!! !! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " !! ! ! ! ! ! !! ! ! ", + " ! !! ! !! !! !! !! ! ! !! ! !! ! ", + " ! !!! !! !! ! !! ! !! ! !!! !! !! ", + " !!! !! ! ! ! ! ! !!! !! ! ", + " ! ! ! ! ! !! ! ! ! ", + " !!!!!! !!!!!!! !!!!!! !!!!!! !!!!!! !!!!!!! ", + " !!! ! !!! !! !!! !! !!! !! !!! ! !!! !! ", + " !!! ! !! !! ! !! ! !! !! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " !! ! ! ! ! ! !! ! ! ", + " ! !! ! !! ! !! ! ! ! !! ! !! ! ", + " ! !!! !! !!! ! !! ! !! ! !!! !! !!! ", + " !!! !! ! !! ! ! ! !!! !! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " ! ! !! ! ! ! ! ! !! ! ", + " !!! ! !!! !! !!! !! !! !! !!! ! !!! !! ! ", + " !! ! !! !! !! ! !! ! !! ! ", + " ! ! ! ! ! !! ! ! ! ! ! ! ", + " !! ! ! ! ! ! !! ! ! ", + " ! !! ! !! !! ! ! ! ! !! ! !! ", + " ! ! !!! !! !!! ! !!! ! !! ! ! !!! !! !!! ", + " !!! !! ! !! ! ! ! !!! !! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! !! ! ! ! ", + " !!! ! !!! !! !! !! !! !! !!! ! !!! !! ! ", + " !! ! !! !! !! ! !! ! !! ! ", + " ! ! !!! ! ! ! ! ! ! !! ! ", + " !! ! ! ! ! ! !! ! ! ", + " !!!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!!! !!!!!! ", + " !! !!! !! !!! !! !!! ! !!! !! !!! !! !!! ! ", + " !!! !! ! !! ! !!! !!! !! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " !! ! ! ! ! ! !! ! ! ", + " !!! ! !!! !! !! !! !! !! !!! ! !! !! ! ", + " !! ! !! ! !! !! ! !! ! !! ! ", + " ! ! !!! ! ! ! ! ! ! !!! ! ", + " !! ! ! ! ! ! ! ! ! ! ", + " !!!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! ", + " !! !!! !! !!! !! !!! ! !!! !! !!! !! !!! ! ", + " ! !! !! !! ! !! ! !! !! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " !! ! ! ! ! ! !! ! ! ", + " !! ! !! ! !! !! !! ! !!! ! !! ! ! ", + " !!! ! !! ! !! ! !! ! !!! ! !! ! ", + " ! ! !!! ! !! ! ! ! ! !!! ! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " !!!!!! !!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! ", + " !! !!! !! !!! !! !!! ! !!! !! !!! !! !!! ! ", + " ! !! !! !! ! !! ! !! !! ", + " ! ! ! ! !! ! ! ! ! ! ", + " !! ! ! ! ! ! !! ! ! ", + " ! ! !! ! !! !! !! ! !! ! !! ! ! ", + " !!! ! !!! !! !! ! !! ! !!! !! !!! ! ", + " ! ! !!! ! !! ! ! ! ! !!! ! ! ", + " ! ! ! ! !! ! ! ! ! ! ", + " !!!!!! !!!!!!! !!!!!!! !!!!!! !!!!!! !!!!!!! ", + " !! !!! !! !!! !! !!! ! !! !! !!! !! !!! ! ", + " ! !! !! !! ! !! ! !! !! ", + " ! ! !! ! ! ! ! ! !! ! ", + " !! ! ! ! ! ! !! ! ! ", + " ! ! !! ! !! !! ! ! !! ! !! ! ! ", + " !!! !! !!! !! !!! ! !! ! !!! !! !!! !! ", + " ! ! !!! ! !! ! ! ! ! !!! ! ! ", + " ! ! ! ! !! ! ! ! ! ", + " ! ! !! ! ! ! ! ! ! !! ! ", + " !! !!! ! !!! !! !! !! !! ! !!! !! !!! ! ", + " ! !! !! !! ! !! ! !! !! ", + " ! ! ! !! ! ! ! ! ! ! ! !! ! ", + " ! ! ! ! ! !! ! ! ! ! ", + " ! ! !! ! ! !! ! ! ! ! !! ! ! ", + " !!! !! !!! !! !!! ! !!! ! !!! !! !!! !! ", + " !!! !! !! ! !! ! !!! !! ! ", + " ! ! ! ! !! ! ! ! ! ", + " ! ! !! ! ! ! ! ! ! !! ! ! ", + " ! !!! ! !!! !! !! !! !! ! !!! ! !!! ! ", + " !! !! !! ! !! ! !! !! ", + " ! ! ! !! ! ! ! ! ! ! ! !! ! ", + " ! ! ! ! !! ! ! ! " ] } \ No newline at end of file diff --git a/tests/visual_tests/grids/marker-on-line-and-avoid-edges-512-512-1.0-grid-reference.json b/tests/visual_tests/grids/marker-on-line-and-avoid-edges-512-512-1.0-grid-reference.json index 6edc4b728..a619cee45 100644 --- a/tests/visual_tests/grids/marker-on-line-and-avoid-edges-512-512-1.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-line-and-avoid-edges-512-512-1.0-grid-reference.json @@ -12,122 +12,122 @@ " ", " ", " ", - " ", - " ", - " ", - " ", - " !!!!!!!! ", - " !!!!!!!!!!!! ", - " !!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!! !!!!!!!! ", - " !!!!!!!!!!!!!!!!! !!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! ! !!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! !", - " ! !!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " !!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!! !!!!!!!!!!!!!!!!!!!! ", - "! !!!!!!!!! ! !!!!!!!!!!!! ", - " !!!!!!!!!!! ", - " !!!!!!!!!! ", - " !!!!!!!! ", - " !!!!! ", - " ", - " ", - " ", + " !! ", + " !!!!!!!!!! ", + " !!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!! ! ", + " !!!!!!!!!!!!!!!! !!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! ! !!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!! !", + " !!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " !!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ", + " !!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " !!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!! ! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + "! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!! !!! ", + " !!!!!!!!! !!!!!!!!!!!! ", + " !! !!!!!!!!!! ", + " !!!!!!!!! ", + " !!!!!!! ", + " !!!! ", " ", " ", " ", diff --git a/tests/visual_tests/grids/marker-on-line-and-avoid-edges-512-512-2.0-grid-reference.json b/tests/visual_tests/grids/marker-on-line-and-avoid-edges-512-512-2.0-grid-reference.json index 4bf221877..be8f56680 100644 --- a/tests/visual_tests/grids/marker-on-line-and-avoid-edges-512-512-2.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-line-and-avoid-edges-512-512-2.0-grid-reference.json @@ -10,122 +10,122 @@ " ", " ", " ", + " ! ", + " !!!!!!!!!!!!! ", + " !!!!!!!!!!!! !!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " !!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!!!!! ! ! ", + " ! !!!!!!!!!!!!!!!!!!!!!! ! ! ", + " ! !!!!!!!!!!!!!!!!!! ! ! ", + " ! !!!!!!!!!!!!!! ! ! ", + " ! !!! ! ! ", + "! !! ", + "! ! ", " ", " ", " ", " ", " ", - " !!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!! ", - " !!!! ! !!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!! ! ! !!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!! ", - " !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - " ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - "! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ", - "! !!!!!!!!!!!!!!!!!!!!!!!!!!! ! ", - " !!!!!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!!!!!!!!! ", - " !!!!!!!!!!! ", - " ", " ", " ", " ", diff --git a/tests/visual_tests/grids/marker-on-line-and-line-placement-600-400-1.0-grid-reference.json b/tests/visual_tests/grids/marker-on-line-and-line-placement-600-400-1.0-grid-reference.json index 6d60c0905..2452c80b1 100644 --- a/tests/visual_tests/grids/marker-on-line-and-line-placement-600-400-1.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-line-and-line-placement-600-400-1.0-grid-reference.json @@ -5,11 +5,11 @@ ], "data": {}, "grid": [ - " !!!!!! ", - " ! !! !!!! !! ", - " ! ! !!! ! ! ", - " ! ! !! ! !!! ", - " ! ! !!! ! !! ", + " !!!!!!!! ", + " !!!!!!! ! !! ", + " ! ! !! ! ! ", + " ! ! !!! ! !!! ", + " ! ! !!!!! ! !! ", " ! ! ! ! ! ", " ! ! ! ! !! ", " ! ! ! ! ! ! ", @@ -20,9 +20,9 @@ " ! ! ! !! ", " ! ! ! ! ! !!! ", " ! ! ! ! !!! ", - " ! ! ! ! ! ! !! ! ", + " ! ! ! ! ! ! !!! ", " ! ! ! ! !!! ", - " !! ! ! ! ! ! !!! ", + " !! ! ! ! ! ! !! ", " !! ! ! ! !! ! ", " ! !! ! ! !!! ! ", " ! !!!!! ! !! ! ", @@ -69,9 +69,9 @@ " ! ! !!!! ", " ! !! ! !!! ", " !! !! ! !!!! ", - " !! !!! ! !!!! ", + " !! !!! ! !!! ", " !! !!! !! !!! ", - " ! !!! !!! !! ", + " ! !!! !!! !!! ", " !!! !!! !!!! ", " ! ! ! !!! ", " ! ! ! ! ! ", @@ -81,7 +81,7 @@ " ! ! !! ", " ! !! ", " ! ! ! ! !! !! ", - " ! ! ! !!! !!! ", + " ! ! ! !!! !! ", " ! ! ! !!! !!! ", " ! ! ! ! !!! ", " ! ! ! !! ! ! ! ", @@ -93,8 +93,8 @@ " ! ! ! !!! ! !! ! ! !!! ", " ! ! !!!! !!! ! ! !!! ", " !!! ! !!!! !!! ! ! ", - " !!!!! !! ! ! ", - " !!!!! !! !! !! ! ! ! ", + " !!!!! !!! ! ! ", + " !!!!! !!!!! !! ! ! ! ", " !!!!! !!! !!! ! ! ! ", " !!!! !!!! !!! ! ! ! ", " ! !! ! ! ! ! ", diff --git a/tests/visual_tests/grids/marker-on-line-and-line-placement-600-400-2.0-grid-reference.json b/tests/visual_tests/grids/marker-on-line-and-line-placement-600-400-2.0-grid-reference.json index 8615c7820..8f7a961f9 100644 --- a/tests/visual_tests/grids/marker-on-line-and-line-placement-600-400-2.0-grid-reference.json +++ b/tests/visual_tests/grids/marker-on-line-and-line-placement-600-400-2.0-grid-reference.json @@ -6,22 +6,22 @@ "data": {}, "grid": [ " !!!!!!! ", - " !!!! !! ! !! ", - " ! ! ! ! ! ! ", - " !! ! ! ! ! !! ", - " ! ! ! ! ! ! ", - " ! ! ! !!!!!!! !! ", - " ! ! ! !! ! ! !! ", - " ! ! !! ! ! ! ", - " ! ! !! ! ! !! ", - " ! ! !! ! ! ! ! ", - " !! ! !! !!!! ! !!! ", + " !!!! !! ! !!!!!! ", + " ! ! ! ! ! !!!! ", + " !! ! ! ! !!!!!!! ", + " ! ! ! ! !!!!! ", + " ! ! ! !!!!!!!!!! ", + " ! ! ! !! ! !!!!!!!!! ", + " ! ! !! ! !!!!! !!!! ", + " ! ! !! ! !!!!!!!!!!! ", + " ! ! !! ! !!!! !!!! ", + " !! ! !! !!!!!! !!!!! ", " ! ! ! ! !!!!! ! ! ! ", - " ! ! ! ! !!!!! !!! ! ! ", - " ! ! ! ! !!!! !!!!! ! ", - " ! ! ! ! !! !!!!! ! ! ", - " ! ! !! ! ! !!!!! ! ! ", - " ! ! ! ! ! !!!! ! ! ", + " ! ! ! ! !!!!! ! ! ! ", + " ! ! ! ! !!!! ! ! ", + " ! ! ! ! !! ! ! ! ", + " ! ! !! ! ! ! ! ! ", + " ! ! ! ! ! ! ! ! ", " ! ! ! ! ! ! ! ! ", " ! ! ! ! ! ! ! ", " ! ! ! ! ! ! ! ! ", @@ -32,18 +32,18 @@ " ! ! ! ! ! ! ! ! ", " ! !! ! ! ! ! ! ", " ! !! ! ! ! ! ! ", - " ! !! ! ! ! ! ! ", - " !!! !!! ! ! ! ! ! ", - " !!!!! !!!!! ! !!!!! ! ! ! ", - " !!!!! !!!!! ! !!!!! ! ! ", - " !!!!! !!!!!!!!! !!!!!! ! ! ! ", - " !!!! !!!!!!!!!!! !!!!!! ! ! ! ", - " !! !!! !!!!!!! !!! ! ! ! ! ", - " ! !!!!! !!!!!!! ! ! ! ", - " ! !!!!! !!!!!! ! ! ! ", - " ! !!!!! ! !!! ! ! ! ! ", - " ! !!!! ! ! ! ! ", - " ! !! ! ! ! ! ! ", + " !!!! !! ! ! ! ! ! ", + " !!!!! !!! ! ! ! ! ! ", + " !!!!!!!!!! ! !!!!! ! ! ! ", + " !!!! !!!!! ! !!!!! ! ! ", + " !! !!!!!!!!! !!!!!! ! ! ! ", + " ! !!!!!!!!!!! !!!!!! ! ! ! ", + " ! !!!!!!!!!!!! !!! ! ! ! ! ", + " ! !!!!!!!!!!!! ! ! ! ", + " ! !!!! !!!!!! ! ! ! ", + " ! ! !! ! !!! ! ! ! ! ", + " ! !! ! ! ! ! ", + " ! ! ! ! ! ! ! ", " ! !! ! ! ! ! ", " ! ! ! ! !! ! ", " ! !! ! ! ! ! ", @@ -52,17 +52,17 @@ " ! !! ! ! ! ! ", " ! ! ! ! ! !! ! ", " !! ! ! !! ", - " ! ! ! ! ! ! ! ", - " ! ! ! !!!!! ! ", + " ! ! ! ! !!!!! ! ", + " ! ! ! !!!!!!! ", " ! !! ! !!!!!! ", " ! ! ! ! !!!!! ! ", - " ! ! ! !!!!! ! ", - " ! ! ! ! !!! ! ", - " ! ! ! ! !! !!!! ", - " ! ! ! !!!!!!!! ", + " ! ! ! !!! ! ", + " ! ! ! ! !!!!!!!! ", + " ! ! ! ! !!!!!!!!! ", + " ! ! ! !!!!!!!!! ", " ! ! ! ! !!!!!!!! ", - " ! ! ! ! !!!!!!!! ", - " ! ! ! ! !!!!!!! ", + " ! ! ! ! !!!!!!! ", + " ! ! ! ! !!!!! ! ", " ! ! ! ! !!!! ! ", " ! ! ! ! ! ! ", " ! ! ! ! !! ", @@ -98,12 +98,12 @@ " !!! ! !!! ! ! ! ! ", " !!! ! !!!! !!! ! ! ! ", " !!! ! !!! !!!!! ! ! ", - " !!! !!! !!!!!!! ! ", - " !! ! !!! ! !!!!! ! ! ", - " !! ! !!! ! !!!! ! ! ", - " !! ! !! !!!! ! ! ! ", - " !! ! !!!!!!! ! ! ! ", - " ! ! !!!!!! !! ! ! ", - " ! ! !!!!!!! ! ! " + " !!! !!!! !!!!!!! ! ", + " !! ! !!!!! ! !!!!! ! ! ", + " !! ! !!!!! ! !!!! ! ! ", + " !! ! !!!!! ! ! ! ! ", + " !! ! !!!!!!!!! ! ! ! ", + " ! ! !!!!!!! !! ! ! ", + " ! ! !!!!!!! ! ! ! " ] } \ No newline at end of file diff --git a/tests/visual_tests/images/geometry-transform-scale-500-500-1.0-agg-reference.png b/tests/visual_tests/images/geometry-transform-scale-500-500-1.0-agg-reference.png index 14c046af4..f139484e4 100644 Binary files a/tests/visual_tests/images/geometry-transform-scale-500-500-1.0-agg-reference.png and b/tests/visual_tests/images/geometry-transform-scale-500-500-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/geometry-transform-scale-500-500-2.0-agg-reference.png b/tests/visual_tests/images/geometry-transform-scale-500-500-2.0-agg-reference.png index 914448140..7506ac38c 100644 Binary files a/tests/visual_tests/images/geometry-transform-scale-500-500-2.0-agg-reference.png and b/tests/visual_tests/images/geometry-transform-scale-500-500-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-collide-512-512-1.0-agg-reference.png b/tests/visual_tests/images/marker-collide-512-512-1.0-agg-reference.png index 104e87d11..8f15bee0f 100644 Binary files a/tests/visual_tests/images/marker-collide-512-512-1.0-agg-reference.png and b/tests/visual_tests/images/marker-collide-512-512-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-collide-512-512-1.0-cairo-reference.png b/tests/visual_tests/images/marker-collide-512-512-1.0-cairo-reference.png index 5767f7fdc..bef31b744 100644 Binary files a/tests/visual_tests/images/marker-collide-512-512-1.0-cairo-reference.png and b/tests/visual_tests/images/marker-collide-512-512-1.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-collide-512-512-2.0-agg-reference.png b/tests/visual_tests/images/marker-collide-512-512-2.0-agg-reference.png index 95b84c6b5..5e6ebd591 100644 Binary files a/tests/visual_tests/images/marker-collide-512-512-2.0-agg-reference.png and b/tests/visual_tests/images/marker-collide-512-512-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-collide-512-512-2.0-cairo-reference.png b/tests/visual_tests/images/marker-collide-512-512-2.0-cairo-reference.png index c5d981e62..59e8e64d8 100644 Binary files a/tests/visual_tests/images/marker-collide-512-512-2.0-cairo-reference.png and b/tests/visual_tests/images/marker-collide-512-512-2.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-1.0-agg-reference.png b/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-1.0-agg-reference.png new file mode 100644 index 000000000..4c09b645a Binary files /dev/null and b/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-1.0-cairo-reference.png b/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-1.0-cairo-reference.png new file mode 100644 index 000000000..9bdda6e13 Binary files /dev/null and b/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-1.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-2.0-agg-reference.png b/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-2.0-agg-reference.png new file mode 100644 index 000000000..12dbf26d6 Binary files /dev/null and b/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-2.0-cairo-reference.png b/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-2.0-cairo-reference.png new file mode 100644 index 000000000..b21c6749b Binary files /dev/null and b/tests/visual_tests/images/marker-line-placement-many-vertices-600-400-2.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-257-256-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-hex-grid-257-256-1.0-agg-reference.png index 36268a453..c96b1cf08 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-257-256-1.0-agg-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-257-256-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-257-256-1.0-cairo-reference.png b/tests/visual_tests/images/marker-on-hex-grid-257-256-1.0-cairo-reference.png index 37ffc2529..469264aa2 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-257-256-1.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-257-256-1.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-257-256-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-hex-grid-257-256-2.0-agg-reference.png index 2f5c6b627..93aa57d54 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-257-256-2.0-agg-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-257-256-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-257-256-2.0-cairo-reference.png b/tests/visual_tests/images/marker-on-hex-grid-257-256-2.0-cairo-reference.png index 2c9aa8945..2d7fe3945 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-257-256-2.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-257-256-2.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-400-600-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-hex-grid-400-600-1.0-agg-reference.png index 987302d42..a9b5c9cad 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-400-600-1.0-agg-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-400-600-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-400-600-1.0-cairo-reference.png b/tests/visual_tests/images/marker-on-hex-grid-400-600-1.0-cairo-reference.png index 3c8665889..dd276c1d0 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-400-600-1.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-400-600-1.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-400-600-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-hex-grid-400-600-2.0-agg-reference.png index 7047e230c..c58cccf2f 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-400-600-2.0-agg-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-400-600-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-400-600-2.0-cairo-reference.png b/tests/visual_tests/images/marker-on-hex-grid-400-600-2.0-cairo-reference.png index 4f9a0113d..9855a52d2 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-400-600-2.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-400-600-2.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-600-400-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-hex-grid-600-400-1.0-agg-reference.png index 48ed8e678..19f6383b1 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-600-400-1.0-agg-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-600-400-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-600-400-1.0-cairo-reference.png b/tests/visual_tests/images/marker-on-hex-grid-600-400-1.0-cairo-reference.png index c0d01e3f1..21e0de79d 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-600-400-1.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-600-400-1.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-600-400-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-hex-grid-600-400-2.0-agg-reference.png index d064ce2fd..6897880d7 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-600-400-2.0-agg-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-600-400-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-hex-grid-600-400-2.0-cairo-reference.png b/tests/visual_tests/images/marker-on-hex-grid-600-400-2.0-cairo-reference.png index 1970f5dc3..9ccf84133 100644 Binary files a/tests/visual_tests/images/marker-on-hex-grid-600-400-2.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-hex-grid-600-400-2.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-1.0-agg-reference.png index dbb58e15e..e93a253c7 100644 Binary files a/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-1.0-agg-reference.png and b/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-1.0-cairo-reference.png b/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-1.0-cairo-reference.png index 8ad863304..76888a567 100644 Binary files a/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-1.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-1.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-2.0-agg-reference.png index a92820548..b20e8ddbd 100644 Binary files a/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-2.0-agg-reference.png and b/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-2.0-cairo-reference.png b/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-2.0-cairo-reference.png index 86e73713a..1406071eb 100644 Binary files a/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-2.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-line-and-avoid-edges-512-512-2.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-1.0-agg-reference.png index 63fa8a641..8302737f6 100644 Binary files a/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-1.0-agg-reference.png and b/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-2.0-agg-reference.png index 754d22092..11e7edc10 100644 Binary files a/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-2.0-agg-reference.png and b/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-2.0-cairo-reference.png b/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-2.0-cairo-reference.png index 81322150c..ea61d4a04 100644 Binary files a/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-2.0-cairo-reference.png and b/tests/visual_tests/images/marker-on-line-and-line-placement-600-400-2.0-cairo-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-spacing-eq-width-600-400-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-spacing-eq-width-600-400-1.0-agg-reference.png index cc8483f9e..e60350382 100644 Binary files a/tests/visual_tests/images/marker-on-line-spacing-eq-width-600-400-1.0-agg-reference.png and b/tests/visual_tests/images/marker-on-line-spacing-eq-width-600-400-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-spacing-eq-width-600-400-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-spacing-eq-width-600-400-2.0-agg-reference.png index b2c926dbb..17cad8c0d 100644 Binary files a/tests/visual_tests/images/marker-on-line-spacing-eq-width-600-400-2.0-agg-reference.png and b/tests/visual_tests/images/marker-on-line-spacing-eq-width-600-400-2.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-spacing-eq-width-overlap-600-400-1.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-spacing-eq-width-overlap-600-400-1.0-agg-reference.png index 4d7850fe6..7002220d6 100644 Binary files a/tests/visual_tests/images/marker-on-line-spacing-eq-width-overlap-600-400-1.0-agg-reference.png and b/tests/visual_tests/images/marker-on-line-spacing-eq-width-overlap-600-400-1.0-agg-reference.png differ diff --git a/tests/visual_tests/images/marker-on-line-spacing-eq-width-overlap-600-400-2.0-agg-reference.png b/tests/visual_tests/images/marker-on-line-spacing-eq-width-overlap-600-400-2.0-agg-reference.png index 11fdf0eb9..ab5797cd9 100644 Binary files a/tests/visual_tests/images/marker-on-line-spacing-eq-width-overlap-600-400-2.0-agg-reference.png and b/tests/visual_tests/images/marker-on-line-spacing-eq-width-overlap-600-400-2.0-agg-reference.png differ diff --git a/tests/visual_tests/styles/marker-line-placement-many-vertices.xml b/tests/visual_tests/styles/marker-line-placement-many-vertices.xml new file mode 100644 index 000000000..66cc71ea2 --- /dev/null +++ b/tests/visual_tests/styles/marker-line-placement-many-vertices.xml @@ -0,0 +1,21 @@ + + + + + My Style + + csv + + name,wkt + one,"LINESTRING(-11910145.81 4703881.8, -11910145.81 4703423.84,-11910160.59 4703432.16,-11910166.19 4703437.59,-11910173.45 4703446.41,-11910177.3 4703450.97,-11910192.16 4703462.59,-11910204.85 4703471.78,-11910212.45 4703479.48,-11910221.64 4703489.36,-11910226.1 4703494.08,-11910237.21 4703504.49,-11910243.24 4703510.09,-11910248.05 4703515.34,-11910252.77 4703519.28,-11910270.35 4703533.17,-11910287.15 4703551.01,-11910297.38 4703561.96,-11910305.77 4703571.92,-11910310.15 4703577.61,-11910316.36 4703584.26,-11910322.14 4703588.67,-11910331.31 4703595.72,-11910344.33 4703608.96,-11910351.24 4703615.98,-11910355.65 4703620.48,-11910366.33 4703631.8,-11910372.95 4703639.49,-11910377.01 4703645.05,-11910379.94 4703647.91,-11910384.5 4703651.34,-11910393.1 4703660.65,-11910398.84 4703665.75,-11910405.07 4703670.16,-11910407.65 4703673.09,-11910410.87 4703677.79,-11910414.38 4703681.34,-11910417.73 4703687.09,-11910420.81 4703692.48,-11910429.84 4703699.54,-11910432.91 4703703.67,-11910437.32 4703710.88,-11910442.36 4703715.78,-11910449.22 4703720.33,-11910451.95 4703722.55,-11910455.8 4703727.74,-11910464.26 4703732.86,-11910471.12 4703737.82,-11910478.04 4703746.84,-11910491.9 4703763.57,-11910498.05 4703770.49,-11910507.08 4703782.24,-11910519.18 4703795.54,-11910521.99 4703802.82,-11910526.6 4703809.54,-11910530.8 4703813.87,-11910535.7 4703823.8,-11910540.95 4703834.86,-11910543.54 4703839.76,-11910548.78 4703853.41,-11910550.39 4703856.97,-11910553.61 4703860.69,-11910555.77 4703869.08,-11910558.86 4703875.87,-11910561.37 4703879.51,-11910566.84 4703882.72,-11910571.38 4703883.63,-11910576.21 4703884.4,-11910580.05 4703884.4,-11910584.18 4703885.38,-11910593.08 4703887.55,-11910599.16 4703891.19,-11910605.39 4703894.13,-11910609.37 4703895.74,-11910612.17 4703896.01,-11910617.49 4703893.15,-11910623.37 4703888.19,-11910634.42 4703883.42,-11910644.28 4703881.75,-11910653.52 4703881.8)" + + + + + + diff --git a/tests/visual_tests/test.py b/tests/visual_tests/test.py index 74f06eec8..ce88d73ca 100755 --- a/tests/visual_tests/test.py +++ b/tests/visual_tests/test.py @@ -297,6 +297,7 @@ files = { 'simplify-zhao-saalfeld': {'sizes': [(500, 1000)]}, 'simplify-visvalingam-whyatt': {'sizes': [(500, 1000)]}, 'simplify-douglas-peucker': {'sizes': [(500, 1000)]}, + 'marker-line-placement-many-vertices': {'sizes': [(600, 400)]}, } class Reporting: