Panda3D
panda
src
vision
arToolKit.h
1
// Filename: arToolKit.h
2
// Created by: jyelon (01Nov2007)
3
//
4
////////////////////////////////////////////////////////////////////
5
//
6
// PANDA 3D SOFTWARE
7
// Copyright (c) Carnegie Mellon University. All rights reserved.
8
//
9
// All use of this software is subject to the terms of the revised BSD
10
// license. You should have received a copy of this license along
11
// with this source code in a file named "LICENSE."
12
//
13
////////////////////////////////////////////////////////////////////
14
15
#ifndef ARTOOLKIT_H
16
#define ARTOOLKIT_H
17
18
#include "pandabase.h"
19
20
#ifdef HAVE_ARTOOLKIT
21
22
#include "nodePath.h"
23
#include "texture.h"
24
25
////////////////////////////////////////////////////////////////////
26
// Class : ARToolKit
27
// Description : ARToolKit is a software library for building
28
// Augmented Reality (AR) applications. These are
29
// applications that involve the overlay of virtual
30
// imagery on the real world. It was developed by
31
// Dr. Hirokazu Kato. Its ongoing development is
32
// being supported by the Human Interface Technology
33
// Laboratory (HIT Lab) at the University of
34
// Washington, HIT Lab NZ at the University of
35
// Canterbury, New Zealand, and ARToolworks, Inc,
36
// Seattle. It is available under a GPL license.
37
// It is also possible to negotiate other licenses
38
// with the copyright holders.
39
//
40
// This class is a wrapper around the ARToolKit
41
// library.
42
////////////////////////////////////////////////////////////////////
43
class
EXPCL_VISION ARToolKit {
44
45
PUBLISHED:
46
static
ARToolKit *make(
NodePath
camera,
const
Filename
¶mfile,
double
markersize);
47
~ARToolKit();
48
49
INLINE
void
set_threshold(
double
n);
50
void
attach_pattern(
const
Filename
&pattern,
NodePath
path);
51
void
detach_patterns();
52
void
analyze(
Texture
*tex,
bool
do_flip_texture =
true
);
53
54
private
:
55
static
int
get_pattern(
const
Filename
&pattern);
56
ARToolKit();
57
void
cleanup();
58
59
typedef
pmap<Filename, int>
PatternTable;
60
static
PatternTable _pattern_table;
61
62
typedef
pmap<int, NodePath>
Controls;
63
Controls _controls;
64
65
NodePath
_camera;
66
void
*_camera_param;
67
double
_threshold;
68
double
_marker_size;
69
double
_prev_conv[3][4];
70
bool
_have_prev_conv;
71
};
72
73
#include "arToolKit.I"
74
75
#endif // HAVE_ARTOOLKIT
76
#endif // ARTOOLKIT_H
pmap
This is our own Panda specialization on the default STL map.
Definition:
pmap.h:52
Texture
Represents a texture object, which is typically a single 2-d image but may also represent a 1-d or 3-...
Definition:
texture.h:75
Filename
The name of a file, such as a texture file or an Egg file.
Definition:
filename.h:44
NodePath
NodePath is the fundamental system for disambiguating instances, and also provides a higher-level int...
Definition:
nodePath.h:165
Generated on Wed May 17 2017 23:47:35 for Panda3D by
1.8.13