# NaPoWriMo/GenMo2025 - Chromatic Poetry

# ChromaticPoetry\*3

For the 2nd set of  Poems for **NaPoWriMo/ NaPoGenMo 2025**, the **P5JS** code visualizes the poem in the a chromatic communication format similar to this : [https://colorscape.illestpreacha.com/poetic-communication-visualization](https://colorscape.illestpreacha.com/poetic-communication-visualization) &

For this variation, the poem structure is written three times and the images reflect the glitchiness of the sentences with each iteration.

##   
Poem

```ocaml
Wishing Upon Stars
That Reaches Beyond
Under, Over, Around
Near and Far
Widening Through Process
Promoting New Context

Waiting Uses Spots
That Rounded Banana
Utter Only Aligns
Neat are Fad
Whisper, Thought Plaited 
Pressure, Not Contact

Wasting Udon Speak
Tons Rushing Booked
Usurp over Bellow
Next ask Fad
Winnings Thinned Placing
Paintings Neo Context
```

## Images

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1743710880222/0735d271-916a-45ab-89e3-6dd023a4001a.png align="center")

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1743710884666/1891386e-5e53-4d7c-a235-5fe303ede772.png align="center")

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1743710891348/1b511527-f850-4b82-af51-917e22c12123.png align="center")

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1743710896030/202d6efc-e94d-47f3-b265-8d02bdfdb0a8.png align="center")

## Code Snippet

```javascript
function setup() {

  createCanvas(800, 800);
    background('black')
color_dictionary={ 
  

"A": color(140, 156, 93),
"B": color(246, 166, 0),
"C": color(86, 160, 211),
"D":color(167, 13, 42),
"E": color(35, 18, 11),
"F": color(181, 51, 137),
"G": color(228, 163, 0),
"H":color(0, 150, 214),
"I": color(180, 216, 231),
"J": color(248, 222, 126),
"K": color(62, 81, 132),
"L":color(248, 221, 92),
"M":color(246, 96, 171),
"N": color(42, 128, 0),
"O": color(72, 191, 145),
"P": color(0, 166, 147),
//"P": color(255,177,129),
"Q": color(0, 109, 117),
"R":color(247, 86, 96),
"S": color(250, 128, 114),
"T": color(255, 204, 0),
"U": color(147, 149, 151),
"V": color(243, 229, 171),
"W": color(114, 47, 55),
"X": color(245, 166, 160),
"Y": color(246, 227, 180),
"Z": color(110, 76, 65),
};
}

/*

Wishing Upon Stars
That Reaches Beyond
Under, Over, Around
Near and Far
Widening Through Process
Promoting New Context

Waiting Uses Spots
That Rounded Banana
Utter Only Aligns
Neat are Fad
Whisper, Thought Plaited 
Pressure, Not Contact

Wasting Udon Speak
Tons Rushing Booked
Usurp over Bellow
Next ask Fad
Winnings Thinned Placing
Paintings Neo Context

*/

//amount of characters and starting characters array
chr = [7, 4, 5, 4, 7, 6, 6, 5, 6, 4, 3, 4, 8, 7, 7, 9, 3, 7]
startChr = [['W', 'U', 'S'], ['T', 'R', 'B'], ['U', 'O', 'A'], ['N', 'A', 'F'], ['W', 'T', 'P'], ['P', 'N', 'C']]

function draw() {

  //first triplet
  testrun(color_dictionary[startChr[0][0].toUpperCase()],1, chr[0],1);
  testrun(color_dictionary[startChr[0][1].toUpperCase()],2, chr[1],1);
  testrun(color_dictionary[startChr[0][2].toUpperCase()] ,3, chr[2],1);
  
  //Second Triplet
  testrun(color_dictionary[startChr[1][0].toUpperCase()],4, chr[3],1);
  testrun(color_dictionary[startChr[1][1].toUpperCase()],5, chr[4],1);
  testrun(color_dictionary[startChr[1][2].toUpperCase()],6, chr[5],1);
  
  
  testrun(color_dictionary[startChr[2][0].toUpperCase()],12, chr[6],1);
  testrun(color_dictionary[startChr[2][1].toUpperCase()],13, chr[7],1);
  testrun(color_dictionary[startChr[2][2].toUpperCase()],14, chr[8],1);
  
  
  //poem 2
  testrun2(color_dictionary[startChr[3][0].toUpperCase()],15,chr[9],1);
  testrun2(color_dictionary[startChr[3][1].toUpperCase()],16,chr[10],1);
  testrun2(color_dictionary[startChr[3][2].toUpperCase()],17,chr[11],1);
  
  
  testrun2(color_dictionary[startChr[4][0].toUpperCase()],23 ,chr[12],1);
  testrun2(color_dictionary[startChr[4][1].toUpperCase()],24, chr[13],1);
  testrun2(color_dictionary[startChr[4][2].toUpperCase()],25,chr[14],1);
  
  testrun2(color_dictionary[startChr[5][0].toUpperCase()],26,chr[15],1);
  testrun2(color_dictionary[startChr[5][1].toUpperCase()],27,chr[16],1);
  testrun2(color_dictionary[startChr[5][2].toUpperCase()] ,28,chr[17],1);
  
  
  

}

// color it through
function testrun(x,z,y,a)

{
  fill(x)
  stroke("white")
  while (y > 0)
  {
  square(50*a + 15*y,15 * z,15,15);
    y = y - 1
  }

}


// color it through
function testrun2(x,z,y,a)

{
  fill(x)
  stroke("white")
  while (y > 0)
  {
  square(50*a + 15*y,15 * z,15,15);
    y = y - 1
  }

}
```
