예제 #1
0
파일: Matrix3x3.cs 프로젝트: olesar/Altaxo
        /// <summary>
        /// Gets a transformation matrix by specifying rotation (translation is 0, shear is 0 and scale is 1).
        /// </summary>
        /// <param name="angleX">The rotation around x axis in degrees.</param>
        /// <param name="angleY">The rotation around y axis in degrees</param>
        /// <param name="angleZ">The rotation around z axis in degrees</param>
        /// <returns>The transformation matrix.</returns>
        public static Matrix3x3 FromRotation(double angleX, double angleY, double angleZ)
        {
            var result = new Matrix3x3();

            result.SetRotationShearScale(angleX, angleY, angleZ, 0, 0, 0, 1, 1, 1);
            return(result);
        }
예제 #2
0
파일: Matrix3x3.cs 프로젝트: olesar/Altaxo
        /// <summary>
        /// Gets a transformation matrix by specifying translation, rotation, shear and scale.
        /// </summary>
        /// <param name="angleX">The rotation around x axis in degrees.</param>
        /// <param name="angleY">The rotation around y axis in degrees</param>
        /// <param name="angleZ">The rotation around z axis in degrees</param>
        /// <param name="shearX">The shear value x.</param>
        /// <param name="shearY">The shear value y.</param>
        /// <param name="shearZ">The shear value z.</param>
        /// <param name="scaleX">The scale value x.</param>
        /// <param name="scaleY">The scale value y.</param>
        /// <param name="scaleZ">The scale value z.</param>
        /// <returns>The transformation matrix. A point transformed with this matrix is first translated, then rotated, then sheared, then scaled.</returns>
        public static Matrix3x3 FromTranslationRotationShearScale(double angleX, double angleY, double angleZ, double shearX, double shearY, double shearZ, double scaleX, double scaleY, double scaleZ)
        {
            var result = new Matrix3x3();

            result.SetRotationShearScale(angleX, angleY, angleZ, shearX, shearY, shearZ, scaleX, scaleY, scaleZ);
            return(result);
        }
예제 #3
0
파일: Matrix3x3.cs 프로젝트: Altaxo/Altaxo
		/// <summary>
		/// Gets a transformation matrix by specifying rotation (translation is 0, shear is 0 and scale is 1).
		/// </summary>
		/// <param name="angleX">The rotation around x axis in degrees.</param>
		/// <param name="angleY">The rotation around y axis in degrees</param>
		/// <param name="angleZ">The rotation around z axis in degrees</param>
		/// <returns>The transformation matrix.</returns>
		public static Matrix3x3 FromRotation(double angleX, double angleY, double angleZ)
		{
			var result = new Matrix3x3();
			result.SetRotationShearScale(angleX, angleY, angleZ, 0, 0, 0, 1, 1, 1);
			return result;
		}
예제 #4
0
파일: Matrix3x3.cs 프로젝트: Altaxo/Altaxo
		/// <summary>
		/// Gets a transformation matrix by specifying translation, rotation, shear and scale.
		/// </summary>
		/// <param name="angleX">The rotation around x axis in degrees.</param>
		/// <param name="angleY">The rotation around y axis in degrees</param>
		/// <param name="angleZ">The rotation around z axis in degrees</param>
		/// <param name="shearX">The shear value x.</param>
		/// <param name="shearY">The shear value y.</param>
		/// <param name="shearZ">The shear value z.</param>
		/// <param name="scaleX">The scale value x.</param>
		/// <param name="scaleY">The scale value y.</param>
		/// <param name="scaleZ">The scale value z.</param>
		/// <returns>The transformation matrix. A point transformed with this matrix is first translated, then rotated, then sheared, then scaled.</returns>
		public static Matrix3x3 FromTranslationRotationShearScale(double angleX, double angleY, double angleZ, double shearX, double shearY, double shearZ, double scaleX, double scaleY, double scaleZ)
		{
			var result = new Matrix3x3();
			result.SetRotationShearScale(angleX, angleY, angleZ, shearX, shearY, shearZ, scaleX, scaleY, scaleZ);
			return result;
		}