Jump to content

  • Log In with Google      Sign In   
  • Create Account

Smart Viewpoint Computation C++ Library (free, open source)


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
No replies to this topic

#1 robertoranon   Members   -  Reputation: 112

Posted 27 April 2013 - 09:09 AM

SmartViewpointComputationLib is a C++ library to compute the best viewpoint in a 3D scene that satisfies a set of visual properties, such as size, visibility or angle of selected objects in the scene. For example, suppose you have a building floor scene like this one:

 

building.jpeg

 

 

and you would like a viewpoint that shows one of the computers in the rooms, say the one in the bottom left room. Let's suppose that "monitor", "keyboard", and "mouse" are the scene entities' names of that computer parts. You then create a set of properties like:
 
monitor: should be entirely visible from the viewpoint
monitor: should be not occluded by other objects
monitor: should be rendered at a certain minimum size 
 
and similarly for the other keyboard and mouse. You then ask the the library to compute a viewpoint satisfying those properties, and it will return something like this:

 

 

computer.jpeg

 

The available properties include objects's size, angle, occlusion, and position in the image rendered from the viewpoint (also relative position of two objects, e.g. one at the right of another). 

 

 

The library does not make any assumption on the scene and objects, and only require access to the scene objects' meshes and world transformations. It can return a result within a time of your choice (e.g., a few tens of milliseconds). More time will generally increase the quality of results, especially in large and complex scenes.
 
The library is released under the LGPL license. We also provide, as public domain code, bindings for the Ogre open-source rendering engine. Connecting it to other rendering engines, however, requires to modify just one public-domain file (which for Ogre consists of 500 lines of code).
 
The library is available at http://bitbucket.org/rranon/smart-viewpoint-computation-lib and, besides source code, there are two binary demos for Win and Mac demonstrating some of the library capabilities.

 

 



Sponsor:



Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS