I'm just converting an objc video player sample to MonoTouch and came to this part:
self.view.layer.sublayerTransform = CATransform3DMakePerspective(1000);
In Monotouch, I can do a 'scale' or 'rotate' transform:
this.View.Layer.SublayerTransform = CATransform3D.MakeScale(1.0f, -1.0f, 1.0f);
But no perspective option is visible even after searching in the object browser equivalent. Is this part of the 'curation' of API's I read about somewhere, where less used items aren't brought through to MonoTouch ?
How would I use this function? Is it common for members to be missing in this way? I thought an automated tool generated the bindings so I was figuring all the elements would be available unless redundant or deprecated.
I can't find a function named CATransform3DMakePerspective
in Apple documentation web site (nor did grepping the Apple SDK headers files returned it).
note: please edit your post if you have an URL pointing to it's documentation
A bit of googling returned a macro:
#define CATransform3DMakePerspective(x, y) (CATransform3DPerspective(CATransform3DIdentity, x, y))
that depends on another macro CATransform3DPerspective
and a C function CATransform3DMake
. Each of them looks trivial to port to C#.
This might not be identical to the ObjC sample you're porting. OTOH the code of your video player should include similar functions that you can translate into C#.