MOS substitution: Difference between revisions

Inthar (talk | contribs)
Inthar (talk | contribs)
Line 226: Line 226:
# nX X (nY Y nZ Z) (brightness_of_filling_mos) | (nY + nZ - gcd(nY, nZ) - brightness_of_filling_mos)
# nX X (nY Y nZ Z) (brightness_of_filling_mos) | (nY + nZ - gcd(nY, nZ) - brightness_of_filling_mos)
def mos_subst(nX, nY, nZ, sizeX, sizeY, sizeZ, brightness_of_filling_mos):
def mos_subst(nX, nY, nZ, sizeX, sizeY, sizeZ, brightness_of_filling_mos):
     template_mos = mos_word(nX, nY + nZ, ["X", "W"], brightness=nX + nY + nZ - gcd(nX, nY + nZ)) # MOS word with nX X's and nY + nZ W's; X is treated as L and W as s for purposes of brightness
     template_mos = mos_word(nX, nY + nZ, "X", "W", brightness=nX + nY + nZ - gcd(nX, nY + nZ)) # MOS word with nX X's and nY + nZ W's; X is treated as L and W as s for purposes of brightness
     filling_mos = mos_word(nY, nZ, ["Y", "Z"], brightness=brightness_of_filling_mos)
     filling_mos = mos_word(nY, nZ, "Y", "Z", brightness=brightness_of_filling_mos)
     word = letterwise_subst(template_mos, "W", filling_mos)
     word = letterwise_subst(template_mos, "W", filling_mos)
     scale = subst_step_sizes(word, [sizeX, sizeY, sizeZ])
     scale = subst_step_sizes(word, [sizeX, sizeY, sizeZ])