---- # sketch-a-day --- ## [2019](/sketch-a-day/) --- ## 2018 --- ![s367](2018/s367/s367.gif) 367: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s367) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s366](2018/s366/s366.gif) 366: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s366) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s365](2018/s365/s365.gif) 365: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s365) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s364](2018/s364/s364.gif) 364: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s364) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s363](2018/s363/s363.gif) 363: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s363) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s362](2018/s362/s362.gif) 362: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s362) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s361](2018/s361/s361.png) 361: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s361) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s360](2018/s360/s360.gif) 360: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s360) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s359](2018/s359/s359.png) 359: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s359) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s358](2018/s358/s358.png) 358: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s358) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ... in preparation for something... --- ![s357](2018/s357/s357.png) 357: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s357) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Back to ideas from 322... --- ![s356](2018/s356/s356.png) 356: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s356) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s355](2018/s355/s355.gif) 355: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s35) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s354](2018/s354/s354.png) 354: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s354) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s353](2018/s353/s353.png) 353: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s353) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s352](2018/s352/s352.png) 352: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s352) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s351](2018/s351/s351.png) 351: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s351) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s350](2018/s350/s350.png) 350: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s350) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s349](2018/s349/s349.png) 349: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s349) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s348](2018/s348/s348.png) 348: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s348) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s347](2018/s347/s347.png) 347: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s348) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s346](2018/s346/s346.png) 346: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s344) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s345](2018/s345/s345_15510.png) 345: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s345) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s344](2018/s344/s344.gif) 344: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s344) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s343](2018/s343/s343.gif) 343: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s343) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s342](2018/s342/s342.gif) 342: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s342) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s341](2018/s341/s341.gif) 341: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s341) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s340](2018/s340/s340.gif) 340: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s340) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s339](2018/s339/s339.gif) 339: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s339) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s338](2018/s338/11993.png) 338: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s338) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s337](2018/s337/337b.png) 337: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s337) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s336](2018/s336/s336.png) 336: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s336) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s335](2018/s335/s335.png) 335: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s335) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s334](2018/s334/s334.png) 334: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s334) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s333](2018/s333/s333.png) 333: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s333) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s332](2018/s332/s332.png) 332: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s332) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s331](2018/s331/s331.png) 331: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s331) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s330](2018/s330/s330.png) 330: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s330) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s329](2018/s329/s329.gif) 329: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s329) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s328](2018/s328/s328.png) 328: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s328) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s327](2018/s327/s327.png) 327: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s327) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s326](2018/s326/s326.png) 326: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s326) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s325](2018/s325/s325.png) 325: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s325) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s324](2018/s324/s324.png) 324: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s324) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s323](2018/s323/s323.gif) 323: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s323) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s322](2018/s322/s322.png) 322: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s322) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s321](2018/s321/s321.png) 321: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s321) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s320](2018/s320/s320.png) 320: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s320) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s319](2018/s319/s219.jpg) 319: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s319) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s318](2018/s318/s318.gif) 318: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s318) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s317](2018/s317/s317.gif) 317: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s317) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s316](2018/s316/s316.gif) 316: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s316) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] A 3D take on 314 --- ![s315](2018/s315/s315.png) 315: [GIF](2018/s315/s315.gif) [code](https://github.com/villares/sketch-a-day/tree/master/2018/s315) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Horizontaly connected 314 --- ![s314](2018/s314/s314.png) 314: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s314) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Isolating elements from 313 --- ![s313](2018/s313/s313.png) 313: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s313) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s312](2018/s312/s312s.gif) 312: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s312) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s311](2018/s311/s311.gif) 311: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s311) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s310](2018/s310/s310.gif) 310: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s310) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s309](2018/s309/s309.png) 309: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s309) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s308](2018/s308/s308.gif) 308: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s308) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s307](2018/s307/s307.png) 307: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s307) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s306](2018/s306/s306.png) 306: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s306) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s305](2018/s305/s305.png) 305: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s305) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s304](2018/s304/s304.gif) 304: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s304) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s303](2018/s303/s303.png) 303: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s303) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s302](2018/s302/s302.png) 302: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s302) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Hatches parallel to opposed sides. --- ![s301](2018/s301/s301.png) 301: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s301) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Tried to supress some vertices from the hatch grid. --- ![s300](2018/s300/s300.png) 300: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s300) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Cross hatch and, a simplified "cell" polygon drawing and selective non-random verticies (if pos % 3 == 0) --- ![s299](2018/s299/s299.png) 299: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s299) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Inclined hatches --- ![s298](2018/s298/s298.png) 298: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s298) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] First hatch attempt on a random "cell" grid. Each cell has 4 "node" vertices --- ![s297](2018/s297/s297.gif) 297: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s297) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Changed my internal point grid to "pixels" --- ![s296](2018/s296/s296.gif) 296: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s296) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Demo of how the "inside poly" test works from from my lines intersecting poly function. --- ![s295](2018/s295/s295.gif) 295: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s295) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Testing if a point is inside a poly to make a grid/retucule. Advancing from my lines intersecting poly function. --- ![s294](2018/s294/294.gif) 294: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s294) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Playing with my code for lines intersecting polygons. --- ![s293](2018/s293/s293.gif) 293: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s293) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] The polygons now are non-self-intersecting, and the hatches are kept inside :) White lines in the background are from discarded random polys that self-intersected. --- ![s292](2018/s292/s292.gif) 292: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s292) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s291](2018/s291/s291.gif) 291: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s291) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s290](2018/s290/s290.gif) 290: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s290) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s289](2018/s289/s289.gif) 289: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s289) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] True arcs and lines --- ![s288](2018/s288/s288.gif) 288: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s288) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Ellipse arcs --- ![s287](2018/s287/s287.gif) 287: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s287) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s286](2018/s286/s286.gif) 286: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s286) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s285](2018/s285/s285.gif) 285: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s285) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s284](2018/s284/s284.png) 284: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s284) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s283](2018/s283/s283.gif) 283: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s283) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s282](2018/s282/s282.gif) 282: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s282) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] First attempt at joining rectangular cells into bigger polygonal faces. --- ![s281](2018/s281/s281.gif) 281: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s281) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s280](2018/s280/s280.png) 280: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s280) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s279](2018/s279/s279.gif) 279: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s279) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s278](2018/s278/s278.png) 278: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s278) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s277](2018/s277/s277.png) 277: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s277) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s276](2018/s276/s276.png) 276: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s276) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s275](2018/s275/s275.png) 275: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s275) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s274](2018/s274/s274.png) 274: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s274) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s273](2018/s273/s273.png) 273: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s273) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] This sorts a gliph sequence from lighter to darker --- ![s272](2018/s272/s272.png) 272: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s272) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s271](2018/s271/s271.png) 271: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s271) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s270](2018/s270/s270.png) 270: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s270) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s269](2018/s269/s269.png) 269: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s269) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s268](2018/s268/s268.png) 268: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s268)[[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] & [code](https://github.com/villares/sketch-a-day/blob/master/2018/s268_pygame/s268_pygame.py)[[Pygame](https://wwwpygame.org)] --- ![s267](2018/s267/s267.png) 267: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s267) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s266](2018/s266/s266.png) 266: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s266) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s265](2018/s265/s265.png) 265: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s265) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s264](2018/s264/s264.png) 264: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s264) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s263](2018/s263/s263.png) 263: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s263) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s262](2018/s262/s262.png) 262: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s262) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s261](2018/s261/s261.png) 261: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s261) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s260](2018/s260/s260.png) 260: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s260) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s259](2018/s259/s259.png) 259: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s259) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s258](2018/s258/s258.png) 258: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s258) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s257](2018/s257/s257.png) 257: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s257) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s256](2018/s256/s256.png) 256: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s256) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s254](2018/s254/s254.png) 254: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s254) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s253](2018/s253/s253.png) 253: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s253) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s252](2018/s252/s252.png) 252: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s252) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s251](2018/s251/s251.png) 251: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s251) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s250](2018/s250/s250.png) 250: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s250) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] This was kind of a dead end. It's easy to rotate stuff with pushMatrix(), transtlate() and rotate(), but it doesn't work inside beginShape() as I found out the next day. --- ![s249](2018/s249/s249.png) 249: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s249) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s248](2018/s248/s248.png) 248: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s248) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Animation --- ![s247](2018/s247/s247.png) 247: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s247) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s246](2018/s246/s246.png) 246: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s246) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s245](2018/s245/s245.png) 245: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s245) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s244](2018/s244/s244.png) 244: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s244) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s243](2018/s243/s243.png) 243: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s243) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s242](2018/s242/s242.png) 242: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s242) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s241](2018/s241/s241.gif) 241: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s241) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s240](2018/s240/s240.gif) 240: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s240) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s239](2018/s239/s239.gif) 239: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s239) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s238](2018/s238/s238.gif) 238: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s238) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s237](2018/s237/s237.gif) 237: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s237) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s236](2018/s236/s236.gif) 236: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s236) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s235](2018/s235/s235.gif) 235: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s235) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s234](2018/s234/s234.gif) 234: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s234) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s233](2018/s233/s233.gif) 233: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s232) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s232](2018/s232/s232.png) 232: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s232) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s231](2018/s231/s231.gif) 231: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s231) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s230](2018/s230/s230.png) 230: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s230) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s229](2018/s229/s229.png) 229: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s229) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s228](2018/s228/s228.png) 228: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s228) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s227](2018/s227/s227.gif) 227: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s227) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s226](2018/s226/s226.gif) 226: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s226) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s225](2018/s225/s225.gif) 225: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s225) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Now (hollow) boxes, and a cutting-plane controlled by the keyboard. --- ![s224](2018/s224/s224.gif) 224: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s225) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Tubes! Solid boxes hollowed in one of three directions. --- ![s223](2018/s223/s223.gif) 223: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s223) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s222](2018/s222/s222.gif) 222: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s222) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s221](2018/s221/s221.gif) 221: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s221) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s220](2018/s220/s220.gif) 220: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s220) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s219](2018/s219/s219_.gif) 219: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s219) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s218](2018/s218/s218.gif) 218: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s218) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s217](2018/s217/s217.gif) 217: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s217) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s216](2018/s216/s216.gif) 216: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s216) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s215](2018/s215/s215.gif) 215: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s215) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s214](2018/s214/s214.gif) 214: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s214) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s213](2018/s213/s213.gif) 213: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s213) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s212](2018/s212/s212.gif) 212: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s211) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s211](2018/s211/s211.gif) 211: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s211) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s210](2018/s210/s210.gif) 210: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s210) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s209](2018/s209/s209.gif) 209: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s209) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s208](2018/s208/s208.png) 208: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s208) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s207](2018/s207/s207.png) 207: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s207) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s206](2018/s206/s206.png) 206: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s206) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s204](2018/s205b/s205b.gif) 205b: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s205b) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Two layer version. Added `rotateX(rot)`. --- ![s204](2018/s205/s205.gif) 205: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s205) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] One layer version, I'll use it to test some ideas another day. --- ![s204](2018/s204/s204.gif) 204: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s204) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] At each cycle, it starts on the next node. --- ![s203](2018/s203/s203.gif) 203: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s203) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] A big one, animated the maze generation process. --- ![s202](2018/s202/s202.png) 202: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s202) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] A bigger one --- ![s201](2018/s201/s201.gif) 201: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s201) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s200](2018/s200/s200.gif) 200: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s200) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s199](2018/s199/s199.gif) 199: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s199) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s198](2018/s198/s198.gif) 198: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s198) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s197](2018/s197/s197.gif) 197: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s197) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s196](2018/s196/s196.gif) 196: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s196) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s195](2018/s195/s195.gif) 195: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s195) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s194](2018/s194/s194.gif) 194: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s194) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s193](2018/s193/s193.gif) 193: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s193) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s192](2018/s192/s192_73.gif) 192: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s192) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s191](2018/s191/s191b.gif) 191: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s191) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s190](2018/s190/s190b.gif) 190: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s190) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s189](2018/s189/s189.gif) 189: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s189) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s188](2018/s188/s188.gif) 188: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s188) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s187](2018/s187/s187.gif) 187: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s187) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s186gif](2018/s186gif/s186.gif) ![s186](2018/s186/s186.png) 186: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s186) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s185](2018/s185/s185.png) 185: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s185) [[Processing Java](https://www.processing.org)] --- ![s184](2018/s184/s184.png) 184: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s184) [[Processing Java](https://www.processing.org)] --- ![s183](2018/s183/s183.png) 183: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s183) [[Processing Java](https://www.processing.org)] --- ![s182](2018/s182/s182.png) 182: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s182) [[Processing Java](https://www.processing.org)] --- ![s181](2018/s181/s181.png) 181: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s181) [[Processing Java](https://www.processing.org)] --- ![s180](2018/s180/s180.gif) ``` def set_nbs(self): self.nbs, self.unvisited_nbs = [], [] for node in Node.nodes: if node != self and dist(node.x, node.y, node.z, self.x, self.y, self.z) <= Node.spacing * 1.1: self.nbs.append(node) self.unvisited_nbs.append(node) ``` ![s180b](2018/s180/s180b.gif) ``` if node != self and dist(node.x, node.y, node.z, self.x, self.y, self.z) <= Node.spacing * 1.5: ``` 180: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s180) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s179COLOR](2018/s179/COR_s179.png) ![s179PB](2018/s179/PB_s179.png) 179: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s179) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s178](2018/s178/s178.jpg) 178: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s178) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s177](2018/s177/s177.png) 177: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s177) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s176](2018/s176/s176.png) 176: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s176) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s175](2018/s175/s175.gif) 175: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s175) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s174](2018/s174/s174.png) 174: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s174) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s173](2018/s173/s173.png) 173: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s173) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s172](2018/s172/s172.png) 172: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s172) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s171](2018/s171/s171.png) 171:[Java code](https://github.com/villares/sketch-a-day/tree/master/2018/s171)[[Processing Java](https://processing.org)] & [Python code](https://github.com/villares/sketch-a-day/tree/master/2018/s171_py) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s170](2018/s170/s170.png) 170:[code](https://github.com/villares/sketch-a-day/tree/master/2018/s170) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s169](2018/s169/s169.png) 169:[code](https://github.com/villares/sketch-a-day/tree/master/2018/s169) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Now same Z lines can form floors. ---- ![s168](2018/s168/s168.png) 168:[code](https://github.com/villares/sketch-a-day/tree/master/2018/s168) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] No random movement in Z so no line connections between different (Z) levels. Comparing lines with different Zs to create translucent 'walls'. ---- ![s167](2018/s167/s167.gif) 167: [Java code](https://github.com/villares/sketch-a-day/tree/master/2018/s167) [[Processing Java](https://processing.org)] & [Python code](https://github.com/villares/sketch-a-day/tree/master/2018/s167_py) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s166](2018/s166/s166.png) 166: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s166) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s165](2018/s165/s165.png) 165: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s165) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s164](2018/s164/s164.png) 164: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s164) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s163](2018/s163/s163.gif) 163: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s163) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] (#152 revisited in 3D :) ---- ![s162](2018/s162/s162.png) 162: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s161) [[Processing Java](https://www.processing.org)] Perlin Noise "walker" + ? ---- ![s161](2018/s161/s161.png) 161: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s161) [[Processing Java](https://www.processing.org)] Perlin Noise "walker" + eye ---- ![s160](2018/s160/s160.gif) 160: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s160) [[Processing Java](https://www.processing.org)] Interactive genetic algorithm ---- ![s159](2018/s159/s159.gif) 159: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s158) [[Processing Java](https://www.processing.org)] ---- ![s158](2018/s158/s158b.gif) 158: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s158) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s157](2018/s157/s157.gif) 157: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s156) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s156](2018/s156/s156.gif) 156: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s156) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s155](2018/s155/s155.gif) 155: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s155) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s154](2018/s154/s154.gif) 154: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s154) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s153](2018/s153/s153.gif) 153: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s153) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s152](2018/s152/s152.gif) 152: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s152) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s151](2018/s151/s151.gif) 151: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s151) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s150](2018/s150/s150.png) 150: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s150) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s149b](2018/s149b/s149b.gif) 149b: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s149b) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s149](2018/s149/s149.gif) 149: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s149) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s148](2018/s148/s148.gif) 148: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s148) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s147](2018/s147/s147.gif) 147: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s147) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s146](2018/s146/s146.gif) 146: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s146) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s145](2018/s145/s145.png) 145: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s145) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s144](2018/s144/s144.gif) 144: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s144) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s143](2018/s143/s143.png) 143: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s143) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s140 + s141 + s142](2018/s140_s141_s142/s140_s141_s142.png) 140 + 141 + 142 [code](https://github.com/villares/sketch-a-day/tree/master/2018/s140_s141_s142) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s142](2018/s142/s142.png) 142: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s142) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s141](2018/s141/s141.png) 141: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s141) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s140](2018/s140/s140.gif) s140: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s140) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s139](2018/s139/s139.gif) s139: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s139) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] --- ![s138](2018/s138/s138.png) 138: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s138) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Revisiting ideas of recursion from s071 Heavy animated GIF: [s138.gif](2018/s138/s138.gif) ---- ![s137](2018/s137/s137.png) s137: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s137) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] PDF: [diagram.pdf](2018/s137/diagram.pdf) ---- ![s136](2018/s136/s136.png) 136: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s136) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s135](2018/s135/s135.png) 135: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s135) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s134](2018/s134/s134.png) 134: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s134) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s133](2018/s133/s133.png) 133: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s133) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s132](2018/s132/s132.png) 132: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s132) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s131](2018/s131/s131.gif) 131: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s131) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s130](2018/s130/s130.gif) 130: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s130) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s129](2018/s129/s129.gif) 129: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s129) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Maybe I fixed it, I guess, not sure… ---- ![s128](2018/s128/s128.gif) 128: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s128) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] BROKEN! ---- ![s127](2018/s127/s127.gif) 127: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s127) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s126](2018/s126/s126.gif) 126: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s126) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s125](2018/s125/s125b.gif) 125: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s125) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s124](2018/s124/s124.gif) 124: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s124) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s123](2018/s123/s123.gif) 123: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s123) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s122](2018/s122/s122.gif) 122: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s122) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s121](2018/s121/s121.gif) 121: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s121) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s120](2018/s120/s120.gif) 120: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s120) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] To be brutally honest, I had no idea that reversing the second random grid would bring me this result! ---- ![s119](2018/s119/s119.gif) 119: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s119) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s118](2018/s118/s118.gif) 118: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s118) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s117](2018/s117/s117.gif) 117: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s117) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s116](2018/s116/s116.gif) 116: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s116) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s115](2018/s115/s115.gif) 115: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s115) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s114](2018/s114/s114.gif) 114: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s114) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s113](2018/s113/s113.gif) 113: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s113) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ---- ![s112](2018/s112/s112.gif) 112: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s112) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Hexagons! ​```python def hexagon(x, y, r): ​ with pushMatrix(): ​ translate(x, y) ​ beginShape() ​ for i in range(6): ​ vx = cos(i * TWO_PI /6) * r ​ vy = sin(i * TWO_PI /6) * r ​ vertex(vx, vy) ​ endShape(CLOSE) ``` ---- ![s111](2018/s111/s111.gif) 111: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s111) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Now I 'fixed' the rotation with propper pushMatrix() and translate() ​```python with pushMatrix(): translate(x0,y0) rotate(fs0) stroke(st0) equilateral(0, 0, fs0) with pushMatrix(): translate(x1,y1) rotate(fs1) stroke(st1) equilateral(0, 0, fs1) with pushMatrix(): translate(x2,y2) rotate(fs2) stroke(st2) equilateral(0, 0, fs2) ``` ---- ![s110](2018/s110/s110.gif) 110: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s110) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Just added some rotations to mess things up. It's "wrong", but I like it! ```python rotate(fs0) stroke(st0) equilateral(x0, y0, fs0) stroke(st1) rotate(fs1) equilateral(x1, y1, fs1) stroke(st2) rotate(fs2) equilateral(x2, y2, fs2) ``` ---- ![s109](2018/s109/s109.gif) 109: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s109) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ```python colorMode(HSB) ... C = color(map(final_size,-63 , 63, 0, 255), 255, 255) ``` ---- ![s108](2018/s108/s108.gif) 108: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s108) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ```python colorMode(HSB) ... C = color(map(abs(final_size), 0, 63, 0, 255), 255, 255) ``` ---- ![s107](2018/s107/s107.gif) 107: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s107) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Inverting odd rows ```python v = spac_size * 1.5 h = spac_size * sqrt(3) for ix in range(-1, grid_elem + 1): for iy in range(-1, grid_elem + 1): if iy % 2: x = ix * h + h / 4 es = elem_size else: x = ix * h - h / 4 es = -elem_size y = iy * v for i in range(3): final_size = es * (i + 0.5) C = map(final_size, 0, 63, 0, 255) oX = rand_posi * random(-1, 1) oY = rand_posi * random(-1, 1) ELEMENTS.append((C, x + oX, y + oY, final_size)) ``` ---- ![s106](2018/s106/s106.gif) 106: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s106) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Lazy triangles ```python def equilateral(x, y, r): with pushMatrix(): translate(x, y) triangle(-0.866 * r, -0.5 * r, 0.866 * r, -0.5 * r, 0.000 * r, 1.0 * r) # I know... 0 * r and 1 * r... ``` ---- ![s105](2018/s105/s105.gif) 105: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s105) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Layers now have different "base" sizes (0.5, 1.5 and 2.5 times base size). Removed lines for now. ---- ![s104](2018/s104/s104.gif) 104: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s104) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Back to stroke variation ---- ![s103](2018/s103/s103.gif) 103: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s103) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Layers but only black strokes ```python spac_size = width / (grid_elem + 1) v = spac_size * 1.5 h = spac_size * sqrt(3) for ix in range(-1, grid_elem + 1): for iy in range(-1, grid_elem + 1): if iy % 2: x = ix * h + h / 4 else: x = ix * h - h / 4 y = iy * v for i in range(3): final_size = elem_size + rand_size * random(-1, 1) ELEMENTS.append((x, y, final_size)) # three layers of elements for i in range(3): offsetX = rand_posi * random(-1, 1) offsetY = rand_posi * random(-1, 1) for elem in ELEMENTS[i::3]: x, y, es = elem ellipse(x + offsetX, y + offsetY, es, es) for _ in range(grid_elem): x1, y1, es1 = rnd_choice(ELEMENTS) x2, y2, es2 = rnd_choice(ELEMENTS) line(x1, y1, x2, y2) ``` ---- ![s102](2018/s102/s102.gif) 102: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s102) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ```python spac_size = width / (grid_elem + 1) v = spac_size * 1.5 h = spac_size * sqrt(3) for ix in range(-1, grid_elem + 1): for iy in range(-1, grid_elem + 1): if iy % 2: x = ix * h + h / 4 else: x = ix * h - h / 4 y = iy * v final_size = elem_size + rand_size * random(-1, 1) offsetX = rand_posi * random(-1, 1) offsetY = rand_posi * random(-1, 1) C = map(final_size, 0, 63, 0, 255) ELEMENTS.append((C, x + offsetX, y + offsetY, final_size )) for elem in ELEMENTS: stroke1, x1, y1, es1 = elem ellipse(x1, y1, es1, es1) for _ in range(grid_elem): stroke1, x1, y1, es1 = rnd_choice(ELEMENTS) stroke2, x2, y2, es2 = rnd_choice(ELEMENTS) stroke(stroke2) line(x1, y1, x2, y2) ``` ---- ![s101](2018/s101/s101.gif) 101: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s101) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ```python for _ in range(grid_elem * 2): stroke1, x1, y1, es1 = rnd_choice(ELEMENTS) stroke(stroke1) ellipse(x1, y1, es1, es1) stroke2, x2, y2, es2 = rnd_choice(ELEMENTS) stroke(stroke2) # line ellipse(x2, y2, es2, es2) line(x1, y1, x2, y2) ``` ---- ![s100](2018/s100/s100.gif) 100: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s100) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ```python spac_size = int(width / (grid_elem + 1)) for _ in range(2): for x in range(spac_size / 2, width, spac_size): for y in range(spac_size / 2, width, spac_size): final_size = elem_size + rand_size * random(-1, 1) offsetX = rand_posi * random(-1, 1) offsetY = rand_posi * random(-1, 1) C = map(final_size, 0, 63, 0, 255) ELEMENTS.append((C, x + offsetX, y + offsetY, final_size )) for stroke_c, x, y, el_size in ELEMENTS: stroke(stroke_c) ellipse(x, y, el_size, el_size) for _ in range(grid_elem): stroke_c, x1, y1, _ = rnd_choice(ELEMENTS) ________, x2, y2, _ = rnd_choice(ELEMENTS) stroke(stroke_c) line(x1, y1, x2, y2) ``` ---- ![s099](2018/s099/s099.gif) 099: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s099) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ```python spac_size = int(width / (grid_elem + 1)) for x in range(spac_size / 2, width, spac_size): for y in range(spac_size / 2, width, spac_size): final_size = elem_size + rand_size * random(-1, 1) offsetX = rand_posi * random(-1, 1) offsetY = rand_posi * random(-1, 1) GREY = map(final_size, 0, 63, 0, 255) stroke(GREY) ellipse(x + offsetX, # desenha um círculo y + offsetY, final_size, final_size) ``` ---- ![s098](2018/s098/s098.gif) 098: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s098) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ```python spac_size = int(width / (grid_elem + 1)) for x in range(spac_size / 2, width, spac_size): for y in range(spac_size / 2, width, spac_size): square_size = elem_size + rand_size * random(-1, 1) offsetX = rand_posi * random(-1, 1) offsetY = rand_posi * random(-1, 1) HUE = map(offsetX + offsetY, -128, 127, 0, 255) SAT = map(square_size, 0, 63, 0, 255) fill(HUE, SAT, 255, 200) rect(x + offsetX, # desenha um quadrado y + offsetY, square_size, square_size) ``` ---- ![s097](2018/s097/s097.gif) 097: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s097) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ```python spac_size = int(width / (grid_elem + 1)) for x in range(spac_size / 2, width, spac_size): for y in range(spac_size / 2, width, spac_size): # sorteia um tamanho (se o rand_size > 0) square_size = elem_size + rand_size * random(-1, 1) rect(x + rand_posi * random(-1, 1), # desenha um quadrado y + rand_posi * random(-1, 1), square_size, square_size) ``` ---- ![s096](2018/s096/s096.gif) 096: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s096) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] More 'Inputs' helper changes (WASD & arrows for sliders). New GIF export helper actually works now! More lone nodes and edge creation changes... ---- ![s095](2018/s095/s095.gif) 095: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s095) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Complete rewrite of the 'Inputs' helper ``` # Ask user for Arduino port, uses slider if none is selected, use on `setup()` global input input = Input(Arduino) # on `draw()`read analog pins 1, 2, 3, 4 or sliders pot1 = input.analog(1) pot2 = input.analog(2) pot3 = input.analog(3) pot4 = input.analog(4) tilt = input.digital(13) # also triggered by [space bar] # When on sliders, this draws them and checks mouse dragging / keystrokes input.update() ``` ---- ![s094](2018/s094/s094.gif) 094: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s094) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Connection 'rate' can be less than 1, prevents less than 2 nodes ---- ![s093](2018/s093/s093.gif) 093: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s093) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Nodes without connection are now removed ``` COM_ARESTAS = set() # para guardar pontos com aresta for aresta in Aresta.ARESTAS: if (aresta.p1 not in Ponto.SET) or (aresta.p2 not in Ponto.SET)\ or (aresta.p1 is aresta.p2): # arestas degeneradas Aresta.ARESTAS.remove(aresta) # remove a aresta else: # senão, tudo OK! aresta.desenha() # desenha a linha aresta.puxa_empurra(TAM_ARESTA) # altera a velocidade dos pontos # Adiciona ao conjunto de pontos com aresta COM_ARESTAS.update([aresta.p1, aresta.p2]) Ponto.SET = COM_ARESTAS # isto remove pontos sem nenhuma aresta ``` ---- ![s092](2018/s092/s092.gif) 092: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s092) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Dynamic change of connection rate ``` if NUM_PONTOS * NUM_CONNECT > len(Aresta.ARESTAS): rnd_choice(list(Ponto.SET)).cria_arestas() elif NUM_PONTOS * NUM_CONNECT < len(Aresta.ARESTAS): Aresta.ARESTAS.remove(rnd_choice(Aresta.ARESTAS)) ``` ---- ![s091](2018/s091/s091.gif) 091: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s091) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Major rethink of my Arduino/Firmata code. I can now choose on start between sliders and potentiometers. ---- ![s090](2018/s090/s090.gif) 090: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s090) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Opaque strokes, no fill, randomized colours by column. ---- ![s089](2018/s089/s089.gif) 089: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s089) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] X stroke now is translucent and grid elements have random colour inside grids. ---- ![s088](2018/s088/s088.gif) 088: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s088) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Filled rects, ellipses and losangles (without sktroke) and Xs ---- ![s087](2018/s087/s087.gif) 087: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s087) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] No fill again, less colours. Variable/random number of elements per grid. ---- ![s086](2018/s086/s086.gif) 086: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s086) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Translucent fill & some stroke weight ---- ![s085](2018/s085/s085.gif) 085: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s085) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Some colour, and some crazy meddling with the Slider class... ---- ![s084](2018/s084/s084.gif) 084: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s084) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Make the grid's position/origin align based on the spacing size (super- grid) ---- ![s083](2018/s083/s083.gif) 083: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s083) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Xs and rotated rectangles ---- ![s082](2018/s082/s082.gif) 082: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s082) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Squares and ellipses ---- ![s081](2018/s081/s081.gif) 081: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s081) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Let's try some grids ---- ![s080](2018/s080/s080.gif) 080: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s080) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] More arrows (black and white alternate by generation) ---- ![s079](2018/s079/s079.gif) 079: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s079) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Arrows (right black, left white) ---- ![s078](2018/s078/s078.gif) 078: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s078) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Color ---- ![s077](2018/s077/s077.gif) 077: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s077) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Random branch reduction is now less simmetric, and random seed changes on depth change. ---- ![s076](2018/s076/s076.gif) 076: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s076) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Stroke weight and some transparency ---- ![s075](2018/s075/s075.gif) 075: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s075) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ... and slightly different parameters and recursion level control instead of lenght ---- ![s074](2018/s074/s074.gif) 074: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s074) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Adaptomg Shiffmans recusive Tree, with sliders or Pots... ---- ![s073](2018/s073/s073.gif) 073: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s073) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] The code remains ugly :( ---- ![s072](2018/s072/s072.gif) 072: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s072) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Let's mix some arrows? ---- ![s071](2018/s071/s071.gif) 071: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s071) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Thicker and with a saturation slider (no more scale offset) ---- ![s070](2018/s070/s070.gif) 070: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s070) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Thicker and with a saturation slider (no more scale offset) ---- ![s069](2018/s069/s069.gif) 069: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s069) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Added rotation. ---- ![s068](2018/s068/s068.gif) 068: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s068) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] ... and with sliders (by [Peter Farell](https://github.com/hackingmath/python-sliders)) ---- ![s067](2018/s067/s067.gif) 067: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s067) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Something else. ---- ![s066](2018/s066/s066.gif) 066: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s066) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Arrow grid networks can be sized and placed... ---- ![s065](2018/s065/s065.gif) 065: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s065) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Arrow grid networks are now objects... ---- ![s064](2018/s064/s064.gif) 064: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s064) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Revisiting yet an older graph, adding arrows... ---- ![s063](2018/s063/s063.gif) 063: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s063) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Revisiting an older graph adding arrows... ---- ![s062](2018/s062/s062.gif) 062: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s062) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] `+` and `-` keys control the distange/range of targes in 0.5 * SPACING increments ---- ![s061](2018/s061/s061.gif) 061: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s061) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Sometimes we have multiple arrows now out of each node...But I reduced the range (distance) they can point to. ---- ![s060](2018/s060/s060.gif) 060: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s060) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Complete Object Oriented refactor... ---- ![s059](2018/s059/s059.gif) 059: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s059) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Back to a list of points, now every point of the grid has a node. Limited points_to random each. ---- ![s058](2018/s058/s058.gif) 058: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s058) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Now with some deepcopy of changeable imutable namedtuples (containing mutable lists), and some lerp() ---- ![s057](2018/s057/s057.gif) 057: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s057) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Revisited 54 and now I'm re-selecting random points_to nodes... ---- ![s056](2018/s056/s056.gif) 056: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s056) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Arrow grid moving in HSB colour space ---- ![s055](2018/s055/s055.png) 055: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s055) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Grid revisited ---- ![s054](2018/s054/s054.gif) 054: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s054) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] New arrows! With a "Tail" parameter... ---- ![s053](2018/s053/s053.png) 053: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s053) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Big invisible refactor (no more point-grid to select from, now a list of possible X and Y positons to choose). On the visible side, fewer elements, and non-pointing elements redrawn in red on top. ---- ![s052](2018/s052/s052.png) 052: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s052) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] White lines first, black arrows on top. ---- ![s051](2018/s051/s051.gif) 051: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s051) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Points now on a grid. ---- ![s050](2018/s050/s050.gif) 050: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s050) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Arrows now... ---- ![s049](2018/s049/s049.gif) 049: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s049) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Yet more graphs ---- ![s048](2018/s048/s048.gif) 048: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s048) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Yet more graphs ---- ![s047](2018/s047/s047.gif) 047: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s047) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Yet more graphs ---- ![s046](2018/s046/s046.png) 046: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s046) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Yet more graphs ---- ![s045](2018/s045/s045.gif) 045: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s045) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Yet more graphs ---- ![s044](2018/s044/s044.gif) 044: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s044) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] More graphs ---- ![s043](2018/s043/s043.png) 043: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s043) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] More graphs ---- ![s042](2018/s042/s042.gif) 042: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s042) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Yet another interactive recursive thingy, the image on the right is shown with a key pressed ---- ![s041](2018/s041/s041.png) 041: [code](https://github.com/villares/sketch-a-day/tree/master/2018/s041) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Yet another interactive recursive thingy, the image on the right is shown with a key pressed ---- ![040](2018/sketch_180209a/sketch_180209a.png) ![040](2018/sketch_180209a/sketch_180209a_2.png) 040: [sketch_180209a](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180209a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] More recursion ---- ![039](2018/sketch_180208e/sketch_180208e.png) 039: [sketch_180208e](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180208e) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Manoloide inspired recursion ---- ![038](2018/sketch_180208d/sketch_180208d.png) 038: [sketch_180208d](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180208d) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Saskia Freeke inspired grid ---- ![037](2018/sketch_180206a/sketch_180206a.gif) 037: [sketch_180206b](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180206a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] "Carnahacking is near!" ---- ![036](2018/sketch_180205b/sketch_180205b.png) 036: [sketch_180205b](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180205b) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Added some mouse disturbance ---- ![035](2018/sketch_180204b/sketch_180204b.gif) 035: [sketch_180204b](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180204b) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Preparing for "Carnahacking" ---- ![034](2018/sketch_180203c/sketch_180203c.gif) 034: [sketch_180203c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180203c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Like 33 but again with "w squared" circles ---- ![033](2018/sketch_180202c/sketch_180202c.png) 033: [sketch_180202c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180202c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Like 32 but again with lines ---- ![032](2018/sketch_180201c/sketch_180201c.gif) 032: [sketch_180201c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180201c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Like 29 but with moving points after the gesture is done ---- ![031](2018/sketch_180131c/sketch_180131c.gif) 031: [sketch_180130c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180131c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Like 29 but with moving points after the gesture is done ---- ![030](2018/sketch_180130c/sketch_180130c.png) 030: [sketch_180130c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180130c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Like 29 but with 3D and PeasyCam orbit... ---- ![29c](2018/sketch_180129c/sketch_180129c.gif) 029: [sketch_180129c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180129c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Like 27 but with circles ---- ![28c](2018/sketch_180128c/sketch_180128c.png) 028: [sketch_180128c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180128c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Like 27 but on grayscale ---- ![27c](2018/sketch_180127c/sketch_180127c.png) 027: [sketch_180127c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180127c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)][YouTube](https://www.youtube.com/watch?v=A-rqkru79Dw) Saving a list of points to animate colour... Mouse speed changes recorded colour & strokeWeight() ---- ![26](2018/sketch_180126c/sketch_180126c.png) 026: [sketch_180126c](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180126c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Mouse speed changing colour & strokeWeight() ---- ![25](2018/sketch_180125c/sketch_180125c.png) 025c: [sketch_180125b](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180125c) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Mouse speed changing strokeWeight() ---- ![24](2018/sketch_180124b/sketch_180124b.png) 024b: [sketch_180124b](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180124b) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Maybe tomorrow I'll try adding some sliders & movement to this graph ? [nah...] ---- ![23](2018/sketch_180123b/sketch_180123b.gif) 023b: [sketch_180123b](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180123b) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Farrel's Sliders adding random displacement ---- 022: missed :( ---- ![21b](2018/sketch_180121b/sketch_180121b.gif) 021b: [sketch_180121b](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180121b) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Playing with Peter "[Hacking Math Class](http://twitter.com/hackingmath)" Farrel's Sliders! ---- ![20b](2018/sketch_180120b/sketch_180120b.gif) 020b: [sketch_180120b](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180120b) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] I was stuck on my DBN conversion sketch 20a, so this HSB shape play is 20b... ![20a](2018/sketch_180120a/sketch_180120a.png) 020a: [sketch_180120a](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180120a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Refactored the code generation, removed most of the repeated vertices... C D E G O R not nice yet… ---- ![19a](2018/sketch_180119a/sketch_180119a.png) 019: [sketch_180119a](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180119a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] DBN Letters: Now working on a new approach, generating vertex/Shape code, not there yet... ---- ![18a](2018/sketch_180118a/sketch_180118a.png) 018: [sketch_180118a](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180118a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] DBN Color font? Nah… ---- ![17a](2018/sketch_180117a/sketch_180117a.png) 017: [sketch_180117a](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180117a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] John Maeda's `dbnletters.dbn` code from Design by Numbers on Processing Python Mode ---- ![16a](2018/sketch_180116a/sketch_180116a.png) 016: [16a](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180116a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Converting some Typography code from Design by Numbers, almost there! ---- ![15a](2018/sketch_180115a/sketch_180115a.png) 015: [sketch_180115a](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180115a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Converting some Typography code from Design by Numbers, first trials ---- ![14a](2018/sketch_180114a/sketch_180114a.png) 014: [sketch_180114a](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180114a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Another 3D Graph ---- ![13a](2018/sketch_180113a/sketch_180113a.png) 013: [s180113](https://github.com/villares/sketch-a-day/tree/master/2018/sketch_180113a) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] 3D Graph ---- ![s180112](2018/s180112/s180112.png) 012: [s180112](https://github.com/villares/sketch-a-day/tree/master/2018/s180112) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Another Graph Take ---- ![s180111](2018/s180111/s180111.png) 011: [s180111](https://github.com/villares/sketch-a-day/tree/master/2018/s180111) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] A Graph Take ---- ![s180110](2018/s180110/s180110.png) 010: [s180110](https://github.com/villares/sketch-a-day/tree/master/2018/s180110) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] More Manoloide inspired balls [PNG](2018/s180110/s180110.png) (derived from a [sketch](https://gist.github.com/manoloide/16ea9e1d68c6ba1700fcb008fd38aab0) by [Manuel Gamboa Naon](http://manoloide.com)) ---- ![GIF](2018/s180109/s180109.gif) 009: [s180109](https://github.com/villares/sketch-a-day/tree/master/2018/s180109) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Balls for Manoloide [GIF](2018/s180109/s180109.gif) (derived from a [sketch](https://gist.github.com/manoloide/16ea9e1d68c6ba1700fcb008fd38aab0) by [Manuel Gamboa Naon](http://manoloide.com)) ---- ![GIF](2018/s180108/s180108.gif) 008: [s180108](https://github.com/villares/sketch-a-day/tree/master/2018/s180108) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Grid of Platonic Solids in Python Mode [GIF](2018/s180108/s180108.gif) ---- ![GIF](2018/s180107/s180107.gif) 007: [s180107](https://github.com/villares/sketch-a-day/tree/master/2018/s180107) [[Processing Java](https://www.processing.org)] Another grid of Platonic Solids in Java Mode [GIF](2018/s180107/s180107.gif) ---- ![GIF](2018/s180106/s180106.gif) 006: [s180106](https://github.com/villares/sketch-a-day/tree/master/2018/s180106) [[Processing Java](https://www.processing.org)] Grid of Platonic Solids in Java Mode [GIF](2018/s180106/s180106.gif) ---- 005: [s180105](https://github.com/villares/sketch-a-day/tree/master/2018/s180105) [[p5js](https://www.p5js.org)] Line Tetrahedrons in p5*js - [interactive](https://villares.github.io/sketch-a-day/s180105/s180105) ---- ![GIF](2018/s180104/s180104.gif) 004: [s180104](https://github.com/villares/sketch-a-day/tree/master/2018/s180104) [[Processing Java](https://www.processing.org)] Tetrahedrons in Java Mode- [GIF](https://github.com/villares/sketch-a-day/tree/master/2018/s180104/s180104.gif) ---- ![GIF](2018/s180103/s180103.gif) 003: [s180103](https://github.com/villares/sketch-a-day/tree/master/2018/s180103) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Tetrahedrons Python Mode- [GIF](https://github.com/villares/sketch-a-day/tree/master/2018/s180103/s180103.gif) ---- 002: [s180102](https://github.com/villares/sketch-a-day/tree/master/2018/s180102) [[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Many Stars 3D - [YouTube](https://www.youtube.com/watch?v=QmsthW60iBY) ---- 001: [s180101](https://github.com/villares/sketch-a-day/tree/master/2018/s180101)[[Py.Processing](https://villares.github.io/como-instalar-o-processing-modo-python/index-EN)] Many Stars - [YouTube](https://www.youtube.com/watch?v=gKWBfghDV_w) (inspired by my own [p5js Xmas & New Year card code](https://github.com/villares/p5js-play/tree/master/newYearStars))