void difference_output(std::string const& caseid, G1 const& g1, G2 const& g2, Output const& output) { boost::ignore_unused(caseid, g1, g2, output); #if defined(TEST_WITH_SVG) { typedef typename bg::coordinate_type<G1>::type coordinate_type; typedef typename bg::point_type<G1>::type point_type; bool const ccw = bg::point_order<G1>::value == bg::counterclockwise || bg::point_order<G2>::value == bg::counterclockwise; bool const open = bg::closure<G1>::value == bg::open || bg::closure<G2>::value == bg::open; std::ostringstream filename; filename << "difference_" << caseid << "_" << string_from_type<coordinate_type>::name() << (ccw ? "_ccw" : "") << (open ? "_open" : "") #if defined(BOOST_GEOMETRY_NO_SELF_TURNS) << "_no_self" #endif #if defined(BOOST_GEOMETRY_NO_ROBUSTNESS) << "_no_rob" #endif << ".svg"; std::ofstream svg(filename.str().c_str()); bg::svg_mapper<point_type> mapper(svg, 500, 500); mapper.add(g1); mapper.add(g2); mapper.map(g1, "fill-opacity:0.3;fill:rgb(51,51,153);stroke:rgb(51,51,153);stroke-width:3"); mapper.map(g2, "fill-opacity:0.5;fill:rgb(153,204,0);stroke:rgb(153,204,0);stroke-width:3"); for (typename Output::const_iterator it = output.begin(); it != output.end(); ++it) { mapper.map(*it, //sym ? "fill-opacity:0.2;stroke-opacity:0.4;fill:rgb(255,255,0);stroke:rgb(255,0,255);stroke-width:8" : "fill-opacity:0.2;stroke-opacity:0.4;fill:rgb(255,0,0);stroke:rgb(255,0,255);stroke-width:8"); } } #endif }
inline static bool skip(Stream& stream, Output& output) { output.begin() = stream.begin(); if (AtLeastOne) { if (! as_range<H>::skip(stream)) return false; if (stream.empty()) { output.end() = stream.begin(); return true; } } while (as_range<H>::skip(stream)) { if (stream.empty()) { output.end() = stream.begin(); return true; } }; output.end() = stream.begin(); return true; }
void difference_output(std::string const& caseid, G1 const& g1, G2 const& g2, Output const& output) { #if defined(TEST_WITH_SVG) { typedef typename bg::coordinate_type<G1>::type coordinate_type; typedef typename bg::point_type<G1>::type point_type; std::ostringstream filename; filename << "difference_" << caseid << "_" << string_from_type<coordinate_type>::name() #if defined(BOOST_GEOMETRY_NO_ROBUSTNESS) << "_no_rob" #endif << ".svg"; std::ofstream svg(filename.str().c_str()); bg::svg_mapper<point_type> mapper(svg, 500, 500); mapper.add(g1); mapper.add(g2); mapper.map(g1, "fill-opacity:0.3;fill:rgb(51,51,153);stroke:rgb(51,51,153);stroke-width:3"); mapper.map(g2, "fill-opacity:0.5;fill:rgb(153,204,0);stroke:rgb(153,204,0);stroke-width:3"); for (typename Output::const_iterator it = output.begin(); it != output.end(); ++it) { mapper.map(*it, //sym ? "fill-opacity:0.2;stroke-opacity:0.4;fill:rgb(255,255,0);stroke:rgb(255,0,255);stroke-width:8" : "fill-opacity:0.2;stroke-opacity:0.4;fill:rgb(255,0,0);stroke:rgb(255,0,255);stroke-width:8"); } } #endif }
void Layer::Predict(const Input& x, ClassificationData::Output* y) const { Output out; Predict(x, &out); *y = std::distance(out.begin(), std::max_element(out.begin(), out.begin())); }