I cannot see any attachment here, but I guess your problem was
related to a bugfix in gl2, where semantics of glpaintx and dglpaint
swapped.  So search and change 'glpaintx' to 'glpaint' in your script.
If that still fails, please email the attachment directly to me.

Вск, 11 Мар 2012, Linda Alvord писал(а):
> Bill, I have attached the file you sent me on 2/21/2012.  As I remember it, 
> the figure of a boat or Fred was painted as it "swam" across the screen.  I 
> did not change the file, and it is now just the outline of the image which 
> appears.  Has anything changed that might have caused this or is it just my 
> memory?  One image is painted, but the series of images are not.  Any ideas?  
> 
> Linda
> 
> -----Original Message-----
> From: programming-boun...@jsoftware.com 
> [mailto:programming-boun...@jsoftware.com] On Behalf Of bill lam
> Sent: Tuesday, February 21, 2012 10:56 AM
> To: programming@jsoftware.com
> Subject: Re: [Jprogramming] Control error when loading script into ijx window 
> (J602)
> 
> I can only guess what your code suppose to perform.  With some modification, 
> it show animation but mapping seem upside down.  Hope this help.
> 
> Втр, 21 Фев 2012, Linda Alvord писал(а):
> > I tried to attach and  .ijs  file and it didn't work, so here it is:
> > 
> > NB. WhimsyCalculus(WhimsyTOT98)     2/20/2001
> > require 'gui/gtkwd'
> > Debugwd_gtkwd_=:1
> > require 'gl2 trig'
> > 
> > NB.bind=: [. @ ("_)
> > each=: (&.>)
> > 
> > range=: 3 : '(>./y)-<./y'
> > lint=: 13 : '(range y) % x'
> > ap=: 13 :'(<./y)+0,+/\x#x lint y' 
> > rot=:2 2"_ $ 1 _1 1 1"_ * 2 1 1 2"_ o. ]
> > 
> > boat=:_2+0.5*4 2 3 5 6 4 4 6 4,:3 3 2 2 3 3 7 4 4
> > Fred=:_1.6+0.4*(18 9 9 6 0 3 0 6 12 18,:12 18 15 12 18 12 6 9 6 12)%3
> > ladybug=:0.2*0 _6 _5 _4 _2 0 2 3 3 2 6 2 2 6 2 3 3 2 0 _2 _4 _5 _6 
> > 0,:0 _1 _2 _3 _4 _4 _3 _2 _1 0  _1 0 0 1 0 1 2 3 4 4 3 2 1 0
> > dragonfly=:0.1* 0 6 10 6 0 2 6 0 _6 _6 0 _24 0 _6 _6 0 6 2 0 6 10  6 
> > 0,:0 0 4 0 0 8 12 0 12 6 0 0 0 _6 _12 0 _12 _8 0 0 _4 0 0
> > turtle=:0.3*6 5 4 2 3 2 3 2 0 _2 _3 _5 _3 _2 _3 _5 _5 _3 _2 _3 _5 _3 
> > _2 0 2 3 2 3 2 4 5 6,:0 1 0 2 4 6 4 2 3 2 4 3 4 2 1 0 0 _1 _2 _4 _3 _4 
> > _2 _3 _2 _4 _6 _4 _2 0 _1 0
> > 
> > sline=: 3 : 0"1 2
> > 0 0 0 sline y
> > :
> > glrgb x
> > glpen 1 0
> > gllines ,y
> > glshow ''
> > )
> > 
> > sfill=: 3 : 0
> > if. _1 e. y do. glbrushnull ''
> >     else. glrgb y
> >     glbrush '' 
> > end. 
> > )
> > 
> > spoly=: 3 : 0"1 2
> > glpolygon ,y
> > glshow ''
> > :
> > sfill x
> > spoly y
> > )
> > 
> > spixel=: 3 : 0"1
> > glpixel y
> > glshow ''
> > :
> > glrgb x
> > spixel y
> > )
> > 
> > size=: 3 : '500+50*|: y'
> > 
> > see=: 3 : 0
> > 0 0 0 see y
> > :
> > xx=:0
> > yy=:0
> > d=:0
> > )
> > 
> > swim=: 3 : 0
> > 0 0 0 swim y
> > :
> > t=:24 ap _2p1 2p1
> > xx=: t
> > yy=: 1 o. t
> > d=: 2 o. t
> > p=:xx,:y
> > )
> > 
> > dance=: 3 : 0
> > 0 0 0 dance y
> > :
> > t=:24 ap _3p1 3p1
> > xx=:t - 2 * 1 o. t
> > yy=:1 - 2 * 2 o. t
> > d=:(2 * 1 o. t) % 1 - 2 * 2 o. t
> > )
> > 
> > x3=: 3 : '8 * (r=. 1 o. 2 * y) * 2 o. y'
> > y3=: 3 : '8 * (r=. 1 o. 2 * y) * 1 o.y'
> > 
> >   loop=: 3 : 0
> > 0 0 0 loop y
> > :
> > t=:48 ap 0 2p1
> > xx=:x3 t
> > yy=:y3 t
> > dy=:((1 o. 2*t)*2 o.t)+(1 o.t)*2*2 o. 2*t
> > dx=:(-(1 o. 2*t)*1 o.t)+(2 o.t)*2*2 o. 2*t 1E_5(<1)}dx d=:dy%dx
> > )
> > 
> > fade=: 3 : 0
> > 200 330 100  fade y
> > :
> > t=:120 ap _2p1 2p1
> > xx=:4 * 2 o. t
> > y=:t + 1 o. 3 * t
> > d=:(-1+3 * 2 o.3* t,0)%4* 1 o. 0,t
> > kk=:1.5
> > )
> > 
> > TOT98=: 0 : 0
> > pc tot98;picon fred\fred.ico 0;pn "Tool of Thought X, A Whimsyware 
> > Product from Stochastic Services"; xywh 245 10 65 40;cc lis0 listbox 
> > ws_vscroll; xywh 245 55 65 40;cc lis1 listbox ws_vscroll; xywh 245 100 
> > 65 40;cc lis2 listbox ws_vscroll; xywh 245 150 30 30;cc show button 
> > bs_ownerdraw;cn "fred\ss.ico"; xywh 280 150 30 30;cc pain button 
> > bs_ownerdraw;cn "fred\ssg.ico"; xywh 245 185 65 15;cc clear button;cn 
> > "Clear"; xywh 245 205 65 15;cc cancel button;cn "Close"; xywh 3 3 220 
> > 220;cc g isigraph; pas 6 6;pcenter;
> > )
> > 
> > tot98_run=: 3 : 0
> > forms=:;:'boat Fred ladybug dragonfly turtle '
> > paths=:;:'see swim dance loop fade '
> > colors=:;:'red green blue yellow orange '
> > red=:255 0 0
> > green=:0 255 0
> > blue=:0 0 255
> > yellow=:255 255 0
> > orange=:255 126 0
> > wd TOT98
> > wd 'set lis0 ',;forms, each LF
> > wd 'setfont lis0 "MS Sans Serif" 11 bold'
> > wd 'set lis1 ',;paths, each LF
> > wd 'setfont lis1 "MS Sans Serif" 11 bold'
> > wd 'set lis2 ',;colors, each LF
> > wd 'setfont lis2 "MS Sans Serif" 11 bold'
> > wd 'setfont clear "MS Sans Serif" 11'
> > wd 'setfont cancel "MS Sans Serif" 11'
> > smoutput 'a0'
> > label_there.
> > smoutput 'a1'
> > while. 1 do. 
> > smoutput 'a2'
> >    wd 'wait'
> >    k=:wd 'q'
> >    smoutput 'a3'
> >    if.
> >    smoutput 'a4'
> >       (*/'show' = 4{.>9{{:"1 k) +. */'pain' = 4{.>9{{:"1 k
> >    do.
> >       if.
> >          */'pain' = 4{.>9{{:"1 k
> >       do.   
> >          wd ".'glrgb ',":?3#255
> >          glbrush ''
> >          glflood 100 120 0 127 255
> >       end.
> >       if. 
> >          */'see' = 3{.>14{{:"1 k
> >       do.
> >          xx=:0
> >          yy=:0
> >          d=:0
> >          s=:2*".>16{{:"1 k 
> >          0 0 0 sline size s
> >          (".uuu=:>12{{:"1 k) spoly size s
> >          glshow ''
> >          goto_there.
> >       end.
> >       ".(col=:>12{{:"1 k),' ',(path=:>14{{:"1 k),' ',who=:>16{{:"1 k 
> >       p=:xx,:yy
> >       cc=:0
> >       while. cc<$,yy do. r=:rot _3 o. cc{d
> >          if. */'loop'=4{.iii=:>14{{:"1 k do.
> >             s=:((r +/ . *".who)*cc{*dx)+ (_1 {.$".who)#"1,.cc{"1 p
> >          end.
> >          if. (*/'swim'=4{.>14{{:"1 k) +. (*/'danc'=4{.>14{{:"1 k) do.
> >             s=:(r +/ . *".who)+(_1 {.$".who)#"1,.cc{"1 p
> >          end.
> >          if. */'fade'=4{.>14{{:"1 k do.
> >             s=:(r +/ .* kk * 
> > (".who)*(_1{.$".who)#"1,.*2#cc{(-*t)*_1+2*(|t)<1p1)+ (_1 
> > {.$".who)#"1,.cc{"1 p
> >             kk =:0.97*kk
> >          end.
> >          0 0 0 sline size s
> >          (".col) spoly size s 
> >          glshow ''
> >          255 255 255 sline size s
> >          255 255 255 spoly size s
> >          glshow ''
> >          cc=:cc+1
> >      end.  
> >      kk=:1.5
> >      goto_there.
> >    end.
> >    if. */'clea'= 4{.>9{{:"1 k do. glclear '' end.
> >    if. */'canc' = 4{.>9{{:"1 k do. goto_here. end.
> > end.  
> > wd 'pshow;'
> > label_here.
> > tot98_close ''
> > )
> > 
> > tot98_cancel_button=:tot98_close
> > 
> > tot98_close=: wd bind 'pclose'
> > 
> > tot98_run''
> > 
> > Maybe the problem will jump out for you.
> > 
> > Linda
> > 
> > -----Original Message-----
> > From: programming-boun...@jsoftware.com 
> > [mailto:programming-boun...@jsoftware.com] On Behalf Of Linda Alvord
> > Sent: Tuesday, February 21, 2012 5:51 AM
> > To: 'Programming forum'
> > Subject: Re: [Jprogramming] Control error when loading script into ijx 
> > window (J602)
> > 
> > All my code is really ancient code and it worked.  I was frustrated that I 
> > could not make things work anymore when changes were made. Maybe you can 
> > find my problem in the attached script. 
> > 
> > Linda
> > 
> > -----Original Message-----
> > From: programming-boun...@jsoftware.com 
> > [mailto:programming-boun...@jsoftware.com] On Behalf Of bill lam
> > Sent: Tuesday, February 21, 2012 5:17 AM
> > To: programming@jsoftware.com
> > Subject: Re: [Jprogramming] Control error when loading script into ijx 
> > window (J602)
> > 
> > I guess these are really ancient codes.  the wd'wait' is rarely used in 
> > modern J base libary or addons code, and the gtkwd does not support it.  
> > And wd'q' will raise domain error if there is no event after the previous 
> > wd'q'
> > 
> > You code fragment is incomplete so that I cannot know what it is suppose to 
> > do. You should put event-driven code inside either form_default or 
> > form_child_button. eg, if there is a button with an id 'foo'
> > 
> > form_foo_button=: 3 :0
> >   k=. wdq
> >   if.  (*/'show' = 4{.>9{{:"1 k) +. */'pain' = 4{.>9{{:"1 k do.
> >      if.  */'pain' = 4{.>9{{:"1 k
> > .....     
> > )
> > 
> > Often wdq need not used, because the value of child will be automatically 
> > assigned.  Please read the chapter on 'window driver'
> > in "j user manual" accessible from j602 help for some background.
> > 
> > Втр, 21 Фев 2012, Linda Alvord писал(а):
> > > Here is the code that causes my trouble.  I have Debugwd_gtkwd_=:1 way at 
> > > the beginning.
> > > 
> > > wd 'setfont clear "MS Sans Serif" 11'
> > > wd 'setfont cancel "MS Sans Serif" 11'
> > > smoutput 'a0'
> > > label_there.
> > > smoutput 'a1'
> > > while. 1 do. 
> > > smoutput 'a2'
> > >    wd 'wait'
> > >    k=:wd 'q'
> > >    smoutput 'a3'
> > >    if.
> > >    smoutput 'a4'
> > >          (*/'show' = 4{.>9{{:"1 k) +. */'pain' = 4{.>9{{:"1 k
> > >    do.
> > >       if.
> > >          */'pain' = 4{.>9{{:"1 k
> > >       
> > > here's where I go astray:
> > > 
> > > wd 'setfont clear "MS Sans Serif" 11'
> > > wd 'setfont cancel "MS Sans Serif" 11'
> > > smoutput 'a0'
> > > label_there.
> > > smoutput 'a1'
> > > while. 1 do. 
> > > smoutput 'a2'
> > >    wd 'wait'
> > >    k=:wd 'q'
> > >    smoutput 'a3'
> > >    if.
> > >    smoutput 'a4'
> > > 
> > > since I haven't used this code since J4 I can't remember what I would get 
> > > in 'q' but I must have been able  to collect some data I wanted but I 
> > > don't know what it was back then.
> > > 
> > > Any ideas?
> > > 
> > > Linda
> > > 
> > > 
> > > -----Original Message-----
> > > From: programming-boun...@jsoftware.com 
> > > [mailto:programming-boun...@jsoftware.com] On Behalf Of bill lam
> > > Sent: Tuesday, February 21, 2012 1:49 AM
> > > To: programming@jsoftware.com
> > > Subject: Re: [Jprogramming] Control error when loading script into 
> > > ijx window (J602)
> > > 
> > > I would suspect H L C are undefined.  My general approach is to 
> > > insert smoutput before and after every control switch, eg
> > > 
> > > smoutput 'a1'
> > > for_i. i.(#a) do.
> > > smoutput 'a2'
> > > 
> > >   currHi=. ". > (i { H)
> > >   currLo=. ". > (i { L)
> > >   currCl=. ". > (i { C)
> > > 
> > >   if. (0=i) do.
> > > smoutput 'a3'
> > >     diffHi=. 0
> > >     diffLo=. 0
> > >   else.                      <-------- control error here
> > > smoutput 'a4'
> > >     prevHi=. ". > ((i-1) { H)
> > >     prevLo=. ". > ((i-1) { L)
> > >     diffHi=. currHi - prevHi
> > >     if. 0<:diffHi do. pivotHi=. currHi end.
> > > smoutput 'a5'
> > >     diffLo=. prevLo - currLo
> > >     if. 0<:diffLo do. pivotLo=. currLo end.
> > > smoutput 'a6'
> > >   end.
> > > 
> > > smoutput 'a7'
> > >   if. diffLo>diffHi do.
> > > smoutput 'a8'
> > >     if. currLo <: ( pivotHi * (1-swing) ) do.
> > > smoutput 'a9'
> > >       xx=. xx , currLo
> > > 
> > > Втр, 21 Фев 2012, PackRat писал(а):
> > > > When loading a script to test, I get an immediate "control error" 
> > > > when I give the command to load it.  The following is the portion 
> > > > of the script that has all of the control structures.  I've drawn 
> > > > an arrow pointing to the line where the error is supposed to have 
> > > > occurred.  I'm probably "blind" to the error because I'm just not 
> > > > seeing the problem.
> > > > 
> > > > ================================================================
> > > > 
> > > > for_i. i.(#a) do.
> > > > 
> > > >   currHi=. ". > (i { H)
> > > >   currLo=. ". > (i { L)
> > > >   currCl=. ". > (i { C)
> > > > 
> > > >   if. (0=i) do.
> > > >     diffHi=. 0
> > > >     diffLo=. 0
> > > >   else.                      <-------- control error here
> > > >     prevHi=. ". > ((i-1) { H)
> > > >     prevLo=. ". > ((i-1) { L)
> > > >     diffHi=. currHi - prevHi
> > > >     if. 0<:diffHi do. pivotHi=. currHi end.
> > > >     diffLo=. prevLo - currLo
> > > >     if. 0<:diffLo do. pivotLo=. currLo end.
> > > >   end.
> > > > 
> > > >   if. diffLo>diffHi do.
> > > >     if. currLo <: ( pivotHi * (1-swing) ) do.
> > > >       xx=. xx , currLo
> > > >     else.
> > > >       xx=. xx , ( {: xx )    NB. repeat previous value
> > > >     end.
> > > >   else.
> > > >     if. currHi >: ( pivotLo * (1+swing) )
> > > >       xx=. xx , currHi
> > > >     else.
> > > >       xx=. xx , ( {: xx )    NB. repeat previous value
> > > >     end.
> > > >   end.
> > > > 
> > > > end.
> > > > 
> > > > ================================================================
> > > > 
> > > > The same error (at the same line) occurs if the following lines:
> > > > 
> > > >   if. 0<:diffHi do. pivotHi=. currHi end.
> > > >   . . .
> > > >   if. 0<:diffLo do. pivotLo=. currLo end.
> > > > 
> > > > are instead expanded to:
> > > > 
> > > >   if. 0<:diffHi do.
> > > >     pivotHi=. currHi
> > > >   end.
> > > >   . . .
> > > >   if. 0<:diffLo do.
> > > >     pivotLo=. currLo
> > > >   end.
> > > > 
> > > > 
> > > > I would appreciate any assistance in "opening my eyes"--thanks in 
> > > > advance!
> > > > 
> > > > 
> > > > Harvey
> > > > 
> > > > ------------------------------------------------------------------
> > > > --
> > > > -- For information about J forums see 
> > > > http://www.jsoftware.com/forums.htm
> > > 
> > > --
> > > regards,
> > > ====================================================
> > > GPG key 1024D/4434BAB3 2008-08-24
> > > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> > > --------------------------------------------------------------------
> > > -- For information about J forums see 
> > > http://www.jsoftware.com/forums.htm
> > > 
> > > --------------------------------------------------------------------
> > > -- For information about J forums see 
> > > http://www.jsoftware.com/forums.htm
> > 
> > --
> > regards,
> > ====================================================
> > GPG key 1024D/4434BAB3 2008-08-24
> > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> > 
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> 
> --
> regards,
> ====================================================
> GPG key 1024D/4434BAB3 2008-08-24
> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3

> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm


-- 
regards,
====================================================
GPG key 1024D/4434BAB3 2008-08-24
gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to