@@ -81,6 +81,15 @@ void MarkerTest::Marker(const std::string &_renderEngine)
81
81
marker->SetType (MarkerType::MT_NONE);
82
82
EXPECT_EQ (MarkerType::MT_NONE, marker->Type ());
83
83
84
+ marker->SetType (MarkerType::MT_BOX);
85
+ EXPECT_EQ (MarkerType::MT_BOX, marker->Type ());
86
+
87
+ marker->SetType (MarkerType::MT_SPHERE);
88
+ EXPECT_EQ (MarkerType::MT_SPHERE, marker->Type ());
89
+
90
+ marker->SetType (static_cast <MarkerType>(11 ));
91
+ EXPECT_EQ (static_cast <MarkerType>(11 ), marker->Type ());
92
+
84
93
marker->SetType (MarkerType::MT_POINTS);
85
94
EXPECT_EQ (MarkerType::MT_POINTS, marker->Type ());
86
95
@@ -99,12 +108,54 @@ void MarkerTest::Marker(const std::string &_renderEngine)
99
108
marker->SetType (MarkerType::MT_TRIANGLE_FAN);
100
109
EXPECT_EQ (MarkerType::MT_TRIANGLE_FAN, marker->Type ());
101
110
111
+ // Repeat again
112
+ marker->SetType (MarkerType::MT_TRIANGLE_FAN);
113
+ EXPECT_EQ (MarkerType::MT_TRIANGLE_FAN, marker->Type ());
114
+
102
115
// exercise point api
103
116
EXPECT_NO_THROW (marker->AddPoint (math::Vector3d (0 , 1 , 2 ),
104
117
math::Color::White));
105
118
EXPECT_NO_THROW (marker->SetPoint (0 , math::Vector3d (3 , 1 , 2 )));
106
119
EXPECT_NO_THROW (marker->ClearPoints ());
107
120
121
+ marker->PreRender ();
122
+
123
+ // create material
124
+ MaterialPtr mat = scene->CreateMaterial ();
125
+ mat->SetAmbient (0.6 , 0.7 , 0.8 );
126
+ mat->SetDiffuse (0.3 , 0.8 , 0.2 );
127
+ mat->SetSpecular (0.4 , 0.9 , 1.0 );
128
+
129
+ MaterialPtr markerMat;
130
+ marker->SetType (MarkerType::MT_NONE);
131
+ marker->SetMaterial (mat);
132
+ markerMat = marker->Material ();
133
+ ASSERT_NE (nullptr , markerMat);
134
+
135
+ marker->SetType (static_cast <MarkerType>(11 ));
136
+ marker->SetMaterial (mat);
137
+ markerMat = marker->Material ();
138
+ ASSERT_NE (nullptr , markerMat);
139
+
140
+ marker->SetType (MarkerType::MT_BOX);
141
+ marker->SetMaterial (mat);
142
+ markerMat = marker->Material ();
143
+ ASSERT_NE (nullptr , markerMat);
144
+
145
+ marker->SetType (MarkerType::MT_POINTS);
146
+ marker->SetMaterial (mat);
147
+ markerMat = marker->Material ();
148
+ ASSERT_NE (nullptr , markerMat);
149
+
150
+ EXPECT_EQ (math::Color (0 .6f , 0 .7f , 0 .8f ), markerMat->Ambient ());
151
+ EXPECT_EQ (math::Color (0 .3f , 0 .8f , 0 .2f ), markerMat->Diffuse ());
152
+ EXPECT_EQ (math::Color (0 .4f , 0 .9f , 1 .0f ), markerMat->Specular ());
153
+
154
+
155
+ MaterialPtr matNull;
156
+ marker->SetMaterial (matNull, false );
157
+ ASSERT_NE (nullptr , markerMat);
158
+
108
159
// Clean up
109
160
engine->DestroyScene (scene);
110
161
unloadEngine (engine->Name ());
0 commit comments