예제 #1
0
        public void mergeLinks()
        {
            int numRects = rects.Count;

            if (numRects == 1)
            {
                return;
            }

            LinkedRectangle curRect = new LinkedRectangle((LinkedRectangle)rects[0]);
            ArrayList       nv      = new ArrayList();

            for (int ri = 1; ri < numRects; ri++)
            {
                LinkedRectangle r = (LinkedRectangle)rects[ri];

                if (r.getLineArea() == curRect.getLineArea())
                {
                    curRect.SetWidth(r.getX() + r.getWidth() - curRect.getX());
                }
                else
                {
                    nv.Add(curRect);
                    curRect = new LinkedRectangle(r);
                }

                if (ri == numRects - 1)
                {
                    nv.Add(curRect);
                }
            }

            rects = nv;
        }
예제 #2
0
파일: LinkSet.cs 프로젝트: nholik/Fo.Net
        public void mergeLinks()
        {
            int numRects = rects.Count;
            if (numRects == 1)
            {
                return;
            }

            LinkedRectangle curRect = new LinkedRectangle((LinkedRectangle)rects[0]);
            ArrayList nv = new ArrayList();

            for (int ri = 1; ri < numRects; ri++)
            {
                LinkedRectangle r = (LinkedRectangle)rects[ri];

                if (r.getLineArea() == curRect.getLineArea())
                {
                    curRect.SetWidth(r.getX() + r.getWidth() - curRect.getX());
                }
                else
                {
                    nv.Add(curRect);
                    curRect = new LinkedRectangle(r);
                }

                if (ri == numRects - 1)
                {
                    nv.Add(curRect);
                }
            }

            rects = nv;
        }
예제 #3
0
파일: LinkSet.cs 프로젝트: nholik/Fo.Net
 public void addRect(Rectangle r, LineArea lineArea, InlineArea inlineArea)
 {
     LinkedRectangle linkedRectangle = new LinkedRectangle(r, lineArea, inlineArea);
     linkedRectangle.setY(this.yoffset);
     if (this.yoffset > maxY)
     {
         maxY = this.yoffset;
     }
     rects.Add(linkedRectangle);
 }
예제 #4
0
        public void addRect(Rectangle r, LineArea lineArea, InlineArea inlineArea)
        {
            LinkedRectangle linkedRectangle = new LinkedRectangle(r, lineArea, inlineArea);

            linkedRectangle.setY(this.yoffset);
            if (this.yoffset > maxY)
            {
                maxY = this.yoffset;
            }
            rects.Add(linkedRectangle);
        }
예제 #5
0
 public LinkedRectangle(LinkedRectangle lr)
 {
     this.link       = lr.getRectangle();
     this.lineArea   = lr.getLineArea();
     this.inlineArea = lr.getInlineArea();
 }
예제 #6
0
 public LinkedRectangle(LinkedRectangle lr)
 {
     this.link = lr.getRectangle();
     this.lineArea = lr.getLineArea();
     this.inlineArea = lr.getInlineArea();
 }