This website is a beta version. The official release will be in **2024**.
// Define the id of your board in BOARDID
const board = JXG.JSXGraph.initBoard(BOARDID, {
boundingbox: [-5, 5, 5, -5],
axis: true
});
var getMouseCoords = function(e, i) {
var pos = board.getMousePosition(e, i);
return new JXG.Coords(JXG.COORDS_BY_SCREEN, pos, board);
},
handleDown = function(e) {
var canCreate = true,
i, coords, el;
if (e[JXG.touchProperty]) {
// index of the finger that is used to extract the coordinates
i = 0;
}
coords = getMouseCoords(e, i);
for (el in board.objects) {
if (JXG.isPoint(board.objects[el]) && board.objects[el].hasPoint(coords.scrCoords[1], coords.scrCoords[2])) {
canCreate = false;
break;
}
}
if (canCreate) {
board.create('point', [coords.usrCoords[1], coords.usrCoords[2]]);
}
};
board.on('down', handleDown);
Copy to Clipboard
/*
This example is licensed under a
Creative Commons Attribution 4.0 International License.
https://creativecommons.org/licenses/by/4.0/
Please note that you have to mention
The Center of Mobile Learning with Digital Technology
in the credits.
*/
const BOARDID = 'your_div_id'; // Insert your id here!
const board = JXG.JSXGraph.initBoard(BOARDID, {
boundingbox: [-5, 5, 5, -5],
axis: true
});
var getMouseCoords = function(e, i) {
var pos = board.getMousePosition(e, i);
return new JXG.Coords(JXG.COORDS_BY_SCREEN, pos, board);
},
handleDown = function(e) {
var canCreate = true,
i, coords, el;
if (e[JXG.touchProperty]) {
// index of the finger that is used to extract the coordinates
i = 0;
}
coords = getMouseCoords(e, i);
for (el in board.objects) {
if (JXG.isPoint(board.objects[el]) && board.objects[el].hasPoint(coords.scrCoords[1], coords.scrCoords[2])) {
canCreate = false;
break;
}
}
if (canCreate) {
board.create('point', [coords.usrCoords[1], coords.usrCoords[2]]);
}
};
board.on('down', handleDown);
<div id="board-0-wrapper" class="jxgbox-wrapper " style="width: 100%; ">
<div id="board-0" class="jxgbox" style="aspect-ratio: 1 / 1; width: 100%;" data-ar="1 / 1"></div>
</div>
<script type = "text/javascript">
/*
This example is licensed under a
Creative Commons Attribution 4.0 International License.
https://creativecommons.org/licenses/by/4.0/
Please note that you have to mention
The Center of Mobile Learning with Digital Technology
in the credits.
*/
const BOARDID = 'board-0';
const board = JXG.JSXGraph.initBoard(BOARDID, {
boundingbox: [-5, 5, 5, -5],
axis: true
});
var getMouseCoords = function(e, i) {
var pos = board.getMousePosition(e, i);
return new JXG.Coords(JXG.COORDS_BY_SCREEN, pos, board);
},
handleDown = function(e) {
var canCreate = true,
i, coords, el;
if (e[JXG.touchProperty]) {
// index of the finger that is used to extract the coordinates
i = 0;
}
coords = getMouseCoords(e, i);
for (el in board.objects) {
if (JXG.isPoint(board.objects[el]) && board.objects[el].hasPoint(coords.scrCoords[1], coords.scrCoords[2])) {
canCreate = false;
break;
}
}
if (canCreate) {
board.create('point', [coords.usrCoords[1], coords.usrCoords[2]]);
}
};
board.on('down', handleDown);
</script>
<jsxgraph width="100%" aspect-ratio="1 / 1" title="Add points on click" description="This construction was copied from JSXGraph examples database: https://jsxgraph.org/share/" useGlobalJS="false">
/*
This example is licensed under a
Creative Commons Attribution 4.0 International License.
https://creativecommons.org/licenses/by/4.0/
Please note that you have to mention
The Center of Mobile Learning with Digital Technology
in the credits.
*/
const board = JXG.JSXGraph.initBoard(BOARDID, {
boundingbox: [-5, 5, 5, -5],
axis: true
});
var getMouseCoords = function(e, i) {
var pos = board.getMousePosition(e, i);
return new JXG.Coords(JXG.COORDS_BY_SCREEN, pos, board);
},
handleDown = function(e) {
var canCreate = true,
i, coords, el;
if (e[JXG.touchProperty]) {
// index of the finger that is used to extract the coordinates
i = 0;
}
coords = getMouseCoords(e, i);
for (el in board.objects) {
if (JXG.isPoint(board.objects[el]) && board.objects[el].hasPoint(coords.scrCoords[1], coords.scrCoords[2])) {
canCreate = false;
break;
}
}
if (canCreate) {
board.create('point', [coords.usrCoords[1], coords.usrCoords[2]]);
}
};
board.on('down', handleDown);
</jsxgraph>