1 #include "testing/testing.h"
75 params.shutter_close = 1.0;
78 params.frame_samples_xform =
params.frame_samples_shape = 5;
80 std::vector<double> frames(abc_archive->frames_begin(), abc_archive->frames_end());
82 EXPECT_NEAR(31.0, frames[0], 1
e-5);
83 EXPECT_NEAR(31.2, frames[1], 1
e-5);
84 EXPECT_NEAR(31.4, frames[2], 1
e-5);
85 EXPECT_NEAR(31.6, frames[3], 1
e-5);
86 EXPECT_NEAR(31.8, frames[4], 1
e-5);
87 EXPECT_NEAR(32.0, frames[5], 1
e-5);
88 EXPECT_NEAR(32.2, frames[6], 1
e-5);
89 EXPECT_NEAR(32.4, frames[7], 1
e-5);
90 EXPECT_NEAR(32.6, frames[8], 1
e-5);
91 EXPECT_NEAR(32.8, frames[9], 1
e-5);
93 for (
double frame : frames) {
94 EXPECT_TRUE(abc_archive->is_xform_frame(frame));
95 EXPECT_TRUE(abc_archive->is_shape_frame(frame));
102 params.shutter_open = 0.0;
103 params.shutter_close = 1.0;
104 params.frame_start = 31.0;
106 params.frame_samples_xform = 3;
107 params.frame_samples_shape = 2;
109 std::vector<double> frames(abc_archive->frames_begin(), abc_archive->frames_end());
111 EXPECT_NEAR(31.0, frames[0], 1
e-5);
112 EXPECT_TRUE(abc_archive->is_xform_frame(frames[0]));
113 EXPECT_TRUE(abc_archive->is_shape_frame(frames[0]));
114 EXPECT_NEAR(31.33333, frames[1], 1
e-5);
115 EXPECT_TRUE(abc_archive->is_xform_frame(frames[1]));
116 EXPECT_FALSE(abc_archive->is_shape_frame(frames[1]));
117 EXPECT_NEAR(31.5, frames[2], 1
e-5);
118 EXPECT_FALSE(abc_archive->is_xform_frame(frames[2]));
119 EXPECT_TRUE(abc_archive->is_shape_frame(frames[2]));
120 EXPECT_NEAR(31.66666, frames[3], 1
e-5);
121 EXPECT_TRUE(abc_archive->is_xform_frame(frames[3]));
122 EXPECT_FALSE(abc_archive->is_shape_frame(frames[3]));
123 EXPECT_NEAR(32.0, frames[4], 1
e-5);
124 EXPECT_TRUE(abc_archive->is_xform_frame(frames[4]));
125 EXPECT_TRUE(abc_archive->is_shape_frame(frames[4]));
126 EXPECT_NEAR(32.33333, frames[5], 1
e-5);
127 EXPECT_TRUE(abc_archive->is_xform_frame(frames[5]));
128 EXPECT_FALSE(abc_archive->is_shape_frame(frames[5]));
129 EXPECT_NEAR(32.5, frames[6], 1
e-5);
130 EXPECT_FALSE(abc_archive->is_xform_frame(frames[6]));
131 EXPECT_TRUE(abc_archive->is_shape_frame(frames[6]));
132 EXPECT_NEAR(32.66666, frames[7], 1
e-5);
133 EXPECT_TRUE(abc_archive->is_xform_frame(frames[7]));
134 EXPECT_FALSE(abc_archive->is_shape_frame(frames[7]));
140 params.shutter_open = -0.25;
141 params.shutter_close = 0.25;
142 params.frame_start = 31.0;
144 params.frame_samples_xform =
params.frame_samples_shape = 5;
146 std::vector<double> frames(abc_archive->frames_begin(), abc_archive->frames_end());
148 EXPECT_NEAR(31 - 0.25, frames[0], 1
e-5);
149 EXPECT_NEAR(31 - 0.15, frames[1], 1
e-5);
150 EXPECT_NEAR(31 - 0.05, frames[2], 1
e-5);
151 EXPECT_NEAR(31 + 0.05, frames[3], 1
e-5);
152 EXPECT_NEAR(31 + 0.15, frames[4], 1
e-5);
153 EXPECT_NEAR(32 - 0.25, frames[5], 1
e-5);
154 EXPECT_NEAR(32 - 0.15, frames[6], 1
e-5);
155 EXPECT_NEAR(32 - 0.05, frames[7], 1
e-5);
156 EXPECT_NEAR(32 + 0.05, frames[8], 1
e-5);
157 EXPECT_NEAR(32 + 0.15, frames[9], 1
e-5);
struct Main * BKE_main_new(void)
void BKE_main_free(struct Main *mainvar)
EXPECT_EQ(BLI_expr_pylike_eval(expr, nullptr, 0, &result), EXPR_PYLIKE_INVALID)
File and directory operations.
int BLI_exists(const char *path) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
int BLI_delete(const char *file, bool dir, bool recursive) ATTR_NONNULL()
Depsgraph * DEG_graph_new(struct Main *bmain, struct Scene *scene, struct ViewLayer *view_layer, eEvaluationMode mode)
struct Depsgraph Depsgraph
void DEG_free_node_types(void)
void DEG_graph_free(Depsgraph *graph)
void DEG_register_node_types(void)
ATTR_WARN_UNUSED_RESULT const BMVert const BMEdge * e
AlembicExportParams params
TEST_F(AlembicExportTest, TimeSamplesFullShutterUniform)