Exemple #1
0
 public EContour(EContour c)
 {
     contour = c.getContour();
     includeContour = c.getIncludeContour();
     includeSquere = c.getIncludeSquere();
     rect = c.getRectangle();
 }
Exemple #2
0
        public EContour(Contour<Point> c)
        {
            contour = c;
            includeContour = new List<EContour>();
            rect = null;

            coeff = new double[2];
            coeff[0] = 3.8;
            coeff[1] = 4.2;
        }
Exemple #3
0
 public EContour()
 {
     contour = new Contour<Point>(new MemStorage());
     includeContour = new List<EContour>();
     rect = null;
     includeSquere = null;
     coeff = new double [2];
     coeff[0] = 3.8;
     coeff[1] = 4.2;
 }
Exemple #4
0
 public void addIncludeContour(EContour c)
 {
     includeContour.Add(c);
 }
Exemple #5
0
 /* Funkcja poszukuje wewnetrznej ramki markera wśród listy kontór, które
  * znajdują się wewnątrz konturu
  * Funkcja sprawdza stosunek pól konturu oraz każdego z kontur w nim
  * zawartych. Jeśli zawiera się on w przedziale [3.8,4.2]
  * (przedział wyznaczony eksperymentalnie - w idealniej sytuacji Area(i)/Area(include(i))=4.0;
  * uznajemy, że j-ty kontór jest wewnętrzną ramką markera.
 */
 public void testSquereContour()
 {
     double tempCoeff = 0;
     for (int j = 0; j < includeContour.Count; j++) {
         tempCoeff = contour.Area/includeContour[j].getContourArea();
         if (tempCoeff > coeff[0] && tempCoeff < coeff[1])
             includeSquere = includeContour[j];
     }
 }
Exemple #6
0
        //! Funkcja poszukuje  ramki związanej z prostokątem markera (zalezność zawierania kontór)
        /*! Funkcja sprawdza, czy istnieje kontur zawarty w ramce zewnętrznej(ozn. i) oraz
         * nie zawarty w ramce wewnętrznej. Jeśli taka istnieje, uznajemy że to szukany
         * prostokąt.
        */
        public void testRectangle()
        {
            if (!(includeSquere==null))
            {

                foreach (EContour c in includeContour)
                {
                    if (!includeSquere.includeOtherConture(c))
                        rect = c;

                }
            }
        }
Exemple #7
0
 public bool includeOtherConture(EContour c)
 {
     if (contour.InContour(c.elementAt(0)) < 0) return false;
     if (contour.InContour(c.elementAt(1)) < 0) return false;
     if (contour.InContour(c.elementAt(2)) < 0) return false;
     return true;
 }
Exemple #8
0
 public void includeOtherContourAndAdd(EContour c)
 {
     if (includeOtherConture(c))
             addIncludeContour(c);
 }
Exemple #9
0
 public EMarker(EContour ec)
     : base(ec)
 {
 }