mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-04-23 20:01:01 +08:00
[transform] add perspective property to transform
Summary:  cc @sahrens @vjeux Closes https://github.com/facebook/react-native/pull/1980 Github Author: chirag04 <jain_chirag04@yahoo.com>
This commit is contained in:
@@ -16,6 +16,7 @@ var ReactPropTypes = require('ReactPropTypes');
|
||||
var TransformPropTypes = {
|
||||
transform: ReactPropTypes.arrayOf(
|
||||
ReactPropTypes.oneOfType([
|
||||
ReactPropTypes.shape({perspective: ReactPropTypes.number}),
|
||||
ReactPropTypes.shape({rotate: ReactPropTypes.string}),
|
||||
ReactPropTypes.shape({rotateX: ReactPropTypes.string}),
|
||||
ReactPropTypes.shape({rotateY: ReactPropTypes.string}),
|
||||
|
||||
@@ -58,6 +58,9 @@ function _precomputeTransforms(style: Object): Object {
|
||||
case 'matrix':
|
||||
MatrixMath.multiplyInto(result, result, value);
|
||||
break;
|
||||
case 'perspective':
|
||||
_multiplyTransform(result, MatrixMath.reusePerspectiveCommand, [value]);
|
||||
break;
|
||||
case 'rotateX':
|
||||
_multiplyTransform(result, MatrixMath.reuseRotateXCommand, [_convertToRadians(value)]);
|
||||
break;
|
||||
|
||||
@@ -65,6 +65,10 @@ var MatrixMath = {
|
||||
matrixCommand[10] = z;
|
||||
},
|
||||
|
||||
reusePerspectiveCommand: function(matrixCommand, p) {
|
||||
matrixCommand[11] = -1 / p;
|
||||
},
|
||||
|
||||
reuseScaleXCommand(matrixCommand, factor) {
|
||||
matrixCommand[0] = factor;
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user