2010-07-14 37 views
0

我有一個矩形說(150,200,25,25)和x軸可達800和y軸可達650.現在喜歡增加值x和y軸減少100.矩形值也根據x和y軸增加。如何獲得新的矩形值,當x和y軸增加

說我的矩形在陰影的地方。現在我增加x和y軸。陰影位置也增加。矩形值也需要增加,所以它像以前一樣放置在陰影處。

我怎樣才能實現這一點...

預先感謝....

+0

您能否在您想要的情況下添加一對之前/之後的圖片? – 2010-07-14 12:37:19

+0

如何添加圖像沒有選項。 我得到他的一個從FRND之一... 的x,y(舊)= 800650 的x,y(新)= 1600,1300 矩形(150,200,25,25) 比=下一頁末/ oldx 比1 = newy/oldy a =矩形寬度+(矩形頂部 - 矩形寬度)/ 2 b =矩形高度+(矩形左側 - 矩形高度)/ 2 矩形頂部=(矩形頂部矩形寬度)*比率 矩形左側=左 - 矩形高度)*比率1 矩形(新)=(a /比率)+矩形頂部/比率,(b *比率1)+(矩形左/比率1),(矩形頂部*比率) - (a *比率), (b * ratio1) - (rect left/ratio1)) 新的矩形將會是(300,400,50,50) 當x和y加倍時,以上工作正常。 – Nivas 2010-07-15 10:03:03

+0

如果x和y增加100,比例是多少。 – Nivas 2010-07-15 10:07:05

回答

0

使用的比例因子對於每個軸>

ScaleFactorX = NewValueAxisX/OldValueAxisX =800分之900(在你的例子

NewRectValuesX = OldRectValuesX * ScaleFactorX

用於Y軸

相同

如果RECT是在頂部(800),現在它會在

NewRectValue = 800 *比例= 800 *800分之900= 800(仍然在頂部)

+0

感謝您的回答。但我的最後一行使我的錯誤。所以我刪除了lsat line.c對不起。 說我的矩形在陰影處。現在我增加x和y軸。陰影位置也增加。矩形值也需要增加,所以它像以前一樣放置在陰影處。 – Nivas 2010-07-14 06:24:06

1

率=轉換.ToDouble(新的x軸)/ Convert.ToDouble(舊的x軸);

rect1.X = Convert.ToInt16((rectangles [c] .X)* ratio); rect1.Y = Convert.ToInt16((rectangles [c] .Y * ratio)); rect1.Width = Convert.ToInt16(rectangles [c] .Width * ratio); rect1.Height = Convert.ToInt16(rectangles [c] .Height * ratio);

相關問題