//--------------------------------------------------------------------
        public void Reset(int min_x, int max_x)
        {
            int max_len = max_x - min_x + 3;

            if (max_len > m_spans.Size)
            {
                m_spans.Resize(max_len);
            }
            m_last_x     = 0x7FFFFFF0;
            m_span_index = 0;
        }
Exemple #2
0
        private void ReallocateLookupTable(double radius)
        {
            m_radius   = radius;
            m_diameter = Basics.UnsignedCeiling(radius) * 2;
            m_start    = -(int)(m_diameter / 2 - 1);
            int size = (int)m_diameter << (int)EImageSubpixelScale.Shift;

            if (size > m_weight_array.Size)
            {
                m_weight_array.Resize(size);
            }
        }
Exemple #3
0
 //------------------------------------------------------------------------
 public void Init(int max)
 {
     if (max > 2 && max > m_max)
     {
         m_am.Resize(max * 3);
         m_max     = max;
         m_xOffset = m_max;
         m_yOffset = m_max * 2;
     }
     m_num      = 0;
     m_last_idx = -1;
 }