From 31b77f0f0c8ac38ae7f0b5930fe07c233ff0b6f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sat, 31 Dec 2022 04:46:34 +0100 Subject: [PATCH] doc: remove std::string usage from doc image generators. From some, at least. The easings need to wait for a growable String. --- doc/generated/primitives.cpp | 170 +++++++++++++++++------------------ doc/generated/shaders.cpp | 40 ++++----- 2 files changed, 105 insertions(+), 105 deletions(-) diff --git a/doc/generated/primitives.cpp b/doc/generated/primitives.cpp index 0baed4474..e2d4973b3 100644 --- a/doc/generated/primitives.cpp +++ b/doc/generated/primitives.cpp @@ -26,7 +26,7 @@ #include #include #include -#include +#include #include #include @@ -93,47 +93,47 @@ struct PrimitiveVisualizer: Platform::WindowlessApplication { int exec() override; - std::pair axis2D(); - std::pair axis3D(); - - std::pair capsule2DWireframe(); - std::pair circle2DWireframe(); - std::pair crosshair2D(); - std::pair line2D(); - std::pair squareWireframe(); - - std::pair capsule3DWireframe(); - std::pair circle3DWireframe(); - std::pair crosshair3D(); - std::pair coneWireframe(); - std::pair cubeWireframe(); - std::pair cylinderWireframe(); - std::pair grid3DWireframe(); - std::pair icosphereWireframe(); - std::pair line3D(); - std::pair planeWireframe(); - std::pair uvSphereWireframe(); - - std::pair circle2DSolid(); - std::pair squareSolid(); - - std::pair capsule3DSolid(); - std::pair circle3DSolid(); - std::pair coneSolid(); - std::pair cubeSolid(); - std::pair cylinderSolid(); - std::pair grid3DSolid(); - std::pair icosphereSolid(); - std::pair planeSolid(); - std::pair uvSphereSolid(); - - std::pair gradient2D(); - std::pair gradient2DHorizontal(); - std::pair gradient2DVertical(); - - std::pair gradient3D(); - std::pair gradient3DHorizontal(); - std::pair gradient3DVertical(); + std::pair axis2D(); + std::pair axis3D(); + + std::pair capsule2DWireframe(); + std::pair circle2DWireframe(); + std::pair crosshair2D(); + std::pair line2D(); + std::pair squareWireframe(); + + std::pair capsule3DWireframe(); + std::pair circle3DWireframe(); + std::pair crosshair3D(); + std::pair coneWireframe(); + std::pair cubeWireframe(); + std::pair cylinderWireframe(); + std::pair grid3DWireframe(); + std::pair icosphereWireframe(); + std::pair line3D(); + std::pair planeWireframe(); + std::pair uvSphereWireframe(); + + std::pair circle2DSolid(); + std::pair squareSolid(); + + std::pair capsule3DSolid(); + std::pair circle3DSolid(); + std::pair coneSolid(); + std::pair cubeSolid(); + std::pair cylinderSolid(); + std::pair grid3DSolid(); + std::pair icosphereSolid(); + std::pair planeSolid(); + std::pair uvSphereSolid(); + + std::pair gradient2D(); + std::pair gradient2DHorizontal(); + std::pair gradient2DVertical(); + + std::pair gradient3D(); + std::pair gradient3DHorizontal(); + std::pair gradient3DVertical(); }; namespace { @@ -191,7 +191,7 @@ int PrimitiveVisualizer::exec() { for(auto fun: {&PrimitiveVisualizer::axis2D}) { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename; + Containers::StringView filename; Containers::Optional data; std::tie(data, filename) = (this->*fun)(); @@ -210,7 +210,7 @@ int PrimitiveVisualizer::exec() { for(auto fun: {&PrimitiveVisualizer::axis3D}) { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename; + Containers::StringView filename; Containers::Optional data; std::tie(data, filename) = (this->*fun)(); @@ -235,7 +235,7 @@ int PrimitiveVisualizer::exec() { { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename; + Containers::StringView filename; Containers::Optional data; std::tie(data, filename) = (this->*fun)(); @@ -266,7 +266,7 @@ int PrimitiveVisualizer::exec() { { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename; + Containers::StringView filename; Containers::Optional data; std::tie(data, filename) = (this->*fun)(); @@ -296,7 +296,7 @@ int PrimitiveVisualizer::exec() { { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename; + Containers::StringView filename; Containers::Optional data; std::tie(data, filename) = (this->*fun)(); @@ -341,7 +341,7 @@ int PrimitiveVisualizer::exec() { { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename; + Containers::StringView filename; Containers::Optional data; std::tie(data, filename) = (this->*fun)(); @@ -364,7 +364,7 @@ int PrimitiveVisualizer::exec() { &PrimitiveVisualizer::gradient2DVertical}) { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename; + Containers::StringView filename; Containers::Optional data; std::tie(data, filename) = (this->*fun)(); @@ -387,7 +387,7 @@ int PrimitiveVisualizer::exec() { &PrimitiveVisualizer::gradient3DVertical}) { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename; + Containers::StringView filename; Containers::Optional data; std::tie(data, filename) = (this->*fun)(); @@ -404,11 +404,11 @@ int PrimitiveVisualizer::exec() { return 0; } -std::pair PrimitiveVisualizer::axis2D() { +std::pair PrimitiveVisualizer::axis2D() { return {Primitives::axis2D(), "axis2d.png"}; } -std::pair PrimitiveVisualizer::gradient2D() { +std::pair PrimitiveVisualizer::gradient2D() { return {Primitives::gradient2D({1.0f, -2.0f}, 0x2f83cc_srgbf, {-1.0f, 2.0f}, 0x3bd267_srgbf), "gradient2d.png"}; } @@ -419,151 +419,151 @@ namespace { const Color3 Gradient80Percent = Math::lerp(0x2f83cc_srgbf, 0x3bd267_srgbf, 0.8f); } -std::pair PrimitiveVisualizer::gradient2DHorizontal() { +std::pair PrimitiveVisualizer::gradient2DHorizontal() { return {Primitives::gradient2DHorizontal(Gradient20Percent, Gradient80Percent), "gradient2dhorizontal.png"}; } -std::pair PrimitiveVisualizer::gradient2DVertical() { +std::pair PrimitiveVisualizer::gradient2DVertical() { /* End colors are 20%/80% blends of the above to match the range */ return {Primitives::gradient2DVertical(Gradient20Percent, Gradient80Percent), "gradient2dvertical.png"}; } -std::pair PrimitiveVisualizer::axis3D() { +std::pair PrimitiveVisualizer::axis3D() { return {Primitives::axis3D(), "axis3d.png"}; } -std::pair PrimitiveVisualizer::gradient3D() { +std::pair PrimitiveVisualizer::gradient3D() { return {Primitives::gradient3D({1.0f, -2.0f, -1.5f}, 0x2f83cc_srgbf, {-1.0f, 2.0f, -1.5f}, 0x3bd267_srgbf), "gradient3d.png"}; } -std::pair PrimitiveVisualizer::gradient3DHorizontal() { +std::pair PrimitiveVisualizer::gradient3DHorizontal() { return {Primitives::gradient3DHorizontal(Gradient20Percent, Gradient80Percent), "gradient3dhorizontal.png"}; } -std::pair PrimitiveVisualizer::gradient3DVertical() { +std::pair PrimitiveVisualizer::gradient3DVertical() { return {Primitives::gradient3DVertical(Gradient20Percent, Gradient80Percent), "gradient3dvertical.png"}; } -std::pair PrimitiveVisualizer::capsule2DWireframe() { +std::pair PrimitiveVisualizer::capsule2DWireframe() { Trade::MeshData capsule = Primitives::capsule2DWireframe(8, 1, 0.75f); MeshTools::transformPointsInPlace(Matrix3::scaling(Vector2{0.75f}), capsule.mutableAttribute(Trade::MeshAttribute::Position)); return {std::move(capsule), "capsule2dwireframe.png"}; } -std::pair PrimitiveVisualizer::circle2DWireframe() { +std::pair PrimitiveVisualizer::circle2DWireframe() { return {Primitives::circle2DWireframe(32), "circle2dwireframe.png"}; } -std::pair PrimitiveVisualizer::crosshair2D() { +std::pair PrimitiveVisualizer::crosshair2D() { return {Primitives::crosshair2D(), "crosshair2d.png"}; } -std::pair PrimitiveVisualizer::line2D() { +std::pair PrimitiveVisualizer::line2D() { Trade::MeshData line = Primitives::line2D(); MeshTools::transformPointsInPlace(Matrix3::translation(Vector2::xAxis(-1.0f))*Matrix3::scaling(Vector2::xScale(2.0f)), line.mutableAttribute(Trade::MeshAttribute::Position)); return {std::move(line), "line2d.png"}; } -std::pair PrimitiveVisualizer::squareWireframe() { +std::pair PrimitiveVisualizer::squareWireframe() { return {Primitives::squareWireframe(), "squarewireframe.png"}; } -std::pair PrimitiveVisualizer::capsule3DWireframe() { +std::pair PrimitiveVisualizer::capsule3DWireframe() { Trade::MeshData capsule = Primitives::capsule3DWireframe(8, 1, 16, 1.0f); MeshTools::transformPointsInPlace(Matrix4::scaling(Vector3{0.75f}), capsule.mutableAttribute(Trade::MeshAttribute::Position)); return {std::move(capsule), "capsule3dwireframe.png"}; } -std::pair PrimitiveVisualizer::circle3DWireframe() { +std::pair PrimitiveVisualizer::circle3DWireframe() { return {Primitives::circle3DWireframe(32), "circle3dwireframe.png"}; } -std::pair PrimitiveVisualizer::crosshair3D() { +std::pair PrimitiveVisualizer::crosshair3D() { return {Primitives::crosshair3D(), "crosshair3d.png"}; } -std::pair PrimitiveVisualizer::coneWireframe() { +std::pair PrimitiveVisualizer::coneWireframe() { return {Primitives::coneWireframe(32, 1.25f), "conewireframe.png"}; } -std::pair PrimitiveVisualizer::cubeWireframe() { +std::pair PrimitiveVisualizer::cubeWireframe() { return {Primitives::cubeWireframe(), "cubewireframe.png"}; } -std::pair PrimitiveVisualizer::cylinderWireframe() { +std::pair PrimitiveVisualizer::cylinderWireframe() { return {Primitives::cylinderWireframe(1, 32, 1.0f), "cylinderwireframe.png"}; } -std::pair PrimitiveVisualizer::grid3DWireframe() { +std::pair PrimitiveVisualizer::grid3DWireframe() { return {Primitives::grid3DWireframe({5, 3}), "grid3dwireframe.png"}; } -std::pair PrimitiveVisualizer::icosphereWireframe() { +std::pair PrimitiveVisualizer::icosphereWireframe() { return {Primitives::icosphereWireframe(), "icospherewireframe.png"}; } -std::pair PrimitiveVisualizer::line3D() { +std::pair PrimitiveVisualizer::line3D() { Trade::MeshData line = Primitives::line3D(); MeshTools::transformPointsInPlace(Matrix4::translation(Vector3::xAxis(-1.0f))*Matrix4::scaling(Vector3::xScale(2.0f)), line.mutableAttribute(Trade::MeshAttribute::Position)); return {std::move(line), "line3d.png"}; } -std::pair PrimitiveVisualizer::planeWireframe() { +std::pair PrimitiveVisualizer::planeWireframe() { return {Primitives::planeWireframe(), "planewireframe.png"}; } -std::pair PrimitiveVisualizer::uvSphereWireframe() { +std::pair PrimitiveVisualizer::uvSphereWireframe() { return {Primitives::uvSphereWireframe(16, 32), "uvspherewireframe.png"}; } -std::pair PrimitiveVisualizer::circle2DSolid() { +std::pair PrimitiveVisualizer::circle2DSolid() { return {Primitives::circle2DSolid(16), "circle2dsolid.png"}; } -std::pair PrimitiveVisualizer::squareSolid() { +std::pair PrimitiveVisualizer::squareSolid() { return {Primitives::squareSolid(), "squaresolid.png"}; } -std::pair PrimitiveVisualizer::capsule3DSolid() { +std::pair PrimitiveVisualizer::capsule3DSolid() { Trade::MeshData capsule = Primitives::capsule3DSolid(4, 1, 12, 0.75f); MeshTools::transformPointsInPlace(Matrix4::scaling(Vector3{0.75f}), capsule.mutableAttribute(Trade::MeshAttribute::Position)); return {std::move(capsule), "capsule3dsolid.png"}; } -std::pair PrimitiveVisualizer::circle3DSolid() { +std::pair PrimitiveVisualizer::circle3DSolid() { return {Primitives::circle3DSolid(16), "circle3dsolid.png"}; } -std::pair PrimitiveVisualizer::coneSolid() { +std::pair PrimitiveVisualizer::coneSolid() { return {Primitives::coneSolid(1, 12, 1.25f, Primitives::ConeFlag::CapEnd), "conesolid.png"}; } -std::pair PrimitiveVisualizer::cubeSolid() { +std::pair PrimitiveVisualizer::cubeSolid() { return {Primitives::cubeSolid(), "cubesolid.png"}; } -std::pair PrimitiveVisualizer::cylinderSolid() { +std::pair PrimitiveVisualizer::cylinderSolid() { return {Primitives::cylinderSolid(1, 12, 1.0f, Primitives::CylinderFlag::CapEnds), "cylindersolid.png"}; } -std::pair PrimitiveVisualizer::grid3DSolid() { +std::pair PrimitiveVisualizer::grid3DSolid() { return {Primitives::grid3DSolid({5, 3}), "grid3dsolid.png"}; } -std::pair PrimitiveVisualizer::icosphereSolid() { +std::pair PrimitiveVisualizer::icosphereSolid() { return {Primitives::icosphereSolid(1), "icospheresolid.png"}; } -std::pair PrimitiveVisualizer::planeSolid() { +std::pair PrimitiveVisualizer::planeSolid() { return {Primitives::planeSolid(), "planesolid.png"}; } -std::pair PrimitiveVisualizer::uvSphereSolid() { +std::pair PrimitiveVisualizer::uvSphereSolid() { return {Primitives::uvSphereSolid(8, 16), "uvspheresolid.png"}; } diff --git a/doc/generated/shaders.cpp b/doc/generated/shaders.cpp index 9ceec77a3..a56d1db99 100644 --- a/doc/generated/shaders.cpp +++ b/doc/generated/shaders.cpp @@ -25,7 +25,7 @@ #include #include -#include +#include #include #include @@ -79,16 +79,16 @@ struct ShaderVisualizer: Platform::WindowlessApplication { int exec() override; - std::string phong(); - std::string meshVisualizer2D(); - std::string meshVisualizer2DPrimitiveId(); - std::string meshVisualizer3D(); - std::string meshVisualizer3DPrimitiveId(); - std::string flat(); - std::string vertexColor(); + Containers::StringView phong(); + Containers::StringView meshVisualizer2D(); + Containers::StringView meshVisualizer2DPrimitiveId(); + Containers::StringView meshVisualizer3D(); + Containers::StringView meshVisualizer3DPrimitiveId(); + Containers::StringView flat(); + Containers::StringView vertexColor(); - std::string vector(); - std::string distanceFieldVector(); + Containers::StringView vector(); + Containers::StringView distanceFieldVector(); Containers::Pointer _importer; }; @@ -142,7 +142,7 @@ int ShaderVisualizer::exec() { &ShaderVisualizer::distanceFieldVector}) { multisampleFramebuffer.clear(GL::FramebufferClear::Color|GL::FramebufferClear::Depth); - std::string filename = (this->*fun)(); + Containers::StringView filename = (this->*fun)(); GL::AbstractFramebuffer::blit(multisampleFramebuffer, framebuffer, framebuffer.viewport(), GL::FramebufferBlit::Color); Image2D result = framebuffer.read(framebuffer.viewport(), {PixelFormat::RGBA8Unorm}); @@ -161,7 +161,7 @@ namespace { const auto OutlineColor = 0xdcdcdc_srgbf; } -std::string ShaderVisualizer::phong() { +Containers::StringView ShaderVisualizer::phong() { Shaders::PhongGL{} .setAmbientColor(0x22272e_srgbf) .setDiffuseColor(BaseColor) @@ -175,7 +175,7 @@ std::string ShaderVisualizer::phong() { return "phong.png"; } -std::string ShaderVisualizer::meshVisualizer2D() { +Containers::StringView ShaderVisualizer::meshVisualizer2D() { const Matrix3 projection = Matrix3::projection(Vector2{3.0f})* Matrix3::rotation(13.7_degf); @@ -193,7 +193,7 @@ std::string ShaderVisualizer::meshVisualizer2D() { return "meshvisualizer2d.png"; } -std::string ShaderVisualizer::meshVisualizer2DPrimitiveId() { +Containers::StringView ShaderVisualizer::meshVisualizer2DPrimitiveId() { const Matrix3 projection = Matrix3::projection(Vector2{3.0f})* Matrix3::rotation(13.7_degf); @@ -219,7 +219,7 @@ std::string ShaderVisualizer::meshVisualizer2DPrimitiveId() { return "meshvisualizer2d-primitiveid.png"; } -std::string ShaderVisualizer::meshVisualizer3D() { +Containers::StringView ShaderVisualizer::meshVisualizer3D() { const Matrix4 transformation = Transformation* Matrix4::rotationZ(13.7_degf)* Matrix4::rotationX(-12.6_degf); @@ -244,7 +244,7 @@ std::string ShaderVisualizer::meshVisualizer3D() { return "meshvisualizer3d.png"; } -std::string ShaderVisualizer::meshVisualizer3DPrimitiveId() { +Containers::StringView ShaderVisualizer::meshVisualizer3DPrimitiveId() { const Matrix4 transformation = Transformation* Matrix4::rotationZ(13.7_degf)* Matrix4::rotationX(-12.6_degf); @@ -271,7 +271,7 @@ std::string ShaderVisualizer::meshVisualizer3DPrimitiveId() { return "meshvisualizer3d-primitiveid.png"; } -std::string ShaderVisualizer::flat() { +Containers::StringView ShaderVisualizer::flat() { Shaders::FlatGL3D{} .setColor(BaseColor) .setTransformationProjectionMatrix(Projection*Transformation) @@ -280,7 +280,7 @@ std::string ShaderVisualizer::flat() { return "flat.png"; } -std::string ShaderVisualizer::vertexColor() { +Containers::StringView ShaderVisualizer::vertexColor() { Trade::MeshData sphere = Primitives::uvSphereSolid(32, 64); /* Add a color attribute */ @@ -303,7 +303,7 @@ std::string ShaderVisualizer::vertexColor() { return "vertexcolor.png"; } -std::string ShaderVisualizer::vector() { +Containers::StringView ShaderVisualizer::vector() { Containers::Optional image; if(!_importer->openFile("vector.png") || !(image = _importer->image2D(0))) { Error() << "Cannot open vector.png"; @@ -332,7 +332,7 @@ std::string ShaderVisualizer::vector() { return "vector.png"; } -std::string ShaderVisualizer::distanceFieldVector() { +Containers::StringView ShaderVisualizer::distanceFieldVector() { Containers::Optional image; if(!_importer->openFile("vector-distancefield.png") || !(image = _importer->image2D(0))) { Error() << "Cannot open vector-distancefield.png";