Class PolygonViewHelper

  • All Implemented Interfaces:

    
    public class PolygonViewHelper
    
                        

    Helper to make it easier to draw polygon on view

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      public class PolygonViewHelper.Edge

      Represents edge of polygon with near and far points as well as intersecting lines from other edges

      pointA handle pointB O========[0]=========O | ^ edgeLine ^ | | | |lineA | lineB | | | | O====================O pointFarA pointFarB

      public class PolygonViewHelper.Line

      Representation of line

      Calculates line by two points and finds intersection points with other lines General line formula is a * x + b * y + c = 0
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      static boolean checkPolygonSize(List<Point> polygon)
      void setImageSize(int width, int height) Set scaled image size that will be drawn on screen
      void setLayout(int left, int top, int right, int bottom) Sets layout of surface inside parent to compensate differences between viewport and preview sizes and draw polygon correctly
      void polygonToLinePoints(List<PointF> polygon, Array<float> points) Calculates lines points from polygon multiplying 0..1 values by view dimensions and applying rotation matrix.
      void polygonToPoints(List<PointF> polygon, Array<float> points) Calculates points from polygon multiplying 0..1 values by view dimensions and applying rotation matrix.
      void getDrawingPolygon(List<PointF> polygon, List<PointF> drawingPolygon) Processes original polygon with coordinates 0..
      void getPolygonFromDrawingPolygon(List<PointF> drawingPolygon, List<PointF> polygon) Processes drawing polygon coordinates to polygon with coordinates 0..
      void setRotation(int degrees) Set rotation in degrees for polygon
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • PolygonViewHelper

        PolygonViewHelper()
    • Method Detail

      • setImageSize

         void setImageSize(int width, int height)

        Set scaled image size that will be drawn on screen

      • setLayout

         void setLayout(int left, int top, int right, int bottom)

        Sets layout of surface inside parent to compensate differences between viewport and preview sizes and draw polygon correctly

      • polygonToLinePoints

         void polygonToLinePoints(List<PointF> polygon, Array<float> points)

        Calculates lines points from polygon multiplying 0..1 values by view dimensions and applying rotation matrix. Usually used on preview as it has camera rotation

      • polygonToPoints

         void polygonToPoints(List<PointF> polygon, Array<float> points)

        Calculates points from polygon multiplying 0..1 values by view dimensions and applying rotation matrix. Usually used on preview as it has camera rotation

      • getDrawingPolygon

         void getDrawingPolygon(List<PointF> polygon, List<PointF> drawingPolygon)

        Processes original polygon with coordinates 0..1 to drawing polygon by multiplying them by view dimensions

      • setRotation

         void setRotation(int degrees)

        Set rotation in degrees for polygon

        Parameters:
        degrees - usually camera rotation angle is used here