diff --git a/2019/sketch_190408a/sketch_190408a.pyde b/2019/sketch_190408a/sketch_190408a.pyde index bbf36c33..d5823d70 100644 --- a/2019/sketch_190408a/sketch_190408a.pyde +++ b/2019/sketch_190408a/sketch_190408a.pyde @@ -165,19 +165,13 @@ def glue_tab(p1, p2, tab_w, cut_ang=QUARTER_PI): edge_len = dist(p1[0], p1[1], p2[0], p2[1]) if edge_len > 2 * cut_len * cos(cut_ang): # 'normal' trapezoidal tab - beginShape() - vertex(*p1) # vertex(p1[0], p1[1]) - vertex(*f1) # vertex(f1.x, f1.y) - vertex(*f2) # vertex(f2.x, f2.y) - vertex(*p2) # vertex(p2[0], p2[1]) - endShape() + line_draw(p1, f1) + line_draw(f1, f2) + line_draw(f2, p2) else: # short triangular tab - fm = (f1 + f2) / 2 - beginShape() - vertex(*p1) # (p1[0], p1[1]) - vertex(*fm) # (fm.x, fm.y) - vertex(*p2) # (p2[0], p2[1]) - endShape() + fm = ((f1[0] + f2[0]) / 2, (f1[1] + f2[1]) / 2) + line_draw(p1, fm) + line_draw(fm, p2) def keyPressed(): global ah, bh, ch, dh, box_w, box_d, box_h diff --git a/2019/sketch_190413b/gif_exporter.py b/2019/sketch_190413b/gif_exporter.py new file mode 100644 index 00000000..51c431df --- /dev/null +++ b/2019/sketch_190413b/gif_exporter.py @@ -0,0 +1,40 @@ +""" +Alexandre B A Villares http://abav.lugaralgum.com - GPL v3 + +A helper for the Processing gifAnimation library https://github.com/extrapixel/gif-animation/tree/3.0 +Download from https://github.com/villares/processing-play/blob/master/export_GIF/unzip_and_move_to_libraries_GifAnimation.zip +This helper was inspired by an example by Art Simon https://github.com/APCSPrinciples/AnimatedGIF/ + +# add at the start of your sketch: + add_library('gifAnimation') + from gif_exporter import gif_export +# add at the end of draw(): + gif_export(GifMaker) +""" + +def gif_export(GifMaker, # gets a reference to the library + filename="exported", # .gif will be added + repeat=0, # 0 makes it an "endless" animation + quality=255, # quality range 0 - 255 + delay=200, # this is quick + frames=0, # 0 will stop on keyPressed or frameCount >= 100000 + finish=False): # force stop + global gifExporter + try: + gifExporter + except NameError: + gifExporter = GifMaker(this, filename + ".gif") + gifExporter.setRepeat(repeat) + gifExporter.setQuality(quality) + gifExporter.setDelay(delay) + + gifExporter.addFrame() + + if frames == 0: + if keyPressed and key == "e": + finish = True + + if finish: + gifExporter.finish() + print("gif saved") + exit() diff --git a/2019/sketch_190413b/i00001.png b/2019/sketch_190413b/i00001.png deleted file mode 100644 index fc3927e7..00000000 Binary files a/2019/sketch_190413b/i00001.png and /dev/null differ diff --git a/2019/sketch_190413b/i00002.png b/2019/sketch_190413b/i00002.png deleted file mode 100644 index 84704ffe..00000000 Binary files a/2019/sketch_190413b/i00002.png and /dev/null differ diff --git a/2019/sketch_190413b/i00003.png b/2019/sketch_190413b/i00003.png deleted file mode 100644 index 99cd2b4a..00000000 Binary files a/2019/sketch_190413b/i00003.png and /dev/null differ diff --git a/2019/sketch_190413b/i00004.png b/2019/sketch_190413b/i00004.png deleted file mode 100644 index 8f3004dc..00000000 Binary files a/2019/sketch_190413b/i00004.png and /dev/null differ diff --git a/2019/sketch_190413b/i00005.png b/2019/sketch_190413b/i00005.png deleted file mode 100644 index ac061bd6..00000000 Binary files a/2019/sketch_190413b/i00005.png and /dev/null differ diff --git a/2019/sketch_190413b/i00006.png b/2019/sketch_190413b/i00006.png deleted file mode 100644 index 25fb9a49..00000000 Binary files a/2019/sketch_190413b/i00006.png and /dev/null differ diff --git a/2019/sketch_190413b/i00007.png b/2019/sketch_190413b/i00007.png deleted file mode 100644 index 3373311d..00000000 Binary files a/2019/sketch_190413b/i00007.png and /dev/null differ diff --git a/2019/sketch_190413b/i00008.png b/2019/sketch_190413b/i00008.png deleted file mode 100644 index 1cd3cfac..00000000 Binary files a/2019/sketch_190413b/i00008.png and /dev/null differ diff --git a/2019/sketch_190413b/i00009.png b/2019/sketch_190413b/i00009.png deleted file mode 100644 index 89c03701..00000000 Binary files a/2019/sketch_190413b/i00009.png and /dev/null differ diff --git a/2019/sketch_190413b/i00010.png b/2019/sketch_190413b/i00010.png deleted file mode 100644 index 3ec60f9e..00000000 Binary files a/2019/sketch_190413b/i00010.png and /dev/null differ diff --git a/2019/sketch_190413b/i00011.png b/2019/sketch_190413b/i00011.png deleted file mode 100644 index 4b9c7410..00000000 Binary files a/2019/sketch_190413b/i00011.png and /dev/null differ diff --git a/2019/sketch_190413b/i00012.png b/2019/sketch_190413b/i00012.png deleted file mode 100644 index e3bf78e1..00000000 Binary files a/2019/sketch_190413b/i00012.png and /dev/null differ diff --git a/2019/sketch_190413b/i00013.png b/2019/sketch_190413b/i00013.png deleted file mode 100644 index 908a436d..00000000 Binary files a/2019/sketch_190413b/i00013.png and /dev/null differ diff --git a/2019/sketch_190413b/i00014.png b/2019/sketch_190413b/i00014.png deleted file mode 100644 index 9d915079..00000000 Binary files a/2019/sketch_190413b/i00014.png and /dev/null differ diff --git a/2019/sketch_190413b/i00015.png b/2019/sketch_190413b/i00015.png deleted file mode 100644 index 955762a5..00000000 Binary files a/2019/sketch_190413b/i00015.png and /dev/null differ diff --git a/2019/sketch_190413b/i00016.png b/2019/sketch_190413b/i00016.png deleted file mode 100644 index 11bef341..00000000 Binary files a/2019/sketch_190413b/i00016.png and /dev/null differ diff --git a/2019/sketch_190413b/i00017.png b/2019/sketch_190413b/i00017.png deleted file mode 100644 index 21621879..00000000 Binary files a/2019/sketch_190413b/i00017.png and /dev/null differ diff --git a/2019/sketch_190413b/i00018.png b/2019/sketch_190413b/i00018.png deleted file mode 100644 index 9ce7132b..00000000 Binary files a/2019/sketch_190413b/i00018.png and /dev/null differ diff --git a/2019/sketch_190413b/i00019.png b/2019/sketch_190413b/i00019.png deleted file mode 100644 index 0f4a0d32..00000000 Binary files a/2019/sketch_190413b/i00019.png and /dev/null differ diff --git a/2019/sketch_190413b/i00020.png b/2019/sketch_190413b/i00020.png deleted file mode 100644 index 514b5326..00000000 Binary files a/2019/sketch_190413b/i00020.png and /dev/null differ diff --git a/2019/sketch_190413b/i00021.png b/2019/sketch_190413b/i00021.png deleted file mode 100644 index 8ac881af..00000000 Binary files a/2019/sketch_190413b/i00021.png and /dev/null differ diff --git a/2019/sketch_190413b/i00022.png b/2019/sketch_190413b/i00022.png deleted file mode 100644 index c7d2de2c..00000000 Binary files a/2019/sketch_190413b/i00022.png and /dev/null differ diff --git a/2019/sketch_190413b/i00023.png b/2019/sketch_190413b/i00023.png deleted file mode 100644 index 8808305e..00000000 Binary files a/2019/sketch_190413b/i00023.png and /dev/null differ diff --git a/2019/sketch_190413b/i00024.png b/2019/sketch_190413b/i00024.png deleted file mode 100644 index 0aba618e..00000000 Binary files a/2019/sketch_190413b/i00024.png and /dev/null differ diff --git a/2019/sketch_190413b/i00025.png b/2019/sketch_190413b/i00025.png deleted file mode 100644 index 1fac44df..00000000 Binary files a/2019/sketch_190413b/i00025.png and /dev/null differ diff --git a/2019/sketch_190413b/i00026.png b/2019/sketch_190413b/i00026.png deleted file mode 100644 index 1a478d67..00000000 Binary files a/2019/sketch_190413b/i00026.png and /dev/null differ diff --git a/2019/sketch_190413b/i00027.png b/2019/sketch_190413b/i00027.png deleted file mode 100644 index cea99cac..00000000 Binary files a/2019/sketch_190413b/i00027.png and /dev/null differ diff --git a/2019/sketch_190413b/i00028.png b/2019/sketch_190413b/i00028.png deleted file mode 100644 index fb6e644a..00000000 Binary files a/2019/sketch_190413b/i00028.png and /dev/null differ diff --git a/2019/sketch_190413b/i00029.png b/2019/sketch_190413b/i00029.png deleted file mode 100644 index 2949c1be..00000000 Binary files a/2019/sketch_190413b/i00029.png and /dev/null differ diff --git a/2019/sketch_190413b/i00030.png b/2019/sketch_190413b/i00030.png deleted file mode 100644 index 5a8a2691..00000000 Binary files a/2019/sketch_190413b/i00030.png and /dev/null differ diff --git a/2019/sketch_190413b/i00031.png b/2019/sketch_190413b/i00031.png deleted file mode 100644 index ccb4aebe..00000000 Binary files a/2019/sketch_190413b/i00031.png and /dev/null differ diff --git a/2019/sketch_190413b/i00032.png b/2019/sketch_190413b/i00032.png deleted file mode 100644 index 49c870e6..00000000 Binary files a/2019/sketch_190413b/i00032.png and /dev/null differ diff --git a/2019/sketch_190413b/i00033.png b/2019/sketch_190413b/i00033.png deleted file mode 100644 index 9c2c9bef..00000000 Binary files a/2019/sketch_190413b/i00033.png and /dev/null differ diff --git a/2019/sketch_190413b/i00034.png b/2019/sketch_190413b/i00034.png deleted file mode 100644 index 7ad07680..00000000 Binary files a/2019/sketch_190413b/i00034.png and /dev/null differ diff --git a/2019/sketch_190413b/i00035.png b/2019/sketch_190413b/i00035.png deleted file mode 100644 index be5d65e4..00000000 Binary files a/2019/sketch_190413b/i00035.png and /dev/null differ diff --git a/2019/sketch_190413b/i00036.png b/2019/sketch_190413b/i00036.png deleted file mode 100644 index f0db0c38..00000000 Binary files a/2019/sketch_190413b/i00036.png and /dev/null differ diff --git a/2019/sketch_190413b/i00037.png b/2019/sketch_190413b/i00037.png deleted file mode 100644 index 7d7c4f87..00000000 Binary files a/2019/sketch_190413b/i00037.png and /dev/null differ diff --git a/2019/sketch_190413b/i00038.png b/2019/sketch_190413b/i00038.png deleted file mode 100644 index 1a4a1646..00000000 Binary files a/2019/sketch_190413b/i00038.png and /dev/null differ diff --git a/2019/sketch_190413b/i00039.png b/2019/sketch_190413b/i00039.png deleted file mode 100644 index 732718ac..00000000 Binary files a/2019/sketch_190413b/i00039.png and /dev/null differ diff --git a/2019/sketch_190413b/i00040.png b/2019/sketch_190413b/i00040.png deleted file mode 100644 index d248d225..00000000 Binary files a/2019/sketch_190413b/i00040.png and /dev/null differ diff --git a/2019/sketch_190413b/i00041.png b/2019/sketch_190413b/i00041.png deleted file mode 100644 index e1a9f43d..00000000 Binary files a/2019/sketch_190413b/i00041.png and /dev/null differ diff --git a/2019/sketch_190413b/i00042.png b/2019/sketch_190413b/i00042.png deleted file mode 100644 index 079f5353..00000000 Binary files a/2019/sketch_190413b/i00042.png and /dev/null differ diff --git a/2019/sketch_190413b/i00043.png b/2019/sketch_190413b/i00043.png deleted file mode 100644 index 44db5467..00000000 Binary files a/2019/sketch_190413b/i00043.png and /dev/null differ diff --git a/2019/sketch_190413b/i00044.png b/2019/sketch_190413b/i00044.png deleted file mode 100644 index 25dc6de9..00000000 Binary files a/2019/sketch_190413b/i00044.png and /dev/null differ diff --git a/2019/sketch_190413b/i00045.png b/2019/sketch_190413b/i00045.png deleted file mode 100644 index 4fc418f2..00000000 Binary files a/2019/sketch_190413b/i00045.png and /dev/null differ diff --git a/2019/sketch_190413b/i00046.png b/2019/sketch_190413b/i00046.png deleted file mode 100644 index 7ea6d92f..00000000 Binary files a/2019/sketch_190413b/i00046.png and /dev/null differ diff --git a/2019/sketch_190413b/i00047.png b/2019/sketch_190413b/i00047.png deleted file mode 100644 index 314d0ef3..00000000 Binary files a/2019/sketch_190413b/i00047.png and /dev/null differ diff --git a/2019/sketch_190413b/i00048.png b/2019/sketch_190413b/i00048.png deleted file mode 100644 index 6df3785e..00000000 Binary files a/2019/sketch_190413b/i00048.png and /dev/null differ diff --git a/2019/sketch_190413b/i00049.png b/2019/sketch_190413b/i00049.png deleted file mode 100644 index 60615991..00000000 Binary files a/2019/sketch_190413b/i00049.png and /dev/null differ diff --git a/2019/sketch_190413b/i00050.png b/2019/sketch_190413b/i00050.png deleted file mode 100644 index 5b767223..00000000 Binary files a/2019/sketch_190413b/i00050.png and /dev/null differ diff --git a/2019/sketch_190413b/i00051.png b/2019/sketch_190413b/i00051.png deleted file mode 100644 index a39d79f7..00000000 Binary files a/2019/sketch_190413b/i00051.png and /dev/null differ diff --git a/2019/sketch_190413b/i00052.png b/2019/sketch_190413b/i00052.png deleted file mode 100644 index dc1348e6..00000000 Binary files a/2019/sketch_190413b/i00052.png and /dev/null differ diff --git a/2019/sketch_190413b/i00053.png b/2019/sketch_190413b/i00053.png deleted file mode 100644 index e20a1e7c..00000000 Binary files a/2019/sketch_190413b/i00053.png and /dev/null differ diff --git a/2019/sketch_190413b/i00054.png b/2019/sketch_190413b/i00054.png deleted file mode 100644 index 5b6fcd91..00000000 Binary files a/2019/sketch_190413b/i00054.png and /dev/null differ diff --git a/2019/sketch_190413b/i00055.png b/2019/sketch_190413b/i00055.png deleted file mode 100644 index 0ee016d4..00000000 Binary files a/2019/sketch_190413b/i00055.png and /dev/null differ diff --git a/2019/sketch_190413b/i00056.png b/2019/sketch_190413b/i00056.png deleted file mode 100644 index 2085dfa2..00000000 Binary files a/2019/sketch_190413b/i00056.png and /dev/null differ diff --git a/2019/sketch_190413b/i00057.png b/2019/sketch_190413b/i00057.png deleted file mode 100644 index c3ae9639..00000000 Binary files a/2019/sketch_190413b/i00057.png and /dev/null differ diff --git a/2019/sketch_190413b/i00058.png b/2019/sketch_190413b/i00058.png deleted file mode 100644 index 468fb40e..00000000 Binary files a/2019/sketch_190413b/i00058.png and /dev/null differ diff --git a/2019/sketch_190413b/i00059.png b/2019/sketch_190413b/i00059.png deleted file mode 100644 index 89eabbdc..00000000 Binary files a/2019/sketch_190413b/i00059.png and /dev/null differ diff --git a/2019/sketch_190413b/i00060.png b/2019/sketch_190413b/i00060.png deleted file mode 100644 index 70c65e1e..00000000 Binary files a/2019/sketch_190413b/i00060.png and /dev/null differ diff --git a/2019/sketch_190413b/i00061.png b/2019/sketch_190413b/i00061.png deleted file mode 100644 index e828f131..00000000 Binary files a/2019/sketch_190413b/i00061.png and /dev/null differ diff --git a/2019/sketch_190413b/i00062.png b/2019/sketch_190413b/i00062.png deleted file mode 100644 index 9520be35..00000000 Binary files a/2019/sketch_190413b/i00062.png and /dev/null differ diff --git a/2019/sketch_190413b/i00063.png b/2019/sketch_190413b/i00063.png deleted file mode 100644 index ed3ed5b0..00000000 Binary files a/2019/sketch_190413b/i00063.png and /dev/null differ diff --git a/2019/sketch_190413b/i00064.png b/2019/sketch_190413b/i00064.png deleted file mode 100644 index 8590cdf3..00000000 Binary files a/2019/sketch_190413b/i00064.png and /dev/null differ diff --git a/2019/sketch_190413b/i00065.png b/2019/sketch_190413b/i00065.png deleted file mode 100644 index e7ebdf8e..00000000 Binary files a/2019/sketch_190413b/i00065.png and /dev/null differ diff --git a/2019/sketch_190413b/i00066.png b/2019/sketch_190413b/i00066.png deleted file mode 100644 index 31ed3c91..00000000 Binary files a/2019/sketch_190413b/i00066.png and /dev/null differ diff --git a/2019/sketch_190413b/i00067.png b/2019/sketch_190413b/i00067.png deleted file mode 100644 index 1ac12533..00000000 Binary files a/2019/sketch_190413b/i00067.png and /dev/null differ diff --git a/2019/sketch_190413b/i00068.png b/2019/sketch_190413b/i00068.png deleted file mode 100644 index 753e61a9..00000000 Binary files a/2019/sketch_190413b/i00068.png and /dev/null differ diff --git a/2019/sketch_190413b/i00069.png b/2019/sketch_190413b/i00069.png deleted file mode 100644 index 28d81e07..00000000 Binary files a/2019/sketch_190413b/i00069.png and /dev/null differ diff --git a/2019/sketch_190413b/i00070.png b/2019/sketch_190413b/i00070.png deleted file mode 100644 index d04c796f..00000000 Binary files a/2019/sketch_190413b/i00070.png and /dev/null differ diff --git a/2019/sketch_190413b/i00071.png b/2019/sketch_190413b/i00071.png deleted file mode 100644 index 5b0a59e4..00000000 Binary files a/2019/sketch_190413b/i00071.png and /dev/null differ diff --git a/2019/sketch_190413b/i00072.png b/2019/sketch_190413b/i00072.png deleted file mode 100644 index e606664c..00000000 Binary files a/2019/sketch_190413b/i00072.png and /dev/null differ diff --git a/2019/sketch_190413b/i00073.png b/2019/sketch_190413b/i00073.png deleted file mode 100644 index bcf4ead7..00000000 Binary files a/2019/sketch_190413b/i00073.png and /dev/null differ diff --git a/2019/sketch_190413b/i00074.png b/2019/sketch_190413b/i00074.png deleted file mode 100644 index d6ae4ec4..00000000 Binary files a/2019/sketch_190413b/i00074.png and /dev/null differ diff --git a/2019/sketch_190413b/i00075.png b/2019/sketch_190413b/i00075.png deleted file mode 100644 index dec5a1bb..00000000 Binary files a/2019/sketch_190413b/i00075.png and /dev/null differ diff --git a/2019/sketch_190413b/i00076.png b/2019/sketch_190413b/i00076.png deleted file mode 100644 index db1d2dc0..00000000 Binary files a/2019/sketch_190413b/i00076.png and /dev/null differ diff --git a/2019/sketch_190413b/i00077.png b/2019/sketch_190413b/i00077.png deleted file mode 100644 index f1c22abe..00000000 Binary files a/2019/sketch_190413b/i00077.png and /dev/null differ diff --git a/2019/sketch_190413b/i00078.png b/2019/sketch_190413b/i00078.png deleted file mode 100644 index b09685bc..00000000 Binary files a/2019/sketch_190413b/i00078.png and /dev/null differ diff --git a/2019/sketch_190413b/i00079.png b/2019/sketch_190413b/i00079.png deleted file mode 100644 index 82756ceb..00000000 Binary files a/2019/sketch_190413b/i00079.png and /dev/null differ diff --git a/2019/sketch_190413b/i00080.png b/2019/sketch_190413b/i00080.png deleted file mode 100644 index 8d44788a..00000000 Binary files a/2019/sketch_190413b/i00080.png and /dev/null differ diff --git a/2019/sketch_190413b/i00081.png b/2019/sketch_190413b/i00081.png deleted file mode 100644 index 9b90eb7c..00000000 Binary files a/2019/sketch_190413b/i00081.png and /dev/null differ diff --git a/2019/sketch_190413b/i00082.png b/2019/sketch_190413b/i00082.png deleted file mode 100644 index c5f4beb5..00000000 Binary files a/2019/sketch_190413b/i00082.png and /dev/null differ diff --git a/2019/sketch_190413b/i00083.png b/2019/sketch_190413b/i00083.png deleted file mode 100644 index d653fb35..00000000 Binary files a/2019/sketch_190413b/i00083.png and /dev/null differ diff --git a/2019/sketch_190413b/i00084.png b/2019/sketch_190413b/i00084.png deleted file mode 100644 index d54cfa2f..00000000 Binary files a/2019/sketch_190413b/i00084.png and /dev/null differ diff --git a/2019/sketch_190413b/i00085.png b/2019/sketch_190413b/i00085.png deleted file mode 100644 index d1d4183f..00000000 Binary files a/2019/sketch_190413b/i00085.png and /dev/null differ diff --git a/2019/sketch_190413b/i00086.png b/2019/sketch_190413b/i00086.png deleted file mode 100644 index e7f0885d..00000000 Binary files a/2019/sketch_190413b/i00086.png and /dev/null differ diff --git a/2019/sketch_190413b/i00087.png b/2019/sketch_190413b/i00087.png deleted file mode 100644 index 4d8d224e..00000000 Binary files a/2019/sketch_190413b/i00087.png and /dev/null differ diff --git a/2019/sketch_190413b/i00088.png b/2019/sketch_190413b/i00088.png deleted file mode 100644 index 2c340dcc..00000000 Binary files a/2019/sketch_190413b/i00088.png and /dev/null differ diff --git a/2019/sketch_190413b/i00089.png b/2019/sketch_190413b/i00089.png deleted file mode 100644 index df3cc077..00000000 Binary files a/2019/sketch_190413b/i00089.png and /dev/null differ diff --git a/2019/sketch_190413b/i00090.png b/2019/sketch_190413b/i00090.png deleted file mode 100644 index 2b4328e5..00000000 Binary files a/2019/sketch_190413b/i00090.png and /dev/null differ diff --git a/2019/sketch_190413b/i00091.png b/2019/sketch_190413b/i00091.png deleted file mode 100644 index 244598e2..00000000 Binary files a/2019/sketch_190413b/i00091.png and /dev/null differ diff --git a/2019/sketch_190413b/i00092.png b/2019/sketch_190413b/i00092.png deleted file mode 100644 index 59834fbe..00000000 Binary files a/2019/sketch_190413b/i00092.png and /dev/null differ diff --git a/2019/sketch_190413b/i00093.png b/2019/sketch_190413b/i00093.png deleted file mode 100644 index 08aa9d80..00000000 Binary files a/2019/sketch_190413b/i00093.png and /dev/null differ diff --git a/2019/sketch_190413b/i00094.png b/2019/sketch_190413b/i00094.png deleted file mode 100644 index c1c9964e..00000000 Binary files a/2019/sketch_190413b/i00094.png and /dev/null differ diff --git a/2019/sketch_190413b/i00095.png b/2019/sketch_190413b/i00095.png deleted file mode 100644 index fe38f16f..00000000 Binary files a/2019/sketch_190413b/i00095.png and /dev/null differ diff --git a/2019/sketch_190413b/i00096.png b/2019/sketch_190413b/i00096.png deleted file mode 100644 index abdfcc9a..00000000 Binary files a/2019/sketch_190413b/i00096.png and /dev/null differ diff --git a/2019/sketch_190413b/i00097.png b/2019/sketch_190413b/i00097.png deleted file mode 100644 index fca43687..00000000 Binary files a/2019/sketch_190413b/i00097.png and /dev/null differ diff --git a/2019/sketch_190413b/i00098.png b/2019/sketch_190413b/i00098.png deleted file mode 100644 index 6e402126..00000000 Binary files a/2019/sketch_190413b/i00098.png and /dev/null differ diff --git a/2019/sketch_190413b/i00099.png b/2019/sketch_190413b/i00099.png deleted file mode 100644 index c6a08524..00000000 Binary files a/2019/sketch_190413b/i00099.png and /dev/null differ diff --git a/2019/sketch_190413b/parts.py b/2019/sketch_190413b/parts.py new file mode 100644 index 00000000..e0ef7021 --- /dev/null +++ b/2019/sketch_190413b/parts.py @@ -0,0 +1,57 @@ + + +class Face: + + def __init__(self, points, thickness, orientation = (1, 0, 0)): + self.points = points + self.thickness = thickness + self.o = orientation + + def draw_2D(self): + fill(100, 100, 200) + draw_poly(self.points) + + def draw_3D(self, rot): + S = 35.28 + + t = self.thickness + pts = self.points + with pushMatrix(): + translate(width/2, height/2) + rotateX(self.o[0] * HALF_PI + rot) + # self.o[1] * HALF_PI, + # self.o[2] * HALF_PI) + translate(0, 0, -t/2) + fill(100, 200, 100) + draw_poly(pts) + translate(0, 0, t) + fill(100, 100, 200) + draw_poly(pts) + fill(200, 100, 100) + for p1, p2 in pairwise(tuple(pts) + (pts[0],)): + # print((p1, p2)) + beginShape(QUAD_STRIP) + vertex(p1[0]*S, p1[1]*S, 0) + vertex(p1[0]*S, p1[1]*S, -t) + vertex(p2[0]*S, p2[1]*S, 0) + vertex(p2[0]*S, p2[1]*S, -t) + endShape() + +def draw_poly(points, closed=True): + S = 35.28 + beginShape() + for p in points: + vertex(p[0]*S, p[1]*S, 0) + if closed: + endShape(CLOSE) + else: + endShape() + + +def pairwise(iterable): + import itertools + "s -> (s0,s1), (s1,s2), (s2, s3), ..." + a, b = itertools.tee(iterable) + next(b, None) + return zip(a, b) + diff --git a/2019/sketch_190413b/sketch_190413b.gif b/2019/sketch_190413b/sketch_190413b.gif new file mode 100644 index 00000000..8972e156 Binary files /dev/null and b/2019/sketch_190413b/sketch_190413b.gif differ diff --git a/2019/sketch_190413b/sketch_190413b.pyde b/2019/sketch_190413b/sketch_190413b.pyde new file mode 100644 index 00000000..84ef1584 --- /dev/null +++ b/2019/sketch_190413b/sketch_190413b.pyde @@ -0,0 +1,31 @@ +SKETCH_NAME = "sketch_190413b" + +add_library('GifAnimation') +from gif_exporter import gif_export +from parts import Face +faces = [] + +def setup(): + size(500, 500, P3D) + l4 = ((-4, -2), (-3, -2), (-3, 1), (-2, 1), (-2, -1), (-1,-1), + (-1, 1), (0, 1), (0, 2), (-1, 2), (-1, 3), (-2, 3), (-2, 2), + (-4, 2)) + faces.append(Face(l4, 20)) + l3 = ((0, -2), (3, -2), (3, -1), (2, 0), (3, 1), (3,2), + (2, 3), (1, 3), (0, 2), (2, 2), (2, 1), (1, 0), (2, -1), + (0, -1)) + faces.append(Face(l3, 20)) + +def draw(): + background(200, 210, 220) + for f in faces: + f.draw_3D(frameCount/-30.) + # f.draw_2D() + + if frameCount/30. < TWO_PI: + if frameCount % 2: + gif_export(GifMaker, filename=SKETCH_NAME) + else: + exit() + +