README.md

    Математический движок определения и просчета коллизий геометрических фигур на декартовой системе координат

    Описание классов

    DOMLineSegment

    Отрезок линии, геометрический самописный класс

        конструктор (DOMPoint p1, DOMPoint p2)
        свойства:
            DOMPoint p1;
            DOMPoint p2;
        методы:
            Dx() - расстояние между точками по X
            Dy() - расстояние между точками по Y
            Collision(obj) - определяет наличие столкновения с одним из геометрических объектов
            ConvertToDOMPointArray() - возвращает точки в виде массива
            Clone() - возвращает копию объекта
    

    DOMLine

    Линия, геометрический самописный класс

        конструктор (DOMPoint p1, DOMPoint p2)
        свойства:
            DOMPoint p1;
            DOMPoint p2;
        методы:
            Dx() - расстояние между точками по X
            Dy() - расстояние между точками по Y
            Collision(obj) - определяет наличие столкновения с одним из геометрических объектов
            ConvertToDOMPointArray() - возвращает точки в виде массива
            Clone() - возвращает копию объекта
        статические методы:
            DOMLine.GetCollisionInfo( objLine1, objLine2) - возвращает информацию о колизии двух линий а также отрезков по которым они строились.
                    return {
                        isInfinityCollision - флаг говорящий о на наличии бесконечного ряда точек пересечения
                        isCollision - в случае если обнаружен бесконечный ряд точек пересечения будет true если на линиях пересеклись отрезки, либо false если нет. 
                                      в случае если НЕТ бесконечного ряда точек пересечения то будет true если есть конкретное пересечение, либо false если пересечения нет.
                        Px, Py - координаты единственной точки пересечения, если присутствует бесконечный ряд то значения будут NaN
                        t1, t2 - коэфичент движения по проекциям осей, t1 - вдоль первой линии, t2 - вдоль второй линии, 
                                 отображающие "время" точки пересечения, в случае с бесконечным рядом будут NaN
                                 соответственно "время" от [0;1] - означает что Px, Py находится на отрезке прямой (t1 первой прямой, t2 второй прямой)
                        isParallel - флаг говорящий что линии расположены параллельно
                    };
    

    DOMPoint

    Точка, геометрический встроенный класс

        конструктор (x,y)
        методы:
            Collision(obj) - определяет наличие столкновения с одним из геометрических объектов
            GetAngle(point) - возвращает угол между двумя точками DOMPoint, стоит помнить что ось Y перевернута и угол в 45' будет смотреть в право вниз
            GetLength(point) - возращает расстояние между двумя точками
            GetRadialPoint(angle, length) - возвращает новую точку которая находится относительно текущей на указанном угле и дистанции
                angle - угол
                length - расстояние от текущей точки до новой
            Clone() - возвращает копию объекта
            GetVector(point) - возвращает вектор построенный между двумя точками
    

    DOMQuad

    Четырех угольник (не должен быть вывернутым иначе работать не будет нормально Collision), геометрический встроенный класс

        конструктор (DOMPoint p1, DOMPoint p2, DOMPoint p3, DOMPoint p4)
        свойства:
            DOMPoint p1;
            DOMPoint p2;
            DOMPoint p3;
            DOMPoint p4;
        методы:
            Collision(obj) - определяет наличие столкновения с одним из геометрических объектов
            ConvertToDOMPointArray() - возвращает точки в виде массива
            ConvertToDOMLineSegmentArray() - возвращает массив DOMLineSegment описывающий текущий четырехугольник
            Clone() - возвращает копию объекта
    

    DOMRect

    Прямоугольная горизонтальная область, геометрический встроенный класс

        конструктор (x,y, width, height)
        свойства:
            x
            y
            width
            height
        методы:
            Collision(obj) - определяет наличие столкновения с одним из геометрических объектов
            ConvertToDOMPointArray() - возвращает точки в виде массива
            ConvertToDOMLineSegmentArray() - возвращает массим DOMLineSegments сторон прямоугольной области
            ConvertToDOMQuad() - возвращает объект DOMQuad описывающий туже самую область
            Clone() - возвращает копию объекта
    

    DOMMatrix

    Матрица трансформации, встроенный класс

        конструктор ()
        на самом деле конструкторов у неё несколько, читайте документацию, конструктор без параметров возвращает изначальную матрицу которая не изменяет координаты
        свойства:
            смотри документацию
        методы:
            DOMPoint transformPoint( DOMPoint ) - встроенный метод, который преобразовывает входящую точку в трансформированную (смотри документацию)
            DOMMatrix invertSelf() - встроенный метод, возвращает обратную матрицу (тоесть матрицу которая выполняет обратное действие)
            GetAngle() - возвращает угол в радианах, стоит помнить что ось Y перевернута и угол в "45'" будет смотреть в право в низ и далее по часовой стрелке.
            Clone() - возвращает копию объекта
    
    

    DOMVector

    Вектор смещения, самописный класс

        конструктор ()
        свойства:
            dx - смещение по X (работает как get и set)
            dy - смещение по Y (работает как get и set)
            angle - угол смещения (работает как get и set)
            length - расстояние до dx,dy (работает как get и set)
        методы:
            SetOffset( dx, dy ) - задает dx и dy, автоматически считает расстояние и угол
            SetRadial( angle, length ) - задает angle, length, автоматически считает dx, dy
            Clone() - возвращает копию объекта
    
    Описание

    Математический движок определения и просчета и определения коллизий геометрических фигур на декатовой системе координат

    Конвейеры
    0 успешных
    0 с ошибкой