FindosgManipulator¶
Finds the osgManipulator NodeKit from the OpenSceneGraph toolkit.
备注
In most cases, it's recommended to use the FindOpenSceneGraph
module
instead and list osgManipulator as a component. This will automatically
handle dependencies such as the OpenThreads and core osg libraries:
find_package(OpenSceneGraph COMPONENTS osgManipulator)
This module is used internally by FindOpenSceneGraph
to find the
osgManipulator NodeKit. It is not intended to be included directly during
typical use of the find_package()
command. However, it is available as
a standalone module for advanced use cases where finer control over detection is
needed. For example, to find the osgManipulator explicitly or bypass
automatic component detection:
find_package(osgManipulator)
OpenSceneGraph and osgManipulator headers are intended to be included in C++ project source code as:
example.cxx
¶#include <osg/PositionAttitudeTransform>
#include <osgManipulator/TrackballDragger>
// ...
When working with the OpenSceneGraph toolkit, other libraries such as OpenGL may also be required.
Result Variables¶
This module defines the following variables:
osgManipulator_FOUND
Boolean indicating whether the osgManipulator NodeKit of the OpenSceneGraph toolkit is found. For backward compatibility, the
OSGMANIPULATOR_FOUND
variable is also set to the same value.OSGMANIPULATOR_LIBRARIES
The libraries needed to link against to use osgManipulator.
OSGMANIPULATOR_LIBRARY
A result variable that is set to the same value as the
OSGMANIPULATOR_LIBRARIES
variable.
Cache Variables¶
The following cache variables may also be set:
OSGMANIPULATOR_INCLUDE_DIR
The include directory containing headers needed to use osgManipulator.
OSGMANIPULATOR_LIBRARY_DEBUG
The path to the osgManipulator debug library.
Hints¶
This module accepts the following variables:
OSGDIR
Environment variable that can be set to help locate the OpenSceneGraph toolkit, including its osgManipulator NodeKit, when installed in a custom location. It should point to the OpenSceneGraph installation prefix used when it was configured, built, and installed:
./configure --prefix=$OSGDIR
.
Examples¶
Finding osgManipulator explicitly with this module and creating an interface imported target that encapsulates its usage requirements for linking it to a project target:
find_package(osgManipulator)
if(osgManipulator_FOUND AND NOT TARGET osgManipulator::osgManipulator)
add_library(osgManipulator::osgManipulator INTERFACE IMPORTED)
set_target_properties(
osgManipulator::osgManipulator
PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${OSGMANIPULATOR_INCLUDE_DIR}"
INTERFACE_LINK_LIBRARIES "${OSGMANIPULATOR_LIBRARIES}"
)
endif()
target_link_libraries(example PRIVATE osgManipulator::osgManipulator)
See Also¶
The
FindOpenSceneGraph
module to find OpenSceneGraph toolkit.