ArcGIS Enterprise SDK
ITransform3D.RotateVector3D Method
ArcGIS Developer Help

ITransform3D.RotateVector3D Method

Rotates the object about axis defined by the specified vector through an angle measured in radians.

[Visual Basic .NET]
Public Sub RotateVector3D ( _
    ByVal axis As IVector3D, _
    ByVal rotationAngle As Double _
public void RotateVector3D (
    IVector3D axis,
    double rotationAngle


The angle of rotation must be in radians. To convert to radians from decimal degrees, multiply by PI/180.



        public static void TransformMultiPatchGeometry()


            const double DegreesOfRotation = 45;


            //Transform3D: Cylinder Rotated Around An Axis Via RotateVector3D()


            //Construct A Vector3D Corresponding To The Desired Axis Of Rotation


            IVector3D axisOfRotationVector3D = ConstructVector3D(0, 10, 0);


            //Obtain Angle Of Rotation In Radians


            double angleOfRotationInRadians = GetRadians(DegreesOfRotation);


            IGeometry geometry = GetMultiPatchGeometry();


            ITransform3D transform3D = geometry as ITransform3D;

            transform3D.RotateVector3D(axisOfRotationVector3D, angleOfRotationInRadians);


        private static IVector3D ConstructVector3D(double xComponent, double yComponent, double zComponent)


            IVector3D vector3D = new Vector3DClass();

            vector3D.SetComponents(xComponent, yComponent, zComponent);


            return vector3D;



        private static double GetRadians(double decimalDegrees)


            return decimalDegrees * (Math.PI / 180);


See Also

ITransform3D Interface