私は、視差スクロール効果のために3D変換を行ってきましたが、平面から平面への投影を行う方法を理解しようとしています。私は周りを探索しましたが、関係する行列の数学は、明確な例がなければ把握するのは少し難しいです。平面から平面への投影のためのCSS変換行列
複数のパネルを含むレイアウトが与えられた場合、元の変換されていないパースペクティブを維持しながら、各パネルを新しい任意のプレーンに移動するために変換マトリックスを取得したいと思います。
この問題を説明するために、3つの異なるdivにZ変換を実行し、スケーリングと平行移動を実行して平面投影を実現するプランカを示します。まるでスケール変換とX、Y変換を使用して変換がないかのように、特定のスクロール・ポイントで並んでいるように見えます。
transform: translateZ(60px) scale(0.4) translateX(-270px) translateY(258px);
https://plnkr.co/edit/UddWeLAWTQgkcpYMRP9q
私はtranslateZ
は場違いそれを引き出した後、バックのdivをシフトするために、手動scale
、translateX
とtranslateY
をやって試行錯誤してこの例を達成しています。しかし、私はdivの値が必要な値を変更する固定サイズではないので、変換行列を計算するより良い方法を理解したいと思います。