Hong-Phuc Bui
2026-10-16 02147e7d251077ddecc6c5d36bf0a52f5a460d0e
01-intro-url-path/tangente.js
@@ -1,6 +1,3 @@
const RADIUS = 6;
const BOARD_SIZE = 14;
const toXYZ = (longitude, latitude) => {
    const lon = (longitude * Math.PI) / 180;
    const lat = (latitude * Math.PI) / 180;
@@ -49,6 +46,10 @@
}
// board commands
const RADIUS = 6;
const BOARD_SIZE = 14;
const board = JXG.JSXGraph.initBoard(
    'box', {
        boundingbox: [-BOARD_SIZE, BOARD_SIZE, BOARD_SIZE, -BOARD_SIZE],
@@ -56,7 +57,7 @@
    });
const bound = [-10, 10];
const view = board.create('view3d',
    [[-8, -8], [15, 15],
    [[-10, -10], [19, 19],
        [bound, bound, bound]],
    {
        axesPosition: 'none',
@@ -112,4 +113,5 @@
const meridianNormalVector = normalVector(TANGENT_COORDINATE, NORTH_POLE);
const meridianPlan = view.create('circle3d', [origin, meridianNormalVector, RADIUS]);
const projectionLine = view.create('line3d', [targetPoint, toXYZ(...TANGENT_COORDINATE),  [-Infinity, Infinity] ]);
const projectionLine = view.create('line3d', [targetPoint, toXYZ(...TANGENT_COORDINATE),  [0, Infinity] ]);
const ot = view.create('line3d', [origin, tangentPoint])