Skip to content

Commit

Permalink
wip (revert this and redo commits)
Browse files Browse the repository at this point in the history
  • Loading branch information
wjwwood committed Aug 31, 2017
1 parent a8bbde2 commit 24a66f0
Show file tree
Hide file tree
Showing 7 changed files with 57 additions and 45 deletions.
7 changes: 6 additions & 1 deletion rviz_rendering/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ if(NOT CMAKE_CXX_STANDARD)
endif()

if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
add_compile_options(-Wall -Wextra -Wpedantic -Werror)
# add_compile_options(-Wall -Wextra -Wpedantic -Werror)
add_compile_options(-Wall -Wextra -Wpedantic)
endif()

find_package(ament_cmake REQUIRED)
Expand Down Expand Up @@ -52,12 +53,16 @@ set(headers_with_q_object

add_library(${PROJECT_NAME}
${headers_with_q_object}
src/rviz_rendering/camera_base.cpp
src/rviz_rendering/logging.cpp
src/rviz_rendering/object.cpp
src/rviz_rendering/ogre_logging.cpp
src/rviz_rendering/orbit_camera.cpp
src/rviz_rendering/render_system.cpp
src/rviz_rendering/render_window.cpp
src/rviz_rendering/render_window_impl.cpp
src/rviz_rendering/resource_config.cpp
src/rviz_rendering/shape.cpp
)
target_link_libraries(${PROJECT_NAME}
rviz_ogre_vendor::OgreMain
Expand Down
1 change: 1 addition & 0 deletions rviz_rendering/include/rviz_rendering/shape.hpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2008, Willow Garage, Inc.
* Copyright (c) 2017, Open Source Robotics Foundation, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Expand Down
3 changes: 2 additions & 1 deletion rviz_rendering/src/rviz_rendering/camera_base.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2008, Willow Garage, Inc.
* Copyright (c) 2017, Open Source Robotics Foundation, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Expand Down Expand Up @@ -43,7 +44,7 @@ namespace rviz_rendering

CameraBase::CameraBase(Ogre::SceneManager * scene_manager)
: scene_manager_(scene_manager),
relative_node_(NULL)
relative_node_(nullptr)
{
std::stringstream ss;
static uint32_t count = 0;
Expand Down
1 change: 1 addition & 0 deletions rviz_rendering/src/rviz_rendering/object.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2008, Willow Garage, Inc.
* Copyright (c) 2017, Open Source Robotics Foundation, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Expand Down
3 changes: 3 additions & 0 deletions rviz_rendering/src/rviz_rendering/orbit_camera.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2008, Willow Garage, Inc.
* Copyright (c) 2017, Open Source Robotics Foundation, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Expand Down Expand Up @@ -116,6 +117,7 @@ void OrbitCamera::update()
Ogre::Vector3 vec = pos - global_focal_point;
pos = relative_node_->getOrientation() * vec + global_focal_point;

// relative_node_->attachObject(camera_);
camera_->setFixedYawAxis(true, relative_node_->getOrientation() * Ogre::Vector3::UNIT_Y);
}

Expand Down Expand Up @@ -145,6 +147,7 @@ void OrbitCamera::pitch(float angle)

void OrbitCamera::roll(float angle)
{
(void)angle;
}

Ogre::Vector3 OrbitCamera::getPosition()
Expand Down
67 changes: 35 additions & 32 deletions rviz_rendering/src/rviz_rendering/render_window.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -117,16 +117,22 @@ ToString(const EnumType & enumValue)
bool
RenderWindow::event(QEvent * event)
{
// // printf("in RenderWindow::event(QEvent *)\n");
// switch (event->type()) {
// case QEvent::UpdateRequest:
// // m_update_pending = false;
// this->renderNow();
// return true;
// default:
// return QWindow::event(event);
// }
return QWindow::event(event);
qDebug() <<
"[" << QTime::currentTime().toString("HH:mm:ss:zzz") << "]:" <<
"event->type() ==" << ToString(event->type());
switch (event->type()) {
case QEvent::Resize:
if (this->isExposed()) {
impl_->resize(this->width(), this->height());
}
return QWindow::event(event);
case QEvent::UpdateRequest:
this->renderNow();
return true;
default:
return QWindow::event(event);
}
// return QWindow::event(event);
}

void
Expand All @@ -143,28 +149,25 @@ RenderWindow::exposeEvent(QExposeEvent * expose_event)
bool
RenderWindow::eventFilter(QObject * target, QEvent * event)
{
// printf("in RenderWindow::eventFilter(QObject *, QEvent *)\n");
if (target == this) {
qDebug() <<
"[" << QTime::currentTime().toString() << "]: " <<
"event->type() == " << ToString(event->type()) << ", " <<
"target == " << target;
switch (event->type()) {
case QEvent::Resize:
if (this->isExposed()) {
impl_->resize(this->width(), this->height());
} else {
printf("here\n");
}
return false;
case QEvent::UpdateRequest:
this->renderNow();
return true;
default:
return QWindow::event(event);
}
}
return false;
// if (target == this) {
// qDebug() <<
// "[" << QTime::currentTime().toString("HH:mm:ss:zzz") << "]:" <<
// "event->type() ==" << ToString(event->type()) <<
// "target ==" << target;
// switch (event->type()) {
// case QEvent::Resize:
// if (this->isExposed()) {
// impl_->resize(this->width(), this->height());
// }
// return false;
// case QEvent::UpdateRequest:
// this->renderNow();
// return true;
// default:
// return QWindow::event(event);
// }
// }
return QWindow::eventFilter(target, event);
}

} // namespace rviz_rendering
20 changes: 9 additions & 11 deletions rviz_rendering/src/rviz_rendering/shape.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2008, Willow Garage, Inc.
* Copyright (c) 2017, Open Source Robotics Foundation, Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
Expand Down Expand Up @@ -42,6 +43,8 @@
#include <OgreTextureManager.h>
#include <OgreVector3.h>

#include "rviz_rendering/logging.hpp"

namespace rviz_rendering
{

Expand Down Expand Up @@ -101,33 +104,28 @@ Shape::Shape(Type type, Ogre::SceneManager * scene_manager, Ogre::SceneNode * pa

ss << "Material";
material_name_ = ss.str();
material_ = Ogre::MaterialManager::getSingleton().create(material_name_, ROS_PACKAGE_NAME);
// TODO(wjwwood): remove hard coded rviz_rendering package name, was ROS_PACKAGE_NAME
material_ = Ogre::MaterialManager::getSingleton().create(material_name_, "rviz_rendering");
material_->setReceiveShadows(false);
material_->getTechnique(0)->setLightingEnabled(true);
material_->getTechnique(0)->setAmbient(0.5, 0.5, 0.5);

if (entity_) {
entity_->setMaterialName(material_name_);
}

#if (OGRE_VERSION_MAJOR <= 1 && OGRE_VERSION_MINOR <= 4)
if (entity_) {
entity_->setNormaliseNormals(true);
}
#endif
}

Shape::~Shape()
{
scene_manager_->destroySceneNode(scene_node_->getName() );
scene_manager_->destroySceneNode(offset_node_->getName() );
scene_manager_->destroySceneNode(scene_node_->getName());
scene_manager_->destroySceneNode(offset_node_->getName());

if (entity_) {
scene_manager_->destroyEntity(entity_);
}

material_->unload();
Ogre::MaterialManager::getSingleton().remove(material_->getName());
Ogre::MaterialManager::getSingleton().remove(material_->getName(), "rviz_rendering");
}

void Shape::setColor(const Ogre::ColourValue & c)
Expand Down Expand Up @@ -184,7 +182,7 @@ void Shape::setUserData(const Ogre::Any & data)
if (entity_) {
entity_->getUserObjectBindings().setUserAny(data);
} else {
ROS_ERROR(
RVIZ_RENDERING_LOG_ERROR(
"Shape not yet fully constructed. "
"Cannot set user data. Did you add triangles to the mesh already?");
}
Expand Down

0 comments on commit 24a66f0

Please sign in to comment.