For the 3D transformation you have to specify two positions:
1. The position within your component to rotate the bitmap around it.
This is determined by the first parameter of the method RotateAndScale().
For example, your component has the width=200 pixel and height=100 pixel and you wish to rotate a bitmap around the center of the component, than you will need to call the method RotateAndScale() with this calculated center position 200/2 and 100/2:
warpImage.RotateAndScale(<100,50>, ... );
2. The position within the bitmap itself to rotate the bitmap around. Also known as pivot point.
This is determined by the property SourceAnchor of the warp view.
For example, you have a bitmap with the width=21 pixel and height=125 pixel and you wish to rotate the bitmap around its center, then the SourceAnchor property should be initialized with 21/2 and 125/2:
warpImage.SourceAnchor = <10,62>;
Another example, you want the bitmap to rotate around its bottom/right corner, then set the property SourceAnchor to the value <21,125>.
Summarized: Because of two 'entities' (the component and the bitmap) you need two coordinates to complete the transformation: the source bitmap position and the the component position. That's all.
Please note, the above information is also valid for the method Warp3D(), for example:
warpImage.Warp3D( <100,50>, ... )
Additionally please note the property SourceArea. With it you can select a smaller section of the original bitmap to perform the desired rotate/scale/warp3D transformations. In such case the value of SourceAnchor is calculated relative to the origin of this source-area.