TransformationFunction[data]
幾何学的変換およびその他の変換を適用する変換関数を表す.
TransformationFunction
TransformationFunction[data]
幾何学的変換およびその他の変換を適用する変換関数を表す.
詳細
- TransformationFunction[…]オブジェクトは,TranslationTransformやRotationTransform等のコンストラクタによって生成される.
- TransformationFunction[…][x]は,変換関数をベクトル x に適用し,変換されたベクトルを返す.
- ベクトルのリストについてのTransformationFunction[…][{x1,x2,…}]は,変換を各ベクトル xiに適用し,変換されたベクトルのリストを生成する.
- TransformationFunctionは数値ベクトルと記号ベクトルの両方に使うことができ,A∈Matrices[{m,n}],b∈Matrices[{m,1}],c∈Matrices[{1,n}],d∈Matrices[{1,1}]のとき線形分数変換
を表す. - 低次元については,
変換行列
として表示される.TransformationMatrixを使って変換行列を抽出することができる. - tiが変換行列
を持つComposition[t1,t2]は,変換行列
を持つ新たなTransformationFunctionオブジェクトを与える. - t が変換行列
を持つInverseFunction[t]は,変換行列
を持つ新たなTransformationFunctionオブジェクトを与える.ただし,
は逆行列である. - GeometricTransformationは,アフィン変換に限定されている場合に,TransformationFunctionオブジェクトを幾何学オブジェクトあるいはグラフィックスオブジェクトに適用した結果を表すのに用いることができる.
- TransformationFunction[…][prop]は,変換特性 prop を与える.次は,変換行列
特性を含む変換関数である. -
"AffineQ" 変換が構造的にアフィン変換かどうか.c と d の両方が0のときにはTrueを与える. "AffineMatrix" 行列 A "AffineVector" ベクトル b "FractionalVector" ベクトル c "FractionalConstant" 定数 d "ArgumentLength" ベクトル x の長さ n "ResultLength" 結果のベクトルの長さ m "TransformationMatrix"
例題
すべて開く すべて閉じる例 (1)
スコープ (15)
TransformationFunctionの構築 (10)
t = TranslationTransform[{qx, qy, qz}]t[{x, y, z}]r = RotationTransform[θ, {0, 0, 1}]r[{x, y, z}]ScalingTransform[{sx, sy}]ShearingTransform[θ, {1, 0}, {0, 1}]ReflectionTransform[{0, 0, 1}]ボックス[xmin, xmax][ymin, ymax]を単位正方形にスケールし直す:
RescalingTransform[{{xmin, xmax}, {ymin, ymax}}]t = LinearFractionalTransform[{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}]t[{x, y}]tl = LinearFractionalTransform[{ Array[Subscript[a, #1, #2]&, {2, 2}] }]tl[{x, y}]ta = LinearFractionalTransform[{ Array[Subscript[a, #1, #2]&, {2, 2}], Array[Subscript[b, #]&, {2}] }]ta[{x, y}]tlft = LinearFractionalTransform[{Array[Subscript[a, #1, #2]&, {2, 2}], Array[Subscript[b, #]&, {2}], Array[Subscript[c, #]&, {2}]}]tlft[{x, y}]TransformationFunctionを関数として使う (4)
t = RotationTransform[π / 3., {0, 0, 1}]t[{1, 0, 0}]vl = RandomReal[1, {10, 3}];t[vl]t1 = RotationTransform[θ]t2 = RotationTransform[ϕ]Composition[t1, t2]//Simplifyt = RotationTransform[θ]it = InverseFunction[t]//SimplifyComposition[it, t]//Simplifyf = TransformationFunction[{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}]Derivative[{1, 2}][f]TransformationFunctionを公式として使う (1)
t = LinearFractionalTransform[{ {{1, 2}, {3, 4}}, {1, 2}, {3, 1} }]f = t[{x, y}]D[f, {x, 2}]Limit[f, x -> 1]Integrate[f, x]Plot3D[f, {x, -1, 1}, {y, -1, 1}, PlotStyle -> {Red, Green}, Exclusions -> {1 + 3x + y == 0}]アプリケーション (2)
TransformationFunctionはGeometricTransformationの引数として使うことができる:
t = AffineTransform[{DiagonalMatrix[{2, 2, 1}], {1, 1, 1}}]Graphics3D[GeometricTransformation[Cylinder[], t], Axes -> True]Integrate[(x ^ 3 + y ^ 3)Boole[x / 2 < y < x / 2 + 3 / 4 && y / 2 < x < y / 2 + 3 / 4], {x, 0, 3 / 2}, {y, 0, 3 / 2}]t = AffineTransform[{{1, 1 / 2}, {1 / 2, 1}}]fuv = x ^ 3 + y ^ 3 /. Thread[{x, y} -> t[{u, v}]]jac = Det[TransformationMatrix[t]]Integrate[fuv Abs[jac], {u, 0, 1}, {v, 0, 1}]特性と関係 (1)
t = LinearFractionalTransform[{{-3, 2, 1}, {0, 1, 1}, {4, -2, -4}}]tt[n_] := LinearFractionalTransform[MatrixPower[TransformationMatrix[t], n]]Nest[Together@t@#&, {x0, y0}, 5]tt[5][{x0, y0}]% == %%//SimplifyRSolveを使った ![]()
次反復を求める:
RSolve[Thread /@ {{x[n + 1], y[n + 1]} == t[{x[n], y[n]}], {x[0], y[0]} == {x0, y0}}, {x, y}, n]{x[5], y[5]} /. %[[1]]//Simplify関連するガイド
-
▪
- 幾何学変換
テキスト
Wolfram Research (2007), TransformationFunction, Wolfram言語関数, https://reference.wolfram.com/language/ref/TransformationFunction.html (2019年に更新).
CMS
Wolfram Language. 2007. "TransformationFunction." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2019. https://reference.wolfram.com/language/ref/TransformationFunction.html.
APA
Wolfram Language. (2007). TransformationFunction. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/TransformationFunction.html
BibTeX
@misc{reference.wolfram_2026_transformationfunction, author="Wolfram Research", title="{TransformationFunction}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/TransformationFunction.html}", note=[Accessed: 03-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_transformationfunction, organization={Wolfram Research}, title={TransformationFunction}, year={2019}, url={https://reference.wolfram.com/language/ref/TransformationFunction.html}, note=[Accessed: 03-November-2026]}