Ok, fair enough.

New plan:

TOP=:<,.'TOP';<2 2$;:'BLACK BLUE RED MAGENTA'
BACK=:<,.'BACK';<2 2$;:'GREEN CYAN BLACK BLUE'
FRONT=:<,.'FRONT';<2 2$;:'RED MAGENTA YELLOW WHITE'
BASE=:<,.'BASE';<2 2$;:'YELLOW WHITE GREEN CYAN'
LEFT=:<,.'LEFT';<2 2$;:'GREEN BLACK RED YELLOW'
RIGHT=:<,.'RIGHT';<2 2$;:'BLUE CYAN MAGENTA WHITE'
   BASE(<3 1)}FRONT(<2 1)}(LEFT,TOP,RIGHT)1}BACK(<0 1)}4 3$a:

Implementation:

'BLANK'=: <BLACK;BLACK;BLACK
'BACK'=:  <GREEN;CYAN;BLACK
'LEFT'=:  <GREEN;BLACK;YELLOW
'TOP'=:   <BLACK;BLUE;RED
'RIGHT'=: <BLUE;CYAN;MAGENTA
'FRONT'=: <RED;MAGENTA;YELLOW
'BASE'=:  <YELLOW;WHITE;GREEN

squarecolor=:3 :0
  'O X Y'=. y
  colors=. <.255*O+"1]0.25*((i.5)*/Y-"1 O)+"1/(i.5)*/X-"1 O
)

cube=:3 :0
  plan=: BASE(<3 1)}FRONT(<2 1)}(LEFT,TOP,RIGHT)1}BACK(<0 1)}4 3$BLANK
  ref=.  ((75*i.4)+/5*i.3) +each <i.5 5
  colors=.  ,/,/>,"_1 each/"1 squarecolor each plan
  colors viewmat i.20 15
)

cube''

Technically, I didn't need to quote my color names, but I decided to
leave the quotes in as emphasis (or, perhaps more accurately, to give
some style to those particular names).

Thanks,

-- 
Raul


On Sat, Jun 13, 2015 at 5:11 AM, Linda Alvord <[email protected]> wrote:
> Raul, I can see that a plan is useful. If you think of Black as no light.
> Now build three axes. Blue is to the right (0 to 255). Red is forward toward
> you. And green moves up from the base. So
>
> I like your floor plan, Now LEFT and RIGHT are not oriented correctly.
>
> Try your code in JHS. There you can just place the images where you want
> them.
>
> Linda
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Linda Alvord
> Sent: Saturday, June 13, 2015 4:40 AM
> To: [email protected]
> Subject: Re: [Jprogramming] Trouble making patter for a color cube
>
> Also, when I ran your code in jqt, I separated the  separate images and they
> work together.  However they are a horizontal flip of your layout for the
> pieces.  Linda
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Linda Alvord
> Sent: Saturday, June 13, 2015 4:25 AM
> To: [email protected]
> Subject: Re: [Jprogramming] Trouble making patter for a color cube
>
> Raul, I got an error after you layout appeared.  Now that I removed that
> line, I got your six images. They are correct Now put them into your layout
> pattern so that the correct colors are joined. And make one big image with
> the correct sides joined.
>
> It still bothers me that two of the faces in my work aren't correct.  Now on
> to study your strategy.  Linda
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Linda Alvord
> Sent: Saturday, June 13, 2015 3:21 AM
> To: [email protected]
> Subject: Re: [Jprogramming] Trouble making patter for a color cube
>
> This a "Color Cube. It should print in color. And then you cut it out and
> fold it up and you have a little cube with pretty colors that will show you
> lots of things about how light makescolors. Myc cube will only have 125
> colors, but it becomes infinite in your imagination.
>
> However, I will give some thought to what you sent. This is why the forum is
> such fun. Each person tackles a problem in a different way.
>
> Linda
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of Raul Miller
> Sent: Saturday, June 13, 2015 1:00 AM
> To: Programming forum
> Subject: Re: [Jprogramming] Trouble making patter for a color cube
>
> I got a lot of squares running your script, and the one that I really liked
> was the one that was labeled 'TOP'. So I'll base my implementation on that
> one.
>
> For something as complicated as this, I think I'd like to sketch out first
> how it's supposed to look.
>
> So here's my first sketch:
> (<'BASE')(<3 1)}(<'FRONT')(<2 1)}(;:'LEFT TOP RIGHT')1}(<'BACK')(<0 1)}4
> 3$a:
>
> (beware line wrap - that's supposed to be a single line).
>
> But I also need to think about colors. After a little fiddling, I decided to
> go with this:
>
> TOP=:<,.'TOP';<2 2$;:'BLACK BLUE RED MAGENTA'
> BACK=:<,.'BACK';<2 2$;:'GREEN CYAN BLACK BLUE'
> FRONT=:<,.'FRONT';<2 2$;:'RED MAGENTA YELLOW WHITE'
> BASE=:<,.'BASE';<2 2$;:'YELLOW WHITE GREEN CYAN'
> LEFT=:<,.'LEFT';<2 2$;:'BLACK RED GREEN YELLOW'
> RIGHT=:<,.'RIGHT';<2 2$;:'MAGENTA BLUE WHITE CYAN'
>    BASE(<3 1)}FRONT(<2 1)}(LEFT,TOP,RIGHT)1}BACK(<0 1)}4 3$a:
>
> with that out of the way, all I need is a routine to render squares, the
> rest of the code almost writes itself:
>
> 'BLACK BLUE GREEN CYAN RED MAGENTA YELLOW WHITE'=:#:i.8
>
> square=:4 :0
>   'O X Y'=. y
>   colors=. <.255*O+"1,/0.25*((i.5)*/Y-"1 O)+"1/(i.5)*/X-"1 O
>   colors viewmat (i.5 5);x
> )
>
> 'BACK' square GREEN;CYAN;BLACK
> 'LEFT' square BLACK;RED;GREEN
> 'TOP' square BLACK;BLUE;RED
> 'RIGHT' square MAGENTA;BLUE;WHITE
> 'FRONT' square RED;MAGENTA;YELLOW
> 'BASE' square YELLOW;WHITE;GREEN
>
> Good enough?
>
> Thanks,
>
> --
> Raul
>
>
> On Sat, Jun 13, 2015 at 12:04 AM, Linda Alvord <[email protected]>
> wrote:
>> I am planning to begin a review of J Tech Grade 3 before introducing
>> some new topics in Grade 4. I am making a pattern which could be
>> printed and
> then
>> folded to form a color cube. It requires three dimensions for the
>> three colors of light, Green, Red and  Blue.  I have the colors
>> following the order of counting to 8 in base 2. The columns in the
>> binary array
> represent
>> Green, Red and then Blue. This insures that the falues are in order
>> from dark to light.
>>
>>
>>
>> The pattern must have six sides. All went well with the first 4 sides,
>> However the final two sides don't cooperate. I suspect there is some
> little
>> problem in viewmat. Here is my progress so far. The front and the
>> bottom
> are
>> the problems. They both involve YELLOW.
>>
>>
>>
>> As is usual I welcome ways you may know to improve what I am trying to do.
> I
>> suggest using JHS to see how this is progressing.
>>
>>
>>
>> load 'viewmat'
>>
>> N=:<.63.8*i.5
>>
>> BLACK=:9 3$0
>>
>> BLUE=:(2#"1,.(4#0),N),.N,4#255
>>
>> RED=:(N,4#255),.2#"1,.(4#0),N
>>
>> MAGENTA=:(N,4#255),.((4#0),N),.N,4#255
>>
>> GREEN=:((4#0),N),.(N,4#255),.(4#0),N
>>
>> CYAN=:((4#0),N),.2#"1 ,.N,4#255
>>
>> YELLOW=:(2#"1 ,.N,4#255) ,.(4#0),N
>>
>> WHITE=:9 3$255
>>
>> (#:i.8);'BLACK','BLUE','RED','MAGENTA','GREEN','CYAN','YELLOW',:'WHITE'
>>
>>
>>
>> A=:<.0.5*(i.5 5)+i.5 5
>>
>>
>>
>> BLANK=:25 3$255
>>
>> BACK=:25 3$,><"1 (0 1 2 3 4{GREEN)+"1/(0 1 2 3 4){BLUE
>>
>> BACK viewmat A
>>
>> (BACK,BLANK)viewmat (25+A),.|.A
>>
>>
>>
>> TOP=:25 3$,><"1 (0 1 2 3 4{RED)+"1/(0 1 2 3 4){BLUE
>>
>> TOP viewmat A;'TOP'
>>
>> LEFT=:25 3$,><"1 (0 1 2 3 4{GREEN)+"1/(0 1 2 3 4){RED
>>
>> LEFT viewmat A
>>
>> (TOP,LEFT) viewmat (25+|:|.A),.A
>>
>>
>>
>> ((TOP,LEFT) viewmat (25+|:|.A),.A),.(BACK,BLANK)viewmat (25+A),.|.A
>>
>>
>>
>> RIGHT=:R=:25 3$,><"1 P=:(8 7 6 5 4{CYAN)+"1/(8 7 6 5 4){MAGENTA
>>
>> RIGHT viewmat A
>>
>>
>>
>> FRONT=:S=:25 3$,><"1 Q=:(8 7 6 5 4{YELLOW)+"1/(8 7 6 5 4){MAGENTA
>>
>> FRONT viewmat A
>>
>>
>>
>> BOTTOM=:25 3$,><"1 (8 7 6 5 4{CYAN)+"1/(8 7 6 5 4){YELLOW
>>
>> BOTTOM viewmat A
>>
>>
>>
>> R;S
>>
>>
>>
>> I included R;S to show how close the good and the bad faces are prior
>> to using viewmat.
>>
>>
>>
>> Linda
>>
>>
>>
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to