Example #1
0
        private void GroupObjects()
        {
            List <int> objectsAlreadyInAGroup = new List <int>();

            for (int i = 0; i < m_TrackedObjects.Count; i++)
            {
                TrackedObjectConfig obj          = m_TrackedObjects[i];
                MeasurmentGroup     currentGroup = null;

                if (objectsAlreadyInAGroup.IndexOf(i) == -1)
                {
                    currentGroup = new MeasurmentGroup(m_FWHM, obj, i);
                    objectsAlreadyInAGroup.Add(i);
                    m_MeasurementGroups.Add(currentGroup);
                }
                else
                {
                    continue;
                }

                if (currentGroup != null)
                {
                    for (int j = i + 1; j < m_TrackedObjects.Count; j++)
                    {
                        if (currentGroup.IsCloseEnoughToBelongToTheGroup(m_TrackedObjects[j]))
                        {
                            currentGroup.AddObjectInGroup(m_TrackedObjects[j], j);
                            objectsAlreadyInAGroup.Add(j);
                        }
                    }
                }
            }
        }
Example #2
0
        private void GroupObjects()
        {
            List<int> objectsAlreadyInAGroup = new List<int>();

            for (int i = 0; i < m_TrackedObjects.Count; i++)
            {
                TrackedObjectConfig obj = m_TrackedObjects[i];
                MeasurmentGroup currentGroup = null;

                if (objectsAlreadyInAGroup.IndexOf(i) == -1)
                {
                    currentGroup = new MeasurmentGroup(m_FWHM, obj, i);
                    objectsAlreadyInAGroup.Add(i);
                    m_MeasurementGroups.Add(currentGroup);
                }
                else
                    continue;

                if (currentGroup != null)
                {
                    for (int j = i + 1; j < m_TrackedObjects.Count; j++)
                    {
                        if (currentGroup.IsCloseEnoughToBelongToTheGroup(m_TrackedObjects[j]))
                        {
                            currentGroup.AddObjectInGroup(m_TrackedObjects[j], j);
                            objectsAlreadyInAGroup.Add(j);
                        }
                    }
                }
            }
        }