A *Tag_Struct* represents the location and orientation of one ceiling fiducial tag.
More...
#include <Tag.hpp>
List of all members.
Public Member Functions |
void | arc_append (Arc *arc) |
| Appends *arc* to *tag*.
|
void | bounding_box_update (BoundingBox *bounding_box) |
| Updates *bounding_box* to include the 4 corners of tag.
|
void | initialize (double angle, double x, double y, double diagonal, unsigned int visit) |
| Initialize *tag* contents.
|
void | svg_write (SVG *svg) |
| Writes *tag* out to *svg*.
|
| Tag (unsigned int id, Map map) |
| Create and return a new *Tag*.
|
void | update_via_arc (Arc *arc, CV_Image image, unsigned int sequence_number) |
| Updates the position and orientation of *tag* using *arc*.
|
void | write (File out_file) |
| Writes *tag* out ot *out_file* in XML format.
|
Static Public Member Functions |
static int | equal (Tag *tag1, Tag *tag2) |
| Returns the sort order of *tag1* to *tag2*.
|
static bool | less (Tag *tag1, Tag *tag2) |
static Tag * | read (File in_file, Map map) |
| Read in an XML <Tag ...> from *in_file* using *map*.
|
Public Attributes |
std::vector< Arc * > | arcs_ |
| List *Arc*'s connected to this *Tag*.
|
double | diagonal |
| Fiducial tag diagnal distance in camera pixels.
|
unsigned int | hop_count |
| Distance from origin in hops:
|
unsigned int | id |
| Tag identifier.
|
bool | initialized |
| True if rest of *Tag* is initialized.
|
Map | map |
| Parent *Map* object.
|
double | twist |
| The twist from the floor X axis to the tag bottom edge.
|
bool | updated |
| Set if tag was updated.
|
bool | visible |
| True if tag is currently visible in camera field of view.
|
unsigned int | visit |
| Visit counter.
|
double | world_diagonal |
| Distance along one side of the tag in world units.
|
double | x |
| Absolute X floor coordinate.
|
double | y |
| Absolute Y floor coordinate.
|
double | z |
| Absolute Z floor coordinate.
|
Detailed Description
A *Tag_Struct* represents the location and orientation of one ceiling fiducial tag.
Definition at line 57 of file Tag.hpp.
Constructor & Destructor Documentation
Create and return a new *Tag*.
- Parameters:
-
id | is the tag identifier. |
map | is the map associated with the tag. |
- Returns:
- new *Tag*.
Tag__create*() will create and return a *Tag* object with an identifier of *id*. This returned *Tag* is not *initialized* until *Tag__initialize*() is called.
Definition at line 63 of file Tag.cpp.
Member Function Documentation
Appends *arc* to *tag*.
- Parameters:
-
tag | to append to. |
arc | to append. |
Tag__arc_append*() will append *arc* to *tag*.
Definition at line 19 of file Tag.cpp.
Updates *bounding_box* to include the 4 corners of tag.
- Parameters:
-
tag | is the tag to use to update *bounding_box*. |
bounding_box | is the *Bounding_Box* to update. |
Tab__bounding_box_update*() will ensure that the 4 corners of tag* will be enclosed by *bounding_box* when it comes time to graph *tag*.
Definition at line 32 of file Tag.cpp.
Returns the sort order of *tag1* to *tag2*.
- Parameters:
-
tag1 | is the first *Tag* to compare. |
tag2 | is the second *Tag* to compare. |
- Returns:
- -1, 0, or 1 depending upon sort order.
Tag__compare*() will return -1 if *tag1* sorts before *tag2*, 0 if they are equal, and 1 if *tag1* sorts after *tag2*.
Definition at line 46 of file Tag.cpp.
void Tag::initialize |
( |
double |
twist, |
|
|
double |
x, |
|
|
double |
y, |
|
|
double |
diagonal, |
|
|
unsigned int |
visit |
|
) |
| |
Initialize *tag* contents.
- Parameters:
-
tag | to intialize. |
twist | is the fidicial twist relative to the floor X axis. |
x | is the floor X coordinate of the fiducial center. |
y | is the floor Y corrdinate of the fiducial center. |
diagonal | is diagonal distance across the *tag*. |
visit | is the visit number for the tree walker. |
Tag__initialize*() will initialize *tag* to contain *twist*, *x*, and *y*. *twist* is the fiducial twist relative to the floor X axis measured in radians. *x*, *y*, are measured in any consistent set of units (millimeters, centimeters, meters, inches, light years, etc.) *visit* is used for the tree walker. diagonal* is in pixels.
Definition at line 94 of file Tag.cpp.
Read in an XML <Tag ...> from *in_file* using *map*.
- Parameters:
-
in_file | to read from. |
map | to use for *Tag* associations. |
- Returns:
- *Tag* that was read in.
Tag__read*() will read in an XML <Tag ...> from *in_file* using *map* for *Tag* assoiciations. The resulting *Tag* is returned.
Definition at line 112 of file Tag.cpp.
Writes *tag* out to *svg*.
- Parameters:
-
tag | to write out. |
svg | is the *SVG* object to use to write *tag* out to. |
Tag__svg_write*() will write *tag* out to *svg* in scalable vector graphics format.
Definition at line 148 of file Tag.cpp.
Updates the position and orientation of *tag* using *arc*.
- Parameters:
-
tag | to update. |
arc | to use to find the arc to update from. |
image | is the current image being processed. |
sequence_number | is the image sequence number. |
Tag__update_via_arc*() will use the contents of *arc* to update the position and oritation of *tag*. The position is computed using the "other" end of *arc*.
Definition at line 194 of file Tag.cpp.
Writes *tag* out ot *out_file* in XML format.
- Parameters:
-
tag | to write out. |
out_file | to write to. |
Tag__write*() will write *tag* out to *out_file* in XML format.
Definition at line 270 of file Tag.cpp.
Member Data Documentation
List *Arc*'s connected to this *Tag*.
Definition at line 60 of file Tag.hpp.
Fiducial tag diagnal distance in camera pixels.
Definition at line 63 of file Tag.hpp.
Distance from origin in hops:
Definition at line 72 of file Tag.hpp.
True if rest of *Tag* is initialized.
Definition at line 69 of file Tag.hpp.
Parent *Map* object.
Definition at line 78 of file Tag.hpp.
The twist from the floor X axis to the tag bottom edge.
Definition at line 81 of file Tag.hpp.
Set if tag was updated.
Definition at line 99 of file Tag.hpp.
True if tag is currently visible in camera field of view.
Definition at line 84 of file Tag.hpp.
Visit counter.
Definition at line 87 of file Tag.hpp.
Distance along one side of the tag in world units.
Definition at line 66 of file Tag.hpp.
Absolute X floor coordinate.
Definition at line 90 of file Tag.hpp.
Absolute Y floor coordinate.
Definition at line 93 of file Tag.hpp.
Absolute Z floor coordinate.
Definition at line 96 of file Tag.hpp.
The documentation for this class was generated from the following files: