예제 #1
0
void DebugOutputScan(cv::Mat const& matObstacle, std::vector<rbt::point<double>> const& vecptfTemplate, char const* szFile) {
    cv::Mat matDebug;
    cv::Mat amatInput[] = {matObstacle, matObstacle, matObstacle};
    cv::merge(amatInput, 3, matDebug);

    boost::for_each(vecptfTemplate, [&](rbt::point<double> const& ptf) {
        rbt::point<int> ptn(ptf);
        auto& vec = matDebug.at<cv::Vec3b>(ptn.y, ptn.x);
        vec.val[0] = 0;
        vec.val[1] = 0;
        vec.val[2] = 255;
    });

    cv::imwrite(szFile, matDebug);
}
예제 #2
0
static String HHVM_METHOD(IntlDatePatternGenerator,
                          getBaseSkeleton,
                          const String& pattern) {
  GENERATOR_GET(data, this_);

  UErrorCode error = U_ZERO_ERROR;
  icu::UnicodeString ptn(u16(pattern, error));
  ICU_ERR_CHECK(data, error);

  icu::UnicodeString ret = data->generator().getBaseSkeleton(ptn, error);
  ICU_ERR_CHECK_MSG(data, error, "Error getting base skeleton");

  String out(u8(ret, error));
  ICU_ERR_CHECK(data, error);

  return out;
}