Bugs

Non odiarmi

Ottavia

2022-11-09


Intro

Sto provando a rompere il codice il più possibile.

Summary errori

Ci sono problemi quando si prova a combianre diff_shapes() con altre regole. Nello specifico, se diff_shapes() è la regola applicata in orizzontale, la regola che dovrebbe essere applicata in verticale è applicata solo alla prima colonna (Sq1, Sq4, Sq7).

Viceversa, se diff_shapes() è la regola applicata in verticale, la regola che dovrebbe essere applicata in orizzontale è applicata solo sulla prima riga (Sq1, Sq2, Sq3)

Rotation

H - SI

rot_h <-apply(Raven(st1=cof(e.hexagon()),
                   hrule=c("rotation"),vrule=c("identity")))
draw(rot_h)

V - SI

rot_v <-apply(Raven(st1=cof(pentagon()),
                   hrule=c("rotation"),vrule=c("identity")))
draw(rot_v)

HV - SI ( ma viene il mal di mare)

rot_hv <-apply(Raven(st1=cof(pentagon()),
                   hrule=c("rotation"),vrule=c("rotation")))
draw(rot_hv)

Size

H - SI

s_h = apply(Raven(st1=pentagon(),
                  hrule=c("size"),
                  vrule=c("identity")))
draw(s_h)

V - SI

s_v = apply(Raven(st1=pentagon(),
                  hrule=c("identity"),
                  vrule=c("size")))
draw(s_v)

HV - SI

s_hv = apply(Raven(st1=pentagon(),
                  hrule=c("size"),
                  vrule=c("size")))
draw(s_hv)

Bordo - spessore

H - SI

lwd_h = apply(Raven(st1=circle(),
                  hrule=c("lwd"),
                  vrule=c("identity")))
draw(lwd_h)

V - SI

lwd_v = apply(Raven(st1=circle(),
                  hrule=c("identity"),
                  vrule=c("lwd")))
draw(lwd_v)

HV - SI

lwd_hv = apply(Raven(st1=circle(),
                  hrule=c("lwd"),
                  vrule=c("lwd")))
draw(lwd_hv)

Bordo - Tipo

H - SI

lty_h = apply(Raven(st1=circle(),
                  hrule=c("lty"),
                  vrule=c("identity")))
draw(lty_h)

V - SI

lty_v = apply(Raven(st1=circle(),
                  hrule=c("identity"),
                  vrule=c("lty")))
draw(lty_v)

HV - SI

lty_hv = apply(Raven(st1=circle(),
                  hrule=c("lty"),
                  vrule=c("lty")))
draw(lty_hv)

Rotation * size

HV - SI

rs_hv = apply(Raven(st1=pentagon(),
                  hrule=c("rotation"),
                  vrule=c("size")))
draw(rs_hv)

VH - SI

rs_vh = apply(Raven(st1=pentagon(),
                  hrule=c("size"),
                  vrule=c("rotation")))
draw(rs_vh)

LWD * Rotation

HV - SI

lwdr_hv = apply(Raven(st1=e.hexagon(),
                  hrule=c("lwd"),
                  vrule=c("rotation")))
draw(lwdr_hv)

VH - SI

lwdr_vh = apply(Raven(st1=e.hexagon(),
                  hrule=c("rotation"),
                  vrule=c("lwd")))
draw(lwdr_vh)

LWD * size

HV - SI

lwds_hv = apply(Raven(st1=e.hexagon(),
                  hrule=c("lwd"),
                  vrule=c("size")))
draw(lwds_hv)

VH - SI

lwds_vh = apply(Raven(st1=e.hexagon(),
                  hrule=c("size"),
                  vrule=c("lwd")))
draw(lwds_vh)

LTY * Rotation

HV - SI

ltyr_hv = apply(Raven(st1=e.hexagon(),
                  hrule=c("lty"),
                  vrule=c("rotation")))
draw(ltyr_hv)

VH - SI

ltyr_vh = apply(Raven(st1=ellipse(),
                  hrule=c("rotation"),
                  vrule=c("lty")))
draw(ltyr_vh)

lty * size

HV - SI

ltys_hv = apply(Raven(st1=e.hexagon(),
                  hrule=c("lty"),
                  vrule=c("size")))
draw(ltys_hv)

VH - SI

ltys_vh = apply(Raven(st1=triangle(),
                  hrule=c("size"),
                  vrule=c("lty")))
draw(ltys_vh)

Shapes

H - Si

#Horizontal
M<-apply(Raven(st1=cof(circle(),square(),pentagon()),hrule=c("diff_shapes"),vrule=c("identity")))
draw(M)

V - SI

#Vertical
M<-apply(Raven(st1=cof(circle(),square(),pentagon()),hrule=c("identity"),vrule=c("diff_shapes")))
draw(M)

HV - SI

# Top Left Low Right
M<-apply(Raven(st1=cof(circle(),square(),pentagon()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M)

Il problema di shapes è che non funziona con alcune delle forme

circle(), triangle(), pentagon() - SI

M<-apply(Raven(st1=cof(circle(), triangle(), pentagon()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M)

circle(), ellipse(), pentagon() - SI

M<-apply(Raven(st1=cof(circle(), ellipse(), pentagon()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M)

circle(), ellipse(), e.hexagon() - SI

M<-apply(Raven(st1=cof(circle(), ellipse(), e.hexagon()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M)

circle(), ellipse(), lily() - NO

Ma<-apply(Raven(st1=cof(circle(), ellipse(), lily()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(Ma)

circle(), ellipse(), star() - NO

Mb<-apply(Raven(st1=cof(circle(), ellipse(), star()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(Mb)

circle(), ellipse(), v.arc.left.down() - SI

M<-apply(Raven(st1=cof(circle(), ellipse(), v.arc.left.down()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M)

(v.arc.right.down(), h.arc.right.down(), v.arc.left.down() - SI

M<-apply(Raven(st1=cof(v.arc.right.down(), h.arc.right.down(), v.arc.left.down()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M)

Gli archetti funzionano tutti

s_vertical(), s_horizontal(), s_horizontal.inv() - SI

M<-apply(Raven(st1=cof(s_vertical(), s_horizontal(), s_horizontal.inv()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M)

s_vertical.inv(), s_horizontal(), s_horizontal.inv() - SI

M<-apply(Raven(st1=cof(s_vertical.inv(), s_horizontal(), s_horizontal.inv()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M)

horizontal.eight(), vertical.eight(), s_horizontal.inv()- NO

M1<-apply(Raven(st1=cof(horizontal.eight(), vertical.eight(), s_horizontal.inv()),hrule=c("diff_shapes"),vrule=c("diff_shapes")))
draw(M1)

shapes * rotation

HV - CORRETTO

Le figure cambiano per riga. La rotazione è applicata solo sulla prima colonna

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),hrule=c("diff_shapes"),vrule=c("rotation")))
draw(M)

VH - CORRETTO

Le figure cambiano per colonna. La rotazione è applicata solo sulla prima riga

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),vrule=c("diff_shapes"),hrule=c("rotation")))
draw(M)

shapes * lwd/lty

HV - CORRETTO

Le figure cambiano per riga, ma il cambio di linea è applicato solo sulla prima colonna

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),hrule=c("diff_shapes"),vrule=c("lwd")))
draw(M)

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),hrule=c("diff_shapes"),vrule=c("lty")))
draw(M)

VH - CORRETTO

Le figure cambiano per colonna, ma i contorno cambia solo sulla prima riga.

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),vrule=c("diff_shapes"),hrule=c("lwd")))
draw(M)

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),vrule=c("diff_shapes"),hrule=c("lty")))
draw(M)

shapes * size

HV - CORRETTO

Le figure cambiano per riga. La dimensione cambia solo sulla prima colonna

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),hrule=c("diff_shapes"),vrule=c("size")))
draw(M)

VH - CORRETTO

Le figure cambiano per colonna. La dimensione cambia solo sulla prima riga.

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),vrule=c("diff_shapes"),hrule=c("size")))
draw(M)

shapes * fill

HV - CORRETTO

Le figure cambiano per riga. Il riempimento cambia solo sulla prima colonna

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),hrule=c("diff_shapes"),vrule=c("fill")))
draw(M)

VH - CORRETTO

Le figure cambiano per colonna. Il rimepimento cambia solo sulla prima riga.

M<-apply(Raven(st1=cof(square(), ellipse(), triangle()),vrule=c("diff_shapes"),hrule=c("fill")))
draw(M)

Regole logiche