diff generateHelicalWheel.py @ 1:9b276485c94a draft

planemo upload commit 94b0cd1fff0826c6db3e7dc0c91c0c5a8be8bb0c
author cpt
date Mon, 05 Jun 2023 02:44:43 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/generateHelicalWheel.py	Mon Jun 05 02:44:43 2023 +0000
@@ -0,0 +1,131 @@
+##
+
+import argparse
+from plotWheels.helical_wheel import helical_wheel
+
+if __name__ == "__main__":
+    parser = argparse.ArgumentParser(description="Generate Helical Wheel")
+    parser.add_argument("--sequence", dest="sequence", type=str)
+    parser.add_argument("--seqRange", dest="seqRange", type=int, default=1)
+    parser.add_argument("--t_size", dest="t_size", type=int, default=32)
+    parser.add_argument("--rotation", dest="rotation", type=int, default=90)
+    parser.add_argument(
+        "--numbering", action="store_true", help="numbering for helical wheel"
+    )
+    parser.add_argument(
+        "--output",
+        dest="output",
+        type=argparse.FileType("wb"),
+        default="_helicalwheel.png",
+    )  # dest="output",default="_helicalwheel.png")
+    #### circle colors
+    parser.add_argument("--f_A", dest="f_A", default="#ffcc33")
+    parser.add_argument("--f_C", dest="f_C", default="#b5b5b5")
+    parser.add_argument("--f_D", dest="f_D", default="#db270f")
+    parser.add_argument("--f_E", dest="f_E", default="#db270f")
+    parser.add_argument("--f_F", dest="f_F", default="#ffcc33")
+    parser.add_argument("--f_G", dest="f_G", default="#b5b5b5")
+    parser.add_argument("--f_H", dest="f_H", default="#12d5fc")
+    parser.add_argument("--f_I", dest="f_I", default="#ffcc33")
+    parser.add_argument("--f_K", dest="f_K", default="#12d5fc")
+    parser.add_argument("--f_L", dest="f_L", default="#ffcc33")
+    parser.add_argument("--f_M", dest="f_M", default="#ffcc33")
+    parser.add_argument("--f_N", dest="f_N", default="#b5b5b5")
+    parser.add_argument("--f_P", dest="f_P", default="#ffcc33")
+    parser.add_argument("--f_Q", dest="f_Q", default="#b5b5b5")
+    parser.add_argument("--f_R", dest="f_R", default="#12d5fc")
+    parser.add_argument("--f_S", dest="f_S", default="#b5b5b5")
+    parser.add_argument("--f_T", dest="f_T", default="#b5b5b5")
+    parser.add_argument("--f_V", dest="f_V", default="#ffcc33")
+    parser.add_argument("--f_W", dest="f_W", default="#ffcc33")
+    parser.add_argument("--f_Y", dest="f_Y", default="#b5b5b5")
+    ### text colors
+    parser.add_argument("--t_A", dest="t_A", default="k")
+    parser.add_argument("--t_C", dest="t_C", default="k")
+    parser.add_argument("--t_D", dest="t_D", default="w")
+    parser.add_argument("--t_E", dest="t_E", default="w")
+    parser.add_argument("--t_F", dest="t_F", default="k")
+    parser.add_argument("--t_G", dest="t_G", default="k")
+    parser.add_argument("--t_H", dest="t_H", default="k")
+    parser.add_argument("--t_I", dest="t_I", default="k")
+    parser.add_argument("--t_K", dest="t_K", default="k")
+    parser.add_argument("--t_L", dest="t_L", default="k")
+    parser.add_argument("--t_M", dest="t_M", default="k")
+    parser.add_argument("--t_N", dest="t_N", default="k")
+    parser.add_argument("--t_P", dest="t_P", default="k")
+    parser.add_argument("--t_Q", dest="t_Q", default="k")
+    parser.add_argument("--t_R", dest="t_R", default="k")
+    parser.add_argument("--t_S", dest="t_S", default="k")
+    parser.add_argument("--t_T", dest="t_T", default="k")
+    parser.add_argument("--t_V", dest="t_V", default="k")
+    parser.add_argument("--t_W", dest="t_W", default="k")
+    parser.add_argument("--t_Y", dest="t_Y", default="k")
+
+    args = parser.parse_args()
+
+    # print(type(args.output))
+
+    f_colors = [
+        args.f_A,
+        args.f_C,
+        args.f_D,
+        args.f_E,
+        args.f_F,
+        args.f_G,
+        args.f_H,
+        args.f_I,
+        args.f_K,
+        args.f_L,
+        args.f_M,
+        args.f_N,
+        args.f_P,
+        args.f_Q,
+        args.f_R,
+        args.f_S,
+        args.f_T,
+        args.f_V,
+        args.f_W,
+        args.f_Y,
+    ]
+
+    t_colors = [
+        args.t_A,
+        args.t_C,
+        args.t_D,
+        args.t_E,
+        args.t_F,
+        args.t_G,
+        args.t_H,
+        args.t_I,
+        args.t_K,
+        args.t_L,
+        args.t_M,
+        args.t_N,
+        args.t_P,
+        args.t_Q,
+        args.t_R,
+        args.t_S,
+        args.t_T,
+        args.t_V,
+        args.t_W,
+        args.t_Y,
+    ]
+
+    colors = [f_colors, t_colors]
+
+    tmp_file = "./tmp.png"
+
+    helical_wheel(
+        sequence=args.sequence,
+        colorcoding=colors[0],
+        text_color=colors[1],
+        seqRange=args.seqRange,
+        t_size=args.t_size,
+        rot=args.rotation,
+        numbering=args.numbering,
+        filename=tmp_file,
+    )
+
+    with open("tmp.png", "rb") as f:
+        for line in f:
+            args.output.write(line)