How to find a specific marker in the data array?
Posted: Fri Sep 19, 2008 3:55 pm
HI
Last time I was told that the markers can be labeled by the Arena software. In other words, in the datastream coming out of the Arena software, or in the data structure, the orders of the markers in the array are fixed. Now I have a problem that is very important to my current project: I want to know the exact position of a marker within the array. For example, when I am tracking a rigidbody formed by marker on my forearm, how can I know which marker within the array is on my elbow or on my wrist? Thanks for your attention.
By the way, when I am using your NatNet Sample3D to track two rigidbodies: Triangle, Rigid_Body, both include 3 markers, I observed that the 6 markers are named as below:
Triangle:root1
Triangle:root2
Triangle:root3
Rigid_Body:root2 //looks strange, why these 3 markers in
//the array are named like this?
Rigid_Body:root3
Rigid_Body:root1
in the array szMarkersname[] in the data structure sDataDescription. Is that the order that the markers will be described later in the data stracture sFrameOfMocapData please?
Also, when I am tracking these two rigidbodies in Arena, the selected marker will have an "ID". This "ID" sometimes is "rootX" (X represents a number, such as 3), sometimes is (-X). What is the matter please? When the marker is marked by "-X", the numbers that markers of the same rigidbody have may not be continuous, such as -1, -2, and -6. Also I notice that the same marker can have different such IDs in a taken clip, such as -5,-1,-2... And, in the natnettype.h file of the Sample Natnet, there is a strucure:
// Marker Set Definition
typedef struct
{
char szName[MAX_NAMELENGTH]; // MarkerSet name
int nMarkers; // # of markers in MarkerSet
char** szMarkerNames; // Array of marker names
} sMarkerSetDescription;
It seems that the szMarkerNames are just the name of the rigidbodies:rootX. Is that true please?
Last time I was told that the markers can be labeled by the Arena software. In other words, in the datastream coming out of the Arena software, or in the data structure, the orders of the markers in the array are fixed. Now I have a problem that is very important to my current project: I want to know the exact position of a marker within the array. For example, when I am tracking a rigidbody formed by marker on my forearm, how can I know which marker within the array is on my elbow or on my wrist? Thanks for your attention.
By the way, when I am using your NatNet Sample3D to track two rigidbodies: Triangle, Rigid_Body, both include 3 markers, I observed that the 6 markers are named as below:
Triangle:root1
Triangle:root2
Triangle:root3
Rigid_Body:root2 //looks strange, why these 3 markers in
//the array are named like this?
Rigid_Body:root3
Rigid_Body:root1
in the array szMarkersname[] in the data structure sDataDescription. Is that the order that the markers will be described later in the data stracture sFrameOfMocapData please?
Also, when I am tracking these two rigidbodies in Arena, the selected marker will have an "ID". This "ID" sometimes is "rootX" (X represents a number, such as 3), sometimes is (-X). What is the matter please? When the marker is marked by "-X", the numbers that markers of the same rigidbody have may not be continuous, such as -1, -2, and -6. Also I notice that the same marker can have different such IDs in a taken clip, such as -5,-1,-2... And, in the natnettype.h file of the Sample Natnet, there is a strucure:
// Marker Set Definition
typedef struct
{
char szName[MAX_NAMELENGTH]; // MarkerSet name
int nMarkers; // # of markers in MarkerSet
char** szMarkerNames; // Array of marker names
} sMarkerSetDescription;
It seems that the szMarkerNames are just the name of the rigidbodies:rootX. Is that true please?