1- export class Position {
1+ import { Trajectory } from "./base.js"
2+ export class Position extends Trajectory {
23 constructor ( ) {
3- this . parameters = {
4+ super ( {
45 "x" : { "range" : [ - 10 , 10 ] , "default" : 0 } ,
56 "y" : { "range" : [ - 10 , 10 ] , "default" : 0 } ,
67 "z" : { "range" : [ - 10 , 10 ] , "default" : 0 } ,
7- }
8- this . parameter_values = { }
9- for ( const [ name , param ] of Object . entries ( this . parameters ) ) {
10- this . parameter_values [ name ] = param . default
11- }
12- }
13- set_parameter ( name , value ) {
14- this . parameter_values [ name ] = value
8+ } )
159 }
1610 evaluate ( t ) {
1711 return [ this . parameter_values . x , this . parameter_values . y , this . parameter_values . z , 0 , 0 , 0 ]
1812 }
1913}
20-
21- // function lissajous(t){
22- // const scale = 0.5
23- // const duration = 10
24- // const A = 1
25- // const B = 0.5
26- // const progress = t * 2 * Math.PI / duration
27- // const d_progress = 2 * Math.PI / duration
28- // const x = scale * Math.sin(A * progress)
29- // const y = scale * Math.sin(B * progress)
30- // const vx = scale * Math.cos(A * progress) * A * d_progress
31- // const vy = scale * Math.cos(B * progress) * B * d_progress
32- // return [x, y, 0, vx, vy, 0]
33- // }
0 commit comments