問題タブ [transformgroup]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
566 参照

wpf - WPFListViewの画像を使用した奇妙な変換動作

複数の列を持つDataGridがあります。内側の列の1つに、画像を表示しています。この画像は回転する必要があるため、必要に応じてを使用しTransformGroupて画像を拡大縮小および回転しました。

次のXAMLを使用して回転しない場合、画像は正常に表示されます。画像列の幅を変更すると、画像は期待どおりに拡大縮小されます。それはその列の範囲内にとどまります:

ここで、画像列内で必要に応じて画像を回転させようとすると、状況がおかしくなります。列はまだ回転されていない画像の幅に関連付けられており、行の高さは回転されていない画像の高さに関連付けられています。画像は左隣の空間にも侵入します。これは、私が試したXAMLの1つのバリアントです。

上記のTranslateTransformは、少なくとも画像の右端をその列の右端に揃えるための完全なハックです。

ビューボックスを追加しようとしましたが、内部の画像を回転させて、希望どおりに拡大縮小できると思いましたが、うまくいきませんでした。

誰かが私がここで根本的に欠けているものを教えてくれ、私が解決策に取り組む方法についてのヒントを提供できますか?この時点で私が持っている唯一のアイデアは、表示する前に画像を回転させてディスクに保存することです。

0 投票する
0 に答える
235 参照

wpf - WPF RotateTransform の動作がおかしい

回転および翻訳したいキャンバスがあります。RotateTransform と TranslateTransform を TransformGroup に組み合わせて使用​​しています。

これらの変換で次の手順を実行したいと思います。

  1. キャンバスをある角度で回転させます。
  2. キャンバスを少し離れた場所に移動する
  3. キャンバスを回転します。

ステップ 1 とステップ 3 の回転中心は同じです。しかし、ステップ 2 を実行した後、回転の中心を親の中心にある新しい位置に変更したいと考えています。しかし、どういうわけかこれは機能しません。

問題は中心点です。回転するたびに古い点にリセットしています。しかし、数回の移動と回転の後、この点はコンテナーまたは画面の外側のどこかに移動します。それを修正するための助けが欲しいだけです。

ここに画像の説明を入力

「C」は赤い四角形の回転の中心であり、青い四角形は同じ赤い四角形ですが、平行移動されています。青い四角形を回転させる必要がありますが、回転の中心は「C」である必要があります。

0 投票する
1 に答える
583 参照

rotation - 異なる角度で複数の回転を適用する方法は?

z 軸上でいくつかの円柱を 90 度回転させ、次に y 軸上でそれぞれをさまざまな角度で回転させようとしています。私の問題は、setRotation 関数を使用すると、1 つの角度しか選択できず、それを複数の軸に適用できることです。別の setRotation を追加すると、変更されるだけで追加されません。同じオブジェクトに複数の回転、または複数または同じ変換を適用するにはどうすればよいですか? これは、私が何をしているかを示すコードのスニペットです。