我想知道是否可以在d3中获得矩形x,y坐标。 根据附图,我想知道它们在哪里:A,B,C,D。
实际上我可以获得旋转并且通过翻译得到“C”点。但我还需要得到其他观点。
在下面,您可以看到获取曲线上每个矩形的一部分代码(已分类为已锁定)并创建包含所有参数的对象:
var elements = [];
var num_locked = $('.locked').length;
$('.locked').each(function(){
var matrix = $(this).css('transform');
console.log('actual: '+matrix);
if(matrix !== 'none') {
var values = matrix.split('(')[1].split(')')[0].split(',');
var a = values[0];
var b = values[1];
var angle = Math.round(Math.atan2(b, a) * (180/Math.PI));
} else { var angle = 0; }
var rotate = (angle < 0) ? angle + 360 : angle;
var m = parseInt($(this).css('transform').split(',')[4])+','+parseInt($(this).css('transform').split(',')[5]);
var close = JSON.parse("[" + m + "]");
p = closestPoint(para_esterna.node(), close);
elements.push({
width:$(this).attr('width'),
height:$(this).attr('height'),
transform_x: parseInt($(this).css('transform').split(',')[4]),
transform_y: parseInt($(this).css('transform').split(',')[5]),
rotation: rotate,
p_x: p[0],
p_y: p[1]
});
});