T.M. SoftStudio

feci quod potui, faciant meliora potentes

Класс Transform

Абстрактный класс Transform представляет такие трансформации узла графа сцены как вращение, масштабирование, сдвиг и перемещение. Объект Transform служит элементом списка, возвращаемым методом Node.getTransforms().

Класс Transform имеет следующие подклассы:

  • Affine – аффинные преобразования.

  • Rotate – вращение.

  • Scale – масштабирование.

  • Shear – срезающее преобразование.

  • Translate – перемещение.

Класс Transform имеет следующие свойства, конструкторы и методы:

  • Свойство type2D - если true, тогда это 2D-трансформация.

  • Свойство identity - если true, тогда это единичная матрица трансформации.

  • Свойство onTransformChanged - обработчик изменения параметров трансформации.

  • Конструктор public Transform().

  • Метод public static Affine affine(double mxx, double myx, double mxy, double myy, double tx, double ty) – возвращает объект 2D аффинного преобразования.

  • Метод public static Affine affine(double mxx, double mxy, double mxz, double tx, double myx, double myy, double myz, double ty, double mzx, double mzy, double mzz, double tz) – возвращает объект 3Dаффинного преобразования.

  • Метод public static Translate translate(double x, double y) – возвращает объект перемещения.

  • Метод public static Rotate rotate(double angle, double pivotX, double pivotY) – возвращает объект вращения.

  • Метод public static Scale scale(double x, double y) – возвращает объект масштабирования.

  • Метод public static Scale scale(double x, double y, double pivotX, double pivotY) – возвращает объект масштабирования.

  • Метод public static Shear shear(double x, double y) – возвращает объект срезающего преобразования.

  • Метод public static Shear shear(double x, double y, double pivotX, double pivotY) – возвращает объект срезающего преобразования.

  • Методы public double getMxx(), public double getMxy(), public double getMxz(), public double getTx(), public double getMyx(), public double getMyy(), public double getMyz(), public double getTy(), public double getMzx(), public double getMzy(), public double getMzz(), public double getTz() – возвращают координаты матрицы трансформации.

  • Метод public double getElement(MatrixType type, int row, int column) - возвращает элемент матрицы.

  • Метод public double determinant() - возвращает определитель матрицы.

  • Метод public final boolean isType2D(), public final ReadOnlyBooleanProperty type2DProperty() - если true, тогда это 2D-трансформация.

  • Метод public final boolean isIdentity(), public final ReadOnlyBooleanProperty identityProperty() - если true, тогда это единичная матрица трансформации.

  • Метод public boolean similarTo(Transform transform, Bounds range, double maxDelta) - проверка на схожесть трансформаций.

  • Метод public double[] toArray(MatrixType type, double[] array), public double[] toArray(MatrixType type) - массив матрицы.

  • Метод public double[] row(MatrixType type, int row, double[] array), public double[] row(MatrixType type, int row), public double[] column(MatrixType type, int column, double[] array), public double[] column(MatrixType type, int column) - возвращает строку и столбец матрицы.

  • Метод public Transform createConcatenation(Transform transform), public Transform createInverse() - объединение и инверсия матрицы.

  • Метод public Point2D transform(double x, double y),
    public Point2D transform(Point2D point),
    public Point3D transform(double x, double y, double z),
    public Point3D transform(Point3D point),
    public Bounds transform(Bounds bounds),
    public void transform2DPoints(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts),
    public void transform3DPoints(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts),
    public Point2D deltaTransform(double x, double y),
    public Point2D deltaTransform(Point2D point),
    public Point3D deltaTransform(double x, double y, double z),
    public Point3D deltaTransform(Point3D point),
    public Point2D inverseTransform(double x, double y),
    public Point2D inverseTransform(Point2D point),
    public Point3D inverseTransform(double x, double y, double z),
    public Point3D inverseTransform(Point3D point),
    public Bounds inverseTransform(Bounds bounds),
    public void inverseTransform2DPoints(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts),
    public void inverseTransform3DPoints(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts),
    public Point2D inverseDeltaTransform(double x, double y),
    public Point2D inverseDeltaTransform(Point2D point),
    public Point3D inverseDeltaTransform(double x, double y, double z),
    public Point3D inverseDeltaTransform(Point3D point) - трансформация точек, границ и векторов.

  • Метод public final <T extends Event> void addEventHandler(EventType<T> eventType, EventHandler<? super T> eventHandler), public final <T extends Event> void removeEventHandler(EventType<T> eventType, EventHandler<? super T> eventHandler) - присоединяет и удаляет обработчик событий.

  • Метод public final <T extends Event> void addEventFilter(EventType<T> eventType, EventHandler<? super T> eventFilter), public final <T extends Event> void removeEventFilter(EventType<T> eventType, EventHandler<? super T> eventFilter) - определяет фильтр событий.

  • Метод public final void setOnTransformChanged(EventHandler<? super TransformChangedEvent> value), public final EventHandler<? super TransformChangedEvent> getOnTransformChanged(), public final ObjectProperty<EventHandler<? super TransformChangedEvent>> onTransformChangedProperty() - определяет обработчик изменений параметров трансформации.

Перечисление MatrixType имеет следующие значения: MT_2D_2x3, MT_2D_3x3, MT_3D_3x4, MT_3D_4x4