Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

PHP – Lấy ma trận biến đổi affine với imageaffinematrixget()

imageaffinematrixget() là hàm nội bộ trong PHP dùng để lấy ma trận biến đổi affine (affine transformation matrix). Hàm này thường dùng trong đại số tuyến tính và đồ họa máy tính.

Cú pháp

array|false imageaffinematrixget(int $type, array|float $options)

Tham số

imageaffinematrixget() chỉ chấp nhận hai tham số: $type và $options.

  • $type – Chỉ định hằng số nguyên IMG_AFFINE:

    • IMG_AFFINE_TRANSLATE

    • IMG_AFFINE_SCALE

    • IMG_AFFINE_ROTATE

    • IMG_AFFINE_SHEAR_HORIZONTAL

    • IMG_AFFINE_SHEAR_VERTICAL

  • $options – Nếu type là IMG_AFFINE_TRANSLATE hoặc IMG_AFFINE_SCALE, options phải là mảng với khóa x và y, cả hai đều là float. Nếu type là IMG_AFFINE_ROTATE, IMG_AFFINE_SHEAR_HORIZONTAL hoặc IMG_AFFINE_SHEAR_VERTICAL, options phải là float chỉ định góc.

Giá trị trả về

Trả về ma trận biến đổi affine, một mảng với khóa từ 0 đến 5 và giá trị float. Trả về false khi thất bại.

Ví dụ 1: Dùng IMG_AFFINE_SCALE

<?php
$matrix_scale = imageaffinematrixget(IMG_AFFINE_SCALE, array('x' => 2, 'y' => 3));
print_r($matrix_scale);
?>

Kết quả

Array
(
    [0] => 2
    [1] => 0
    [2] => 0
    [3] => 3
    [4] => 0
    [5] => 0
)

Ví dụ 2

<?php
$angle = 280;
$matrix_vertical = imageaffinematrixget(IMG_AFFINE_SHEAR_VERTICAL, $angle);
print("<pre>" . print_r($matrix_vertical, true) . "</pre>");
?>

Kết quả

Array
(
    [0] => 1
    [1] => -5.6712818196177
    [2] => 0
    [3] => 1
    [4] => 0
    [5] => 0
)