shared_ptr<OsmMap> createTestMap() { shared_ptr<OsmMap> map(new OsmMap()); _map = map; shared_ptr<Node> n1 = createNode(0.0, 0.0); n1->setTag("building", "yes"); n1->setTag("name", "n1"); shared_ptr<Way> w1(new Way(Status::Unknown1, map->createNextWayId(), 13.0)); w1->setTag("area", "yes"); w1->setTag("building", "yes"); w1->setTag("name", "w1"); w1->addNode(createNode(0.1, 0.0)->getId()); w1->addNode(createNode(0.2, 0.0)->getId()); w1->addNode(createNode(0.2, 0.1)->getId()); w1->addNode(w1->getNodeId(0)); map->addWay(w1); shared_ptr<Way> w2(new Way(Status::Unknown1, map->createNextWayId(), 13.0)); w2->setTag("highway", "track"); w2->setTag("name", "w2"); w2->addNode(createNode(0.3, 0.0)->getId()); w2->addNode(createNode(0.3, 0.1)->getId()); map->addWay(w2); shared_ptr<Way> w3(new Way(Status::Unknown1, map->createNextWayId(), 13.0)); w3->setTag("highway", "road"); w3->setTag("name", "w3"); w3->addNode(createNode(0.4, 0.0)->getId()); w3->addNode(createNode(0.4, 0.1)->getId()); map->addWay(w3); shared_ptr<Way> w4(new Way(Status::Unknown1, map->createNextWayId(), 13.0)); w4->addNode(createNode(0.5, 0.0)->getId()); w4->addNode(createNode(0.7, 0.0)->getId()); w4->addNode(createNode(0.6, 0.1)->getId()); w4->addNode(w4->getNodeId(0)); map->addWay(w4); shared_ptr<Way> w5(new Way(Status::Unknown1, map->createNextWayId(), 13.0)); w5->addNode(createNode(0.55, 0.01)->getId()); w5->addNode(createNode(0.65, 0.01)->getId()); w5->addNode(createNode(0.6, 0.05)->getId()); w5->addNode(w5->getNodeId(0)); map->addWay(w5); shared_ptr<Relation> r1(new Relation(Status::Unknown1, 1, 15.0, "multipolygon")); r1->setTag("building", "yes"); r1->setTag("name", "r1"); r1->addElement("outer", w4->getElementId()); r1->addElement("inner", w5->getElementId()); map->addRelation(r1); return map; }
void tryInitializer() { Widget w1( 10, 2.0 ); Widget w2{ 10, 2.0 }; Widget w5(w1); Widget w6{w1}; Widget w7(std::move(w1)); Widget w8{std::move(w1)}; Widget w9( 1, 2.0 ); //float b = w9; // Error }
int main() { Word w1, w2, w3, w4, w5(w4), w6=w5; Sentence s1, s2, s3, s4, s5(s4), s6=s5; Paragraph p1, p2, p3(p2), p4=p3; Story st1, st2, st3(st2), st4=st3; w1++; w1--; --w1; ++w1; s1++; s1--; ++s1; --s1; s1 = w1 + w2 + w3; s2 = w2 + w4; p1 = (s1 + s2); st1 = st1 + p2 + ((p1 + p1 + p1) + 1); // Word w1; // std::cout << w1 << std::endl; // std::cout << "End of code" << std::endl; }
void VectorTest::test_constructor(void) { message += "test_constructor\n"; std::string file_name = "../data/vector.dat"; // Default Vector<bool> v1; assert_true(v1.size() == 0, LOG); // Size Vector<bool> v2(1); assert_true(v2.size() == 1, LOG); // Size initialization Vector<bool> v3(1, false); assert_true(v3.size() == 1, LOG); assert_true(v3[0] == false, LOG); // File Vector<int> v4(3, 0); v4.save(file_name); Vector<int> w4(file_name); assert_true(w4.size() == 3, LOG); assert_true(w4 == 0, LOG); // Sequential Vector<int> v6(10, 5, 50); assert_true(v6.size() == 9, LOG); assert_true(v6[0] == 10, LOG); assert_true(v6[8] == 50, LOG); Vector<double> v7(3.0, 0.2, 3.8); assert_true(v7.size() == 5, LOG); assert_true(v7[0] == 3.0, LOG); assert_true(v7[4] == 3.8, LOG); Vector<int> v8(9, -1, 1); assert_true(v8.size() == 9, LOG); assert_true(v8[0] == 9, LOG); assert_true(v8[8] == 1, LOG); // Copy Vector<std::string> v5(1, "hello"); Vector<std::string> w5(v5); assert_true(w5.size() == 1, LOG); assert_true(w5[0] == "hello", LOG); }
void init_mine_mesh(GLShape& base_mesh, GLShape& wheel_mesh) { float d = 0.025f; float x0 = 1.5f * d; float x1 = 2.0f * d; float y0 = 3.0f * d; float y1 = 4.0f * d; float z0 = d * 0.25f; float z1 = d; Vector3 p0(-x1, 0.0f, z1); Vector3 p1(-x0, 0.0f, z1); Vector3 p2(-x0, y0, z0); Vector3 p3(x0, y0, z0); Vector3 p4(x0, 0.0f, z1); Vector3 p5(x1, 0.0f, z1); Vector3 p6(x1, y1, 0.0f); Vector3 p7(-x1, y1, 0.0f); Vector3 q0(-x1, 0.0f, -z1); Vector3 q1(-x0, 0.0f, -z1); Vector3 q2(-x0, y0, -z0); Vector3 q3(x0, y0, -z0); Vector3 q4(x0, 0.0f, -z1); Vector3 q5(x1, 0.0f, -z1); Vector3 q6(x1, y1, 0.0f); Vector3 q7(-x1, y1, 0.0f); base_mesh = { p0, p1, p2, p0, p2, p7, p2, p3, p6, p2, p6, p7, p3, p4, p5, p3, p5, p6, q0, q1, q2, q0, q2, q7, q2, q3, q6, q2, q6, q7, q3, q4, q5, q3, q5, q6 }; std::vector<Vector2> wheel = circle(Vector2(), 3.0f * d, 16); wheel = cut(wheel, circle(Vector2(), 2.5f * d, 16)); wheel_mesh = to_xy(triangulate(wheel)); Vector3 w0(-d * 0.25f, -2.75f * d, 0.0f); Vector3 w1(d * 0.25f, -2.75f * d, 0.0f); Vector3 w2(d * 0.25f, 2.75f * d, 0.0f); Vector3 w3(-d * 0.25f, 2.75f * d, 0.0f); Vector3 w4(-d * 2.75f, -0.25f * d, 0.0f); Vector3 w5(d * 2.75f, -0.25f * d, 0.0f); Vector3 w6(d * 2.75f, 0.25f * d, 0.0f); Vector3 w7(-d * 2.75f, 0.25f * d, 0.0f); wheel_mesh.push_back(w0); wheel_mesh.push_back(w1); wheel_mesh.push_back(w2); wheel_mesh.push_back(w0); wheel_mesh.push_back(w2); wheel_mesh.push_back(w3); wheel_mesh.push_back(w4); wheel_mesh.push_back(w5); wheel_mesh.push_back(w6); wheel_mesh.push_back(w4); wheel_mesh.push_back(w6); wheel_mesh.push_back(w7); }