0

ここに3つの長方形がレンダリングされています。それらをすべて境界線より上に移動し、順序を維持したいとします。どうすればよいでしょうか。Yを足すのではなく、Yと高さを引いてみましたが、予想どおり、下の長方形が上になり、真ん中が真ん中に留まり、上が下になります。

前:

z http://screensnapr.com/e/Lljb6S.png

後: z http://screensnapr.com/e/EgWID2.png

それで、すべての値を変更するのではなく、それらを真上にレンダリングするための簡単な解決策はありますか?

4

2 に答える 2

2

ボックスを X 軸上にとどめたい場合は、すべての高さの合計に青いボックスと軸の間の距離を加えた分だけ、すべてのボックスを持ち上げる必要があります [これはblueBox.y] です。

したがって、少しの疑似コードを使用すると、次のようになります。

double totalHeight = box1.height + box2.height + box3.height + Math.abs(box1.y);

for(box in boxes){

    box.y -= totalHeight;

}    

重要なのは、他のボックスを参照せずに 1 つのボックスの位置を示すことはできないということです。その合計が必要です。

于 2012-09-10T03:23:09.967 に答える
0

あなたの問題から私が理解している限り、あなたはそれらの長方形を持ち上げたいと思っています。

Zそれらをピクセル単位でアップしたいとしましょう。

次に、最初の長方形の座標は次のようになります。

Y= Y- Z

私はあなたの問題を理解することを願っています:)

于 2012-09-10T03:34:16.397 に答える