Tôi có các nút trong bố cục hướng lực D3 được đặt thành. cố định = true. Nếu tôi đặt giá trị .x hoặc .y, các nút sẽ không di chuyển đến vị trí mới của chúng.Di chuyển các nút cố định trong D3
Dưới đây là chức năng của tôi:
function fixNode(idArray, locationX, locationY) {
for (x = 0; x < idArray.length; x++) {
for (y = 0; y < nodes.length; y++) {
if (nodes[y].id == idArray[x]) {
nodes[y].fixed = true;
nodes[y].x = 50;
nodes[y].y = 50;
break;
}
}
}
}
UPDATE 1:
Dưới đây là chức năng làm việc dựa trên lời khuyên của Jason:
function fixNode(idArray, locationX, locationY) {
for (x = 0; x < idArray.length; x++) {
for (y = 0; y < nodes.length; y++) {
if (nodes[y].id == idArray[x]) {
nodes[y].fixed = true;
nodes[y].x = 50;
nodes[y].y = 50;
nodes[y].px = 50;
nodes[y].py = 50;
break;
}
}
}
tick();
}
Cảm ơn, giờ tôi đã hiểu. Tôi chỉ thử nghiệm hành vi và muốn chỉ ra điều gì đó có thể ném ra những người đến từ các ví dụ mặc định: Bạn cần thay đổi giá trị px/py cũng như các giá trị x/y nếu nút đã được di chuyển. Tôi sẽ đăng chức năng cập nhật ở trên. – Elijah