Since, I have changed C# code in NatNet SDK as following
Code: Select all
private void UpdateDataGrid()
{
// update MarkerSet data
for (int i = 0; i < m_FrameOfData.nMarkerSets; i++)
{
NatNetML.MarkerSetData ms = m_FrameOfData.MarkerSets[i];
for (int j = 0; j < ms.nMarkers; j++)
{
string strUniqueName = ms.MarkerSetName +i.ToString()+ j.ToString();
int key = strUniqueName.GetHashCode();
if(htMarkers.Contains(key))
{
int rowIndex = (int)htMarkers[key];
if (rowIndex >= 0)
{
dataGridView1.Rows[3].Cells[1].Value = ms.Markers[0].x;
dataGridView1.Rows[4].Cells[1].Value = ms.Markers[1].x;
dataGridView1.Rows[5].Cells[1].Value = ms.Markers[2].x;
dataGridView1.Rows[7].Cells[1].Value = ms.Markers[3].x;
dataGridView1.Rows[8].Cells[1].Value = ms.Markers[4].x;
dataGridView1.Rows[9].Cells[1].Value = ms.Markers[5].x;
dataGridView1.Rows[3].Cells[2].Value = ms.Markers[0].y;
dataGridView1.Rows[4].Cells[2].Value = ms.Markers[1].y;
dataGridView1.Rows[5].Cells[2].Value = ms.Markers[2].y;
dataGridView1.Rows[7].Cells[2].Value = ms.Markers[3].y;
dataGridView1.Rows[8].Cells[2].Value = ms.Markers[4].y;
dataGridView1.Rows[9].Cells[2].Value = ms.Markers[5].y;
dataGridView1.Rows[3].Cells[3].Value = ms.Markers[0].z;
dataGridView1.Rows[4].Cells[2].Value = ms.Markers[1].z;
dataGridView1.Rows[5].Cells[2].Value = ms.Markers[2].z;
dataGridView1.Rows[7].Cells[2].Value = ms.Markers[3].z;
dataGridView1.Rows[8].Cells[2].Value = ms.Markers[4].z;
dataGridView1.Rows[9].Cells[2].Value = ms.Markers[5].z;
}
}
}
}
When I debug with this code, the interface has shown as below
MarkerSet:Trackable1
Marker0 X:0.09,Y:0.00,Z:0.44
Marker1 X:-0.03,Y:0.00,Z:0.45
Marker2 X:-0.02,Y:0.00,Z:0.37
MarkerSet:Trackable2
Marker0 X:0.00,Y:0.00,Z:0.00
Marker1 X:0.00,Y:0.00,Z:0.00
Marker2 X:0.00,Y:0.00,Z:0.00
In PacketClient shows
Model Name: Trackable2
Marker Count :3
Marker 0: [x=0.09,y=-0.00,z=0.44]
Marker 1: [x=-0.03,y=-0.00,z=0.45]
Marker 2: [x=-0.02,y=0.00,z=-0.37]
Model Name:
Marker Count:0
Unidentified Marker Count:6
Marker 0 : pos = [0.09,-0.00,0.44]
Marker 1 : pos = [-0.02,0.00,0.37]
Marker 2 : pos = [-0.09,0.06,-0.39]
Marker 3 : pos = [-0.03,-0.00,0.45]
Marker 4 : pos = [-0.03,0.06,0.00]
Marker 5 : pos = [0.26,0.06,-0.03]
Rigid Body Count:2 and so on
I have two problems. First, why Marker0,1 and 2 are zeros in some markerset and how to show all pos of marker in interface.
Thank for your rely and sorry for long post