我讀了http://goo.gl/HKMtO知道如何計算邊界框從旋轉rectangle.But在特殊情況下的座標如下形象:計算旋轉矩形大小從已知的邊界框座標
如何獲得旋轉後的矩形大小是否已經達到邊界框的大小,編碼和旋轉度?
我嘗試寫的代碼在JavaScript
//assume w=123,h=98,deg=35 and get calculate box size
var deg = 35;
var bw = 156.9661922099485;
var bh = 150.82680201149986;
//calculate w and h
var xMax = bw/2;
var yMax = bh/2;
var radian = (deg/180) * Math.PI;
var cosine = Math.cos(radian);
var sine = Math.sin(radian);
var cx = (xMax * cosine) + (yMax * sine) /(cosine * cosine + sine * sine);
var cy = -(-(xMax * sine) - (yMax * cosine)/(cosine * cosine + sine * sine));
var w = (cx * 2 - bw)*2;
var h = (cy * 2 - bh)*2;
但是......答案是不匹配的W和H
你有theta? – 2012-04-02 05:21:14
你是什麼意思的「矩形大小」?如果你旋轉一個物體,你將獲得旋轉的相同物體......相同的長度,相同的面積......如果你有旋轉的結果而不是原始對象,只需使用座標(你說你有它們),計算「角點」之間的距離來獲得每邊的長度。 – ShinTakezou 2012-04-02 05:26:03
我假設,參照你的「案例圖像」,你有'bh','bw'和'theta',並且你想'w'和'h'? – 2012-04-02 05:31:23