Browse Source

DebugTools: make it clearer that ForceRenderer takes a reference.

pull/362/head
Vladimír Vondruš 7 years ago
parent
commit
7604309014
  1. 5
      doc/snippets/MagnumDebugTools-gl.cpp
  2. 10
      src/Magnum/DebugTools/ForceRenderer.h

5
doc/snippets/MagnumDebugTools-gl.cpp

@ -73,8 +73,9 @@ DebugTools::ResourceManager::instance().set("my",
.setSize(5.0f)
.setColor(Color3::fromHsv({120.0_degf, 1.0f, 0.7f})));
// Create debug renderer for given object, use "my" options for it
Vector3 force;
Vector3 force; // taken as a reference, has to be kept in scope
// Create debug renderer for given force, use "my" options for it
new DebugTools::ForceRenderer3D(*object, {0.3f, 1.5f, -0.7f}, force, "my",
&debugDrawables);
/* [ForceRenderer] */

10
src/Magnum/DebugTools/ForceRenderer.h

@ -103,7 +103,11 @@ See @ref debug-tools-renderers for more information.
@section DebugTools-ForceRenderer-usage Basic usage
Example code:
Example code --- note that the @p force is saved as a reference to the original
vector (so when you update it, the renderer updates itself as well), and thus
it must be available for the whole lifetime of the renderer. The renderer is
automatically added to object's features so you don't need to keep a reference
to it.
@snippet MagnumDebugTools-gl.cpp ForceRenderer
@ -124,10 +128,6 @@ template<UnsignedInt dimensions> class MAGNUM_DEBUGTOOLS_EXPORT ForceRenderer: p
* @ref DebugTools-ForceRenderer-usage "class documentation" for
* more information.
* @param drawables Drawable group
*
* The renderer is automatically added to object's features, @p force
* is saved as reference to original vector and thus it must be
* available for the whole lifetime of the renderer.
*/
explicit ForceRenderer(SceneGraph::AbstractObject<dimensions, Float>& object, const VectorTypeFor<dimensions, Float>& forcePosition, const VectorTypeFor<dimensions, Float>& force, ResourceKey options = ResourceKey(), SceneGraph::DrawableGroup<dimensions, Float>* drawables = nullptr);

Loading…
Cancel
Save