Interferencias de ondas

11 views
Skip to first unread message

galil...@gmail.com

unread,
Apr 18, 2016, 12:54:42 PM4/18/16
to reda4
| Wave interferences - Interferencia de ondas
| Adaptacion de Galileo (2016)

^r4/lib/gui.txt

| Coordenadas de origen de las ondas
#x1 150
#y1 300
#x2 0
#y2 0
#d1 #d2 #s1 #s2

:color | c --
  16 >> dup dup 8 << or 8 << or ink ;

:calcula | n x y -- 
  over x1 - dup * over y1 - dup * + sqrt 16 << 'd1 !
  over x2 - dup * over y2 - dup * + sqrt 16 << 'd2 !
  pick2
  dup d1 5.0 /. swap - 6.2832 /. sin 60.0 *. 's1 !
  dup d2 5.0 /. swap - 6.2832 /. sin 60.0 *. 's2 !
  5.0 *.
  d2 >=? ( 122.0 s2 + color )( 122.0 s1 + color )
  d1 >=? ( d2 >=? ( 122.0 s1 s2 + + color ) )
  d1 <=? ( d2 <=? ( 128.0 color ) )
  drop
  2dup 4 fcircle
;

:bucley | n x --
  0 ( 300 <? )( calcula 5 + ) drop ;

:buclex | n --
  0 ( 300 <? )( bucley 5 + ) drop ;

:waves 
  1.0 ( 100.0 <? )( redraw buclex 0.2 + ) drop ;

: cls waves show 'exit >esc< ;


Pablo Hugo Reda

unread,
Apr 18, 2016, 2:23:11 PM4/18/16
to reda4
Impecable.
Lo único que cambiaría es la interacción, que sea continua y se puede salir en cualquier momento.


#n 1.0

: show cls n buclex 0.2 'n +!  'exit >esc< ;


Seguramente se puede simplificar "calcula" quitando alguna variable, pero quedaría menos prolijo.
Un matriz con distancias cambiaría memoria por velocidad, evitando calcular la raíz cuadrada cada vez, pero ya es otro programa, esta bueno que no haya una matriz!

Otro tema
Hay un manual de jupiter ace para convertir programas basic a forth, me imagino que vas a ser un especialista en esto 

Muchas Gracias por publicar esto, todos los dias espero tus codigos!!


galil...@gmail.com

unread,
Apr 19, 2016, 1:40:43 PM4/19/16
to reda4
Gracias por la referencia al manual de Júpiter Ace, pero, una de las cosas que me encantan de este sitio es que me puedo expresar en castellano. Evito el inglés todo lo que puedo (que no es mucho) porque, en verdad, nunca se me ha dado bien (para ser sinceros, lo detesto).
Reply all
Reply to author
Forward
0 new messages