tôi muốn chia tỷ lệ phần tử bên dưới ở vị trí cố định.cách quy mô phần tử bằng cách giữ vị trí cố định trong svg
<path id="container_svg_rectsymbol1" fill="red" stroke-width="1" stroke="Gray" d="M 73.1111111111111 -71.75 L 83.1111111111111 -71.75 L 83.1111111111111 -61.75 L 73.1111111111111 -61.75 L 73.1111111111111 -71.75" transform="scale(1)"/>
khi bắt đầu chia tỷ lệ nó di chuyển từ một vị trí này sang vị trí khác. tôi không muốn di chuyển đối tượng tôi chỉ muốn phóng to kích thước của đối tượng.
tôi đã giới thiệu liên kết sau.
http://commons.oreilly.com/wiki/index.php/SVG_Essentials/Transforming_the_Coordinate_System
cách chia tỷ lệ cố định?
tôi muốn tạo hiệu ứng cho phần tử, tức là phóng to kích thước ở vị trí cố định. tôi đã thực hiện theo cách sau. nhưng nó sill di chuyển các yếu tố từ nguồn gốc. vui lòng tham khảo mã dưới đây.
var box = element.getBBox();
var scaleVal=null, x=null, y=null;
$(element).animate(
{
scale: 1,
centerX:box.x+(4*transX),
centerY:box.y+(4*transY)
},
{
duration: 4000,
step: function(now,fx) {
if (fx.prop == "scale") {
scaleVal = now;
} else if (fx.prop == "centerX") {
x = now;
} else if (fx.prop == "centerY") {
y = now;
}
if(!sf.util.isNullOrUndefined(scaleVal) && !sf.util.isNullOrUndefined(x) && !sf.util.isNullOrUndefined(y)) {
$(element).attr("transform", "translate("+(-x*(scaleVal-1))+","+(-y*(scaleVal-1))+")scale(" + scaleVal + ")");
}
}
)
gọi liên kết bên dưới để chia tỷ lệ ở điểm chính giữa.
http://commons.oreilly.com/wiki/index.php/SVG_Essentials/Transforming_the_Coordinate_System
nhưng vẫn bắt đầu từ nguồn gốc và phóng to phần tử.
Cảm ơn,
Siva
Hãy thử [phrogz] (http://stackoverflow.com/questions/4850821/svg-coordinates-with-transform-matrix) câu trả lời tuyệt vời –
@Alvin: điều đó không liên quan đến yêu cầu của tôi. – SivaRajini