Skip to content

Commit 2017be4

Browse files
authored
Merge pull request #1881 from alalek:move_viz_contrib
2 parents 2e195a1 + 97a92e2 commit 2017be4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+16640
-0
lines changed

modules/viz/CMakeLists.txt

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
if(NOT HAVE_VTK)
2+
ocv_module_disable(viz)
3+
endif()
4+
5+
set(the_description "Viz")
6+
include(${VTK_USE_FILE})
7+
8+
if(NOT BUILD_SHARED_LIBS)
9+
# We observed conflict between builtin 3rdparty libraries and
10+
# system-wide similar libraries (but with different versions) from VTK dependencies
11+
set(_conflicts "")
12+
foreach(dep ${VTK_LIBRARIES})
13+
if(("${dep}" MATCHES "libz\\." AND BUILD_ZLIB)
14+
OR ("${dep}" MATCHES "libjpeg\\." AND BUILD_JPEG)
15+
OR ("${dep}" MATCHES "libpng\\." AND BUILD_PNG)
16+
OR ("${dep}" MATCHES "libtiff\\." AND BUILD_TIFF)
17+
)
18+
list(APPEND _conflicts "${dep}")
19+
endif()
20+
endforeach()
21+
if(_conflicts)
22+
message(STATUS "Disabling VIZ module due to conflicts with VTK dependencies: ${_conflicts}")
23+
ocv_module_disable(viz)
24+
endif()
25+
endif()
26+
27+
ocv_warnings_disable(CMAKE_CXX_FLAGS -Winconsistent-missing-override -Wsuggest-override)
28+
29+
ocv_add_module(viz opencv_core WRAP python)
30+
ocv_glob_module_sources()
31+
ocv_module_include_directories()
32+
ocv_create_module()
33+
34+
ocv_add_accuracy_tests()
35+
ocv_add_perf_tests()
36+
ocv_add_samples(opencv_imgproc opencv_calib3d opencv_features2d opencv_flann)
37+
38+
ocv_target_link_libraries(${the_module} LINK_PRIVATE ${VTK_LIBRARIES})
39+
40+
if(APPLE AND BUILD_opencv_viz)
41+
ocv_target_link_libraries(${the_module} LINK_PRIVATE "-framework Cocoa")
42+
endif()
43+
44+
if(TARGET opencv_test_viz)
45+
set_target_properties(opencv_test_viz PROPERTIES MACOSX_BUNDLE TRUE)
46+
endif()

modules/viz/doc/images/cpw1.png

4.22 KB
Loading

modules/viz/doc/images/cpw2.png

3.46 KB
Loading

modules/viz/doc/images/cpw3.png

17.3 KB
Loading
6.35 KB
Loading

modules/viz/include/opencv2/viz.hpp

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
/*M///////////////////////////////////////////////////////////////////////////////////////
2+
//
3+
// IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
4+
//
5+
// By downloading, copying, installing or using the software you agree to this license.
6+
// If you do not agree to this license, do not download, install,
7+
// copy or use the software.
8+
//
9+
//
10+
// License Agreement
11+
// For Open Source Computer Vision Library
12+
//
13+
// Copyright (C) 2013, OpenCV Foundation, all rights reserved.
14+
// Third party copyrights are property of their respective owners.
15+
//
16+
// Redistribution and use in source and binary forms, with or without modification,
17+
// are permitted provided that the following conditions are met:
18+
//
19+
// * Redistribution's of source code must retain the above copyright notice,
20+
// this list of conditions and the following disclaimer.
21+
//
22+
// * Redistribution's in binary form must reproduce the above copyright notice,
23+
// this list of conditions and the following disclaimer in the documentation
24+
// and/or other materials provided with the distribution.
25+
//
26+
// * The name of the copyright holders may not be used to endorse or promote products
27+
// derived from this software without specific prior written permission.
28+
//
29+
// This software is provided by the copyright holders and contributors "as is" and
30+
// any express or implied warranties, including, but not limited to, the implied
31+
// warranties of merchantability and fitness for a particular purpose are disclaimed.
32+
// In no event shall the Intel Corporation or contributors be liable for any direct,
33+
// indirect, incidental, special, exemplary, or consequential damages
34+
// (including, but not limited to, procurement of substitute goods or services;
35+
// loss of use, data, or profits; or business interruption) however caused
36+
// and on any theory of liability, whether in contract, strict liability,
37+
// or tort (including negligence or otherwise) arising in any way out of
38+
// the use of this software, even if advised of the possibility of such damage.
39+
//
40+
// Authors:
41+
// * Ozan Tonkal, [email protected]
42+
// * Anatoly Baksheev, Itseez Inc. myname.mysurname <> mycompany.com
43+
//
44+
//M*/
45+
46+
#ifndef OPENCV_VIZ_HPP
47+
#define OPENCV_VIZ_HPP
48+
49+
#include <opencv2/viz/types.hpp>
50+
#include <opencv2/viz/widgets.hpp>
51+
#include <opencv2/viz/viz3d.hpp>
52+
#include <opencv2/viz/vizcore.hpp>
53+
54+
/**
55+
@defgroup viz 3D Visualizer
56+
57+
This section describes 3D visualization window as well as classes and methods that are used to
58+
interact with it.
59+
60+
3D visualization window (see Viz3d) is used to display widgets (see Widget), and it provides several
61+
methods to interact with scene and widgets.
62+
63+
@{
64+
@defgroup viz_widget Widget
65+
66+
In this section, the widget framework is explained. Widgets represent 2D or 3D objects, varying from
67+
simple ones such as lines to complex ones such as point clouds and meshes.
68+
69+
Widgets are **implicitly shared**. Therefore, one can add a widget to the scene, and modify the
70+
widget without re-adding the widget.
71+
72+
@code
73+
// Create a cloud widget
74+
viz::WCloud cw(cloud, viz::Color::red());
75+
// Display it in a window
76+
myWindow.showWidget("CloudWidget1", cw);
77+
// Modify it, and it will be modified in the window.
78+
cw.setColor(viz::Color::yellow());
79+
@endcode
80+
81+
@}
82+
*/
83+
84+
#endif /* OPENCV_VIZ_HPP */

0 commit comments

Comments
 (0)