Example #1
0
        private void updateSeeds(List<Object> lstNeighbor, Object centreObj, Seeds seeds)
        {
            float coreDist = centreObj.coreDist;
            int num = lstNeighbor.Count;
            for(int i = 0; i < num; i++)
            {
                Object obj = lstNeighbor[i];
                if(obj.process == false)
                {
                    float dist = matrixDistance[centreObj.index, obj.index];
                    float tempCoreReach = dist > coreDist ? dist : coreDist;

                    if(obj.coreReachibility == -1)
                    {
                        obj.coreReachibility = tempCoreReach;
                        seeds.Insert(obj);
                    }
                    else
                        if (tempCoreReach < obj.coreReachibility)
                        {
                            seeds.Moveup(obj, tempCoreReach);
                        }
                }
            }
        }