Skip to content

Commit 73b00a9

Browse files
committed
Cleanup for Visualize Frustum
Signed-off-by: Maksim Derbasov <ntfs.hard@gmail.com>
1 parent 4df5170 commit 73b00a9

File tree

5 files changed

+27
-77
lines changed

5 files changed

+27
-77
lines changed

src/gui/plugins/global_illumination_civct/GlobalIlluminationCiVct.cc

-1
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,6 @@ GlobalIlluminationCiVct::GlobalIlluminationCiVct() :
161161
GuiSystem(),
162162
dataPtr(new GlobalIlluminationCiVctPrivate)
163163
{
164-
// no ops
165164
}
166165

167166
/////////////////////////////////////////////////

src/gui/plugins/global_illumination_vct/GlobalIlluminationVct.cc

-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,6 @@ GlobalIlluminationVct::GlobalIlluminationVct() :
155155
GuiSystem(),
156156
dataPtr(new GlobalIlluminationVctPrivate)
157157
{
158-
// no ops
159158
}
160159

161160
/////////////////////////////////////////////////

src/gui/plugins/visualize_frustum/VisualizeFrustum.cc

+26-73
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,11 @@
2424
#include <utility>
2525
#include <vector>
2626

27-
#include <sdf/Link.hh>
28-
#include <sdf/Model.hh>
29-
3027
#include <gz/common/Console.hh>
3128
#include <gz/common/Profiler.hh>
3229

3330
#include <gz/plugin/Register.hh>
3431

35-
#include <gz/math/Vector3.hh>
3632
#include <gz/math/Pose3.hh>
3733

3834
#include <gz/transport/Node.hh>
@@ -43,7 +39,7 @@
4339
#include <gz/gui/MainWindow.hh>
4440

4541
#include "gz/sim/components/Name.hh"
46-
#include "gz/sim/components/World.hh"
42+
#include "gz/sim/components/ParentEntity.hh"
4743
#include "gz/sim/EntityComponentManager.hh"
4844
#include "gz/sim/Entity.hh"
4945
#include "gz/sim/rendering/RenderUtil.hh"
@@ -54,11 +50,6 @@
5450
#include "gz/rendering/Scene.hh"
5551
#include "gz/rendering/FrustumVisual.hh"
5652

57-
#include "gz/sim/components/Link.hh"
58-
#include "gz/sim/components/Sensor.hh"
59-
#include "gz/sim/components/Model.hh"
60-
#include "gz/sim/components/ParentEntity.hh"
61-
#include "gz/sim/components/Pose.hh"
6253
#include "gz/sim/Util.hh"
6354

6455
namespace gz
@@ -80,16 +71,13 @@ inline namespace GZ_SIM_VERSION_NAMESPACE
8071
public: rendering::FrustumVisualPtr frustum;
8172

8273
/// \brief URI sequence to the frustum link
83-
public: std::string frustumString{""};
84-
85-
/// \brief LaserScan message from sensor
86-
public: msgs::LogicalCameraSensor msg;
74+
public: std::string frustumString;
8775

8876
/// \brief Pose of the frustum visual
8977
public: math::Pose3d frustumPose{math::Pose3d::Zero};
9078

9179
/// \brief Topic name to subscribe
92-
public: std::string topicName{""};
80+
public: std::string topicName;
9381

9482
/// \brief List of topics publishing LogicalCameraSensor messages.
9583
public: QStringList topicList;
@@ -99,7 +87,6 @@ inline namespace GZ_SIM_VERSION_NAMESPACE
9987

10088
/// \brief Mutex for variable mutated by the checkbox
10189
/// callbacks.
102-
/// The variables are: msg
10390
public: std::mutex serviceMutex;
10491

10592
/// \brief Initialization flag
@@ -125,7 +112,6 @@ using namespace sim;
125112
VisualizeFrustum::VisualizeFrustum()
126113
: GuiSystem(), dataPtr(new VisualizeFrustumPrivate)
127114
{
128-
// no ops
129115
}
130116

131117
/////////////////////////////////////////////////
@@ -138,43 +124,13 @@ VisualizeFrustum::~VisualizeFrustum()
138124
/////////////////////////////////////////////////
139125
void VisualizeFrustum::LoadFrustum()
140126
{
141-
auto loadedEngNames = rendering::loadedEngines();
142-
if (loadedEngNames.empty())
143-
return;
144-
145-
// assume there is only one engine loaded
146-
auto engineName = loadedEngNames[0];
147-
if (loadedEngNames.size() > 1)
148-
{
149-
gzdbg << "More than one engine is available. "
150-
<< "VisualizeFrustum plugin will use engine ["
151-
<< engineName << "]" << std::endl;
152-
}
153-
auto engine = rendering::engine(engineName);
154-
if (!engine)
155-
{
156-
gzerr << "Internal error: failed to load engine [" << engineName
157-
<< "]. VisualizeFrustum plugin won't work." << std::endl;
158-
return;
159-
}
160-
161-
if (engine->SceneCount() == 0)
162-
return;
163-
164-
// assume there is only one scene
165-
// load scene
166-
auto scene = engine->SceneByIndex(0);
127+
auto scene = rendering::sceneFromFirstRenderEngine();
167128
if (!scene)
168129
{
169130
gzerr << "Internal error: scene is null." << std::endl;
170131
return;
171132
}
172133

173-
if (!scene->IsInitialized() || scene->VisualCount() == 0)
174-
{
175-
return;
176-
}
177-
178134
// Create frustum visual
179135
gzdbg << "Creating frustum visual" << std::endl;
180136
auto root = scene->RootVisual();
@@ -254,17 +210,17 @@ bool VisualizeFrustum::eventFilter(QObject *_obj, QEvent *_event)
254210
void VisualizeFrustum::Update(const UpdateInfo &,
255211
EntityComponentManager &_ecm)
256212
{
257-
GZ_PROFILE("VisualizeFrusum::Update");
213+
GZ_PROFILE("VisualizeFrustum::Update");
258214

259215
std::lock_guard<std::mutex> lock(this->dataPtr->serviceMutex);
260216

261217
if (this->dataPtr->frustumEntityDirty)
262218
{
263-
auto frustumURIVec = common::split(common::trimmed(
219+
const auto frustumURIVec = common::split(common::trimmed(
264220
this->dataPtr->frustumString), "::");
265-
if (frustumURIVec.size() > 0)
221+
if (!frustumURIVec.empty())
266222
{
267-
auto baseEntity = _ecm.EntityByComponents(
223+
const auto baseEntity = _ecm.EntityByComponents(
268224
components::Name(frustumURIVec[0]));
269225
if (!baseEntity)
270226
{
@@ -277,22 +233,21 @@ void VisualizeFrustum::Update(const UpdateInfo &,
277233
{
278234
auto parent = baseEntity;
279235
bool success = false;
280-
for (size_t i = 0u; i < frustumURIVec.size()-1; i++)
236+
for (size_t i = 0u; i < frustumURIVec.size()-1; ++i)
281237
{
282-
auto children = _ecm.EntitiesByComponents(
238+
const auto children = _ecm.EntitiesByComponents(
283239
components::ParentEntity(parent));
284240
bool foundChild = false;
285-
for (auto child : children)
241+
for (const auto child : children)
286242
{
287-
std::string nextstring = frustumURIVec[i+1];
243+
const auto &nextstring = frustumURIVec[i+1];
288244
auto comp = _ecm.Component<components::Name>(child);
289245
if (!comp)
290246
{
291247
continue;
292248
}
293-
std::string childname = std::string(
294-
comp->Data());
295-
if (nextstring.compare(childname) == 0)
249+
const auto &childname = comp->Data();
250+
if (nextstring == childname)
296251
{
297252
parent = child;
298253
foundChild = true;
@@ -322,7 +277,7 @@ void VisualizeFrustum::Update(const UpdateInfo &,
322277
// Only update frustumPose if the frustumEntity exists and the frustum is
323278
// initialized and the sensor message is yet to arrive.
324279
//
325-
// If we update the worldpose on the physics thread **after** the sensor
280+
// If we update the worldPose on the physics thread **after** the sensor
326281
// data arrives, the visual is offset from the obstacle if the sensor is
327282
// moving fast.
328283
if (!this->dataPtr->frustumEntityDirty && this->dataPtr->initialized &&
@@ -364,7 +319,7 @@ void VisualizeFrustum::DisplayVisual(bool _value)
364319
{
365320
std::lock_guard<std::mutex> lock(this->dataPtr->serviceMutex);
366321
this->dataPtr->frustum->SetVisible(_value);
367-
gzerr << "Frustum Visual Display " << ((_value) ? "ON." : "OFF.")
322+
gzdbg << "Frustum Visual Display " << (_value ? "ON." : "OFF.")
368323
<< std::endl;
369324
}
370325

@@ -377,12 +332,12 @@ void VisualizeFrustum::OnRefresh()
377332
// Get updated list
378333
std::vector<std::string> allTopics;
379334
this->dataPtr->node.TopicList(allTopics);
380-
for (auto topic : allTopics)
335+
for (const auto &topic : allTopics)
381336
{
382337
std::vector<transport::MessagePublisher> publishers;
383338
std::vector<transport::MessagePublisher> subscribers;
384339
this->dataPtr->node.TopicInfo(topic, publishers, subscribers);
385-
for (auto pub : publishers)
340+
for (const auto &pub : publishers)
386341
{
387342
if (pub.MsgTypeName() == "gz.msgs.LogicalCameraSensor")
388343
{
@@ -391,7 +346,7 @@ void VisualizeFrustum::OnRefresh()
391346
}
392347
}
393348
}
394-
if (this->dataPtr->topicList.size() > 0)
349+
if (!this->dataPtr->topicList.empty())
395350
{
396351
this->OnTopic(this->dataPtr->topicList.at(0));
397352
}
@@ -418,21 +373,19 @@ void VisualizeFrustum::OnScan(const msgs::LogicalCameraSensor &_msg)
418373
std::lock_guard<std::mutex> lock(this->dataPtr->serviceMutex);
419374
if (this->dataPtr->initialized)
420375
{
421-
this->dataPtr->msg = std::move(_msg);
422-
423-
this->dataPtr->frustum->SetNearClipPlane(this->dataPtr->msg.near_clip());
424-
this->dataPtr->frustum->SetFarClipPlane(this->dataPtr->msg.far_clip());
425-
this->dataPtr->frustum->SetHFOV(this->dataPtr->msg.horizontal_fov());
426-
this->dataPtr->frustum->SetAspectRatio(this->dataPtr->msg.aspect_ratio());
376+
this->dataPtr->frustum->SetNearClipPlane(_msg.near_clip());
377+
this->dataPtr->frustum->SetFarClipPlane(_msg.far_clip());
378+
this->dataPtr->frustum->SetHFOV(_msg.horizontal_fov());
379+
this->dataPtr->frustum->SetAspectRatio(_msg.aspect_ratio());
427380

428381
this->dataPtr->visualDirty = true;
429382

430-
for (auto data_values : this->dataPtr->msg.header().data())
383+
for (const auto &data_values : _msg.header().data())
431384
{
432385
if (data_values.key() == "frame_id")
433386
{
434-
if (this->dataPtr->frustumString.compare(
435-
common::trimmed(data_values.value(0))) != 0)
387+
if (this->dataPtr->frustumString !=
388+
common::trimmed(data_values.value(0)))
436389
{
437390
this->dataPtr->frustumString = common::trimmed(data_values.value(0));
438391
this->dataPtr->frustumEntityDirty = true;

src/gui/plugins/visualize_lidar/VisualizeLidar.cc

-1
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,6 @@ using namespace sim;
127127
VisualizeLidar::VisualizeLidar()
128128
: GuiSystem(), dataPtr(new VisualizeLidarPrivate)
129129
{
130-
// no ops
131130
}
132131

133132
/////////////////////////////////////////////////

src/systems/log/LogPlayback.cc

+1-1
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ void LogPlaybackPrivate::ReplaceResourceURIs(EntityComponentManager &_ecm)
308308
// Define equality functions for replacing component uri
309309
auto uriEqual = [&](const std::string &_s1, const std::string &_s2) -> bool
310310
{
311-
return (_s1.compare(_s2) == 0);
311+
return _s1 == _s2;
312312
};
313313

314314
auto geoUriEqual = [&](const sdf::Geometry &_g1,

0 commit comments

Comments
 (0)