PHP | ImagickKernel separate() Function
Last Updated :
14 Jan, 2020
The ImagickKernel::separate() function is an inbuilt function in PHP which is used to separate a linked set of kernels and returns an array of ImagickKernels. This function is used to count the kernels in an object or see the kernels of an object.
Syntax:
array ImagickKernel::separate( void )
Parameters: This function doesn’t accepts any parameter.
Return Value: This function returns an array value containing the ImagickKernels.
Below programs illustrate the ImagickKernel::separate() function in PHP:
Program 1: This program counting all the kernels in an ImagickKernel.
<?php
$imagick = new Imagick(
$matrix1 = [
[-1, -1, -1],
[4, 4, 4],
[1, 1, 1],
];
$matrix2 = [
[-1, 0, 0],
[0, 0, 1],
[-1, 0, 1],
];
$matrix3 = [
[-1, 1, 0],
[0, 0, 1],
[-1, 0, 1],
];
$matrix4 = [
[0, 1, 0],
[0, 0, 1],
[-1, 0, 1],
];
$kernel1 = ImagickKernel::fromMatrix( $matrix1 );
$kernel2 = ImagickKernel::fromMatrix( $matrix2 );
$kernel3 = ImagickKernel::fromMatrix( $matrix3 );
$kernel4 = ImagickKernel::fromMatrix( $matrix4 );
$kernel1 ->addKernel( $kernel2 );
$kernel1 ->addKernel( $kernel3 );
$kernel1 ->addKernel( $kernel4 );
$kernelList = $kernel1 ->separate();
echo 'Total number of attached kernels are: ' ;
echo count ( $kernelList );
?>
|
Output:
Total number of attached kernels are: 4
Program 2 (Getting all ImagickKernel in a object):
<?php
$imagick = new Imagick(
$matrix1 = [
[-1, -1, -1],
[4, 4, 4],
[1, 1, 1],
];
$matrix2 = [
[-1, 0, 0],
[0, 0, 1],
[-1, 0, 1],
];
$kernel1 = ImagickKernel::fromMatrix( $matrix1 );
$kernel2 = ImagickKernel::fromMatrix( $matrix2 );
$kernel1 ->addKernel( $kernel2 );
$kernelList = $kernel1 ->separate();
echo 'All the kernels are: ' ;
print ( "<pre>" .print_r( $kernelList , true). "</pre>" );
?>
|
Output:
All the kernels are:
Array
(
[0] => ImagickKernel Object
(
[0] => Array
(
[0] => Array
(
[0] => -1
[1] => -1
[2] => -1
)
[1] => Array
(
[0] => 4
[1] => 4
[2] => 4
)
[2] => Array
(
[0] => 1
[1] => 1
[2] => 1
)
)
)
[1] => ImagickKernel Object
(
[0] => Array
(
[0] => Array
(
[0] => -1
[1] => 0
[2] => 0
)
[1] => Array
(
[0] => 0
[1] => 0
[2] => 1
)
[2] => Array
(
[0] => -1
[1] => 0
[2] => 1
)
)
)
)
Reference: https://www.php.net/manual/en/imagickkernel.separate.php
Share your thoughts in the comments
Please Login to comment...