| 34 | } |
| 35 | |
| 36 | void MotionBlurBoxes::SetUp() |
| 37 | { |
| 38 | Base::SetUp(); |
| 39 | renderer.setParam("backgroundColor", vec4f(0.2, 0.2, 0.2, 1.0f)); |
| 40 | camera.setParam("position", vec3f(0, 0, -9)); |
| 41 | camera.setParam("stereoMode", stereoMode); |
| 42 | camera.setParam("shutter", range1f(0.0f, 1.0f)); |
| 43 | camera.setParam("shutterType", shutterType); |
| 44 | camera.setParam("rollingShutterDuration", rollingShutterDuration); |
| 45 | |
| 46 | cpp::Geometry boxGeometry("box"); |
| 47 | boxGeometry.setParam( |
| 48 | "box", cpp::CopiedData(box3f(vec3f(-0.5f), vec3f(0.5f)))); |
| 49 | boxGeometry.commit(); |
| 50 | cpp::GeometricModel model(boxGeometry); |
| 51 | |
| 52 | cpp::Material material("obj"); |
| 53 | material.setParam("kd", vec3f(0.8f, 0.1, 0.4)); |
| 54 | material.setParam("ks", vec3f(0.2f)); |
| 55 | material.setParam("ns", 99.f); |
| 56 | material.commit(); |
| 57 | model.setParam("material", material); |
| 58 | model.commit(); |
| 59 | |
| 60 | cpp::Volume volume("structuredRegular"); |
| 61 | std::vector<float> volData(8); |
| 62 | std::generate( |
| 63 | volData.begin(), volData.end(), [n = 0]() mutable { return n++; }); |
| 64 | volume.setParam("data", cpp::CopiedData(volData.data(), vec3ul(2))); |
| 65 | volume.setParam("gridOrigin", vec3f(-0.5, 0.5, -0.5)); |
| 66 | volume.setParam("filter", OSP_VOLUME_FILTER_NEAREST); |
| 67 | volume.commit(); |
| 68 | |
| 69 | cpp::TransferFunction transferFun("piecewiseLinear"); |
| 70 | transferFun.setParam("value", range1f(0.f, 7.f)); |
| 71 | std::vector<vec3f> colors = {vec3f(1.0f, 0.5f, 0.5f), |
| 72 | vec3f(0.5f, 1.0f, 0.5f), |
| 73 | vec3f(0.5f, 1.0f, 1.0f), |
| 74 | vec3f(0.5f, 0.5f, 1.0f)}; |
| 75 | std::vector<float> opacities = {0.1f, 1.0f}; |
| 76 | transferFun.setParam("color", cpp::CopiedData(colors)); |
| 77 | transferFun.setParam("opacity", cpp::CopiedData(opacities)); |
| 78 | transferFun.commit(); |
| 79 | |
| 80 | cpp::VolumetricModel volModel(volume); |
| 81 | volModel.setParam("transferFunction", transferFun); |
| 82 | volModel.setParam("densityScale", 99.0f); |
| 83 | volModel.commit(); |
| 84 | |
| 85 | cpp::Geometry sphereGeometry("sphere"); |
| 86 | sphereGeometry.setParam( |
| 87 | "sphere.position", cpp::CopiedData(vec3f(0.3f, 0.6f, -0.2f))); |
| 88 | sphereGeometry.setParam("radius", 0.6f); |
| 89 | sphereGeometry.commit(); |
| 90 | cpp::GeometricModel clipModel(sphereGeometry); |
| 91 | clipModel.commit(); |
| 92 | |
| 93 | cpp::Group group; |
nothing calls this directly
no test coverage detected