あなたの現在の質問とあなたの要求された確認ごとに:
var x = termin.top + Math.cos(angle) * div.height;
var y = div.left + Math.sin(angle) * div.height;
解決策は、別の質問に対するこの他のSO Answerにあり、ここで拡張されています。
// return an object with full width/height (including borders), top/bottom coordinates
var getPositionData = function(el) {
return $.extend({
width: el.outerWidth(false),
height: el.outerHeight(false)
}, el.offset());
};
// get rotated dimensions
var transformedDimensions = function(el, angle) {
var dimensions = getPositionData(el);
return {
width: dimensions.width + Math.ceil(dimensions.width * Math.cos(angle)),
height: dimensions.height + Math.ceil(dimensions.height * Math.cos(angle))
};
};
これは、関数のリアルタイム更新を提供
するインタラクティブなjsFiddleです。制御するCSS3ローテーションプロセスの最後にとの値が表示されます。getPositionData();
top
left
参照: jsFiddle
ステータスの更新:上記のjsFiddleは、 0〜90度で最適に機能し、すべての角度と、ラジアン、グラッド、ターンなどのさまざまな単位で承認できます。