GTEST_TEST(BZFFile, mergeKEY) { Common::MemoryReadStream *stream = new Common::MemoryReadStream(kBZFFile); Aurora::BZFFile bzf(stream); Common::MemoryReadStream keyStream(kKEYFile); Aurora::KEYFile key(keyStream); bzf.mergeKEY(key, 0); EXPECT_EQ(bzf.findResource("ozymandias", Aurora::kFileTypeTXT), 0); const Aurora::BZFFile::ResourceList &resources = bzf.getResources(); ASSERT_EQ(resources.size(), 1); const Aurora::BZFFile::Resource &resource = *resources.begin(); EXPECT_STREQ(resource.name.c_str(), "ozymandias"); EXPECT_EQ(resource.type, Aurora::kFileTypeTXT); EXPECT_EQ(resource.hash, 0); EXPECT_EQ(resource.index, 0); }
std::pair<double, bool > find_param(point2d_t const & p, monomial_form < point2d_t > const & mf ) { std::vector<double> coeffs(mf.size()); auto a = [&mf](int i){ return mf[i][0];}; auto b = [&mf](int i){ return mf[i][1];}; std::vector<double > l0j(mf.size()); for(int j = 0;j < mf.degree(); ++j) { size_t m = j + 1; l0j[j] = (b(m) - b(0)) * p[0] + (a(0) - a(m)) * p[1] + (a(m) * b(0) - b(m) * a(0)); } bspline < double > bzf( ops::to_bezier(monomial_form < double > (l0j, mf.start_param(), mf.end_param()) )); return find_next_rootc(bzf, mf.start_param(), tol::resabs); }