在 JSXGraph 中使滑翔机元素可拖动

Make a glider-element draggable in JSXGraph

我想让原本沿线A移动的滑翔机元素被拖到另一条线B。滑翔机元素被拖到新线后,它应该作为新线上的滑翔机线.

实现此功能的最佳方式是什么?

谢谢

这可以通过磁化点来实现。一个 JSXGraph 点可能接收数组属性 attractors。这使得该点成为滑翔机,以防它足够靠近其中一个吸引子元素。 "Close enough" 由属性 attractorDistance 决定。可以通过将点拖离对象再次使点 "free"。拖动量由属性 snatchDistance 决定。这是一个带有 snatchDistance 的示例,它使得无法将点拖离线:

var line1 = board.create('line', [[-4,4], [4,1]]);
var line2 = board.create('line', [[-4,1], [4,2]]);
var p = board.create('point', [4,1], {
    attractors: [line1, line2], 
    attractorDistance: 0.5, 
    snatchDistance: 1000
});

https://jsfiddle.net/dcf2o85j/2/. Another example is at https://jsxgraph.org/wiki/index.php/Magnetized_points 现场观看。