Как изменить свойства элемента в JSXGraph?
Предположим, у меня есть следующий кусок кода:
var brd2 = JXG.JSXGraph.initBoard('box2', {boundingbox: [-8.75, 2.5, 8.75, -2.5]});
var ax2 = brd2.create('axis', [[0,0],[1,0]]);
Как я могу изменить вторую точку оси? Что-то вроде ax2.setSecondPoint([2,0])?
В общем, как я могу установить свойство любого элемента?
Спасибо.
1 ответ
Ось имеет два свойства, названия которых не требуют пояснений: точка1 и точка2. Вы можете использовать метод setPosition на любом из них, например
ax2.point2.setPosition(JXG.COORDS_BY_USER,[2,0])
Теперь есть одна загвоздка: вы не увидите это изменение на графике, если не установите needsRegularUpdate
свойство объекта оси true
, Наконец, чтобы обновить график, вы должны выполнить fullUpdate()
Метод на доске переменная. Все выглядит так:
var brd2 = JXG.JSXGraph.initBoard('box2', {boundingbox: [-8.75, 2.5, 8.75, -2.5]});
var ax2 = brd2.create('axis', [[0,0],[1,0]],{needsRegularUpdate:true});
ax2.point2.setPosition(JXG.COORDS_BY_USER,[2,0]);
brd2.fullUpdate();
Рекомендации:
http://jsxgraph.uni-bayreuth.de/docs/symbols/JXG.Point.html
http://jsxgraph.uni-bayreuth.de/wiki/index.php/Options (поиск "специальных параметров оси")
Теперь, чтобы изменить свойства, такие как fixed
, visible
и т. д. вы должны использовать setAttribute
метод (setProperty
устарела). Пример:
// Set property directly on creation of an element using the attributes object parameter
var board = JXG.JSXGraph.initBoard('jxgbox', {boundingbox: [-1, 5, 5, 1]};
var p = board.create('point', [2, 2], {visible: false});
// Now make this point visible and fixed:
p.setAttribute({
fixed: true,
visible: true
});
Источник: http://jsxgraph.uni-bayreuth.de/docs/symbols/JXG.GeometryElement.html
Последняя, но не менее важная формула:
a + b = c
где:
a = использование JavaScript-инструментов отладки в браузерах для исследования свойств объекта
b = проверка документации на продукты, которые вы используете
с = успех:)