the joy of creating art with code
play

The Joy of Creating Art with Code. Presented by Neeraj Pandey @ - PowerPoint PPT Presentation

EUROPYTHON 2020 The Joy of Creating Art with Code. Presented by Neeraj Pandey @ NEERAJP 99 N E E R A J P A N D E Y @ NEERAJP 99 ASHOKA UNIVERSITY S o p h o m o r e s t u d e n t a t A s h o k a U n i v e


  1. EUROPYTHON 2020 The Joy of Creating Art with Code. Presented by Neeraj Pandey @ NEERAJP 99

  2. N E E R A J P A N D E Y @ NEERAJP 99 ASHOKA UNIVERSITY S o p h o m o r e s t u d e n t a t A s h o k a U n i v e r s i t y . Software Development, Generative Art, Distributed Computing and Quantitative Finance. @ NEERAJP 99

  3. POINTS FOR DISCUSSION Generative Art - Principles and Elements History behind Generative Art Intro to Processing.py Geometry, Algorithms and Randomness Examples using Processing.py @ NEERAJP 99

  4. Art created through the use of an autonomous system. AL GO RIT HM S, M ATHE M ATIC S , G E N E TIC SE QUENCES @ NEERAJP 99

  5. PRINCIPLES AND ELEMENTS Elements : color, form, line, shape, space, the randomness and the texture. Principles: rhythm, contrast, harmony, balance, movement, proportion Substrate, Jared Tarbell

  6. Created using Python mode for Processing @ NEERAJP 99

  7. Created using Python mode for Processing @ NEERAJP 99

  8. HISTORY OF GENERATIVE ART Hommage à Paul Klee - Frieder Nake, 1965

  9. One of the earliest and best-known pieces of generative art. By Georg Nees, 1968

  10. PROCESSING FOUNDATION Processing P5.js Processing.py Processing for Pi Processing for Android

  11. PROCESSING.PY @ NEERAJP 99

  12. OVERVIEW @ NEERAJP 99

  13. @ NEERAJP 99

  14. USING MATHEMATICS AND ALGORITHMS @ NEERAJP 99

  15. RANDOM Generates random floating point numbers . @ NEERAJP 99

  16. RANDOM Generates random floating point numbers . Without processing, use random module in Python. (https://docs.python.org/3/library/random.html) @ NEERAJP 99

  17. ARTIST'S CANVAS (0, 0) DRAWING A POINT We consider a 2-D cartesian plane, and each point as a vector. (X, Y) B A @ NEERAJP 99

  18. C RE AT I NG A P O I NT AN D L I NE @ NEERAJP 99

  19. Using straight lines @ NEERAJP 99

  20. Using vector operations @ NEERAJP 99

  21. CURVE VERTEX & BEZIER CURVES Curve Vertex: It specifies the vertex coordinates for curves. Bezier Curves: It is a versatile mathematical curve in vector graphics. @ NEERAJP 99

  22. C REA TI NG B EZI ER C U R VES @ NEERAJP 99

  23. USING BEZIER CURVES TO CREATE WAVES @ NEERAJP 99

  24. C REA TI NG B EZI ER C U R VES @ NEERAJP 99

  25. USING BEZIER CURVES TO CREATE WAVES @ NEERAJP 99

  26. US I N G CU R VEVE RT EX( ) @ NEERAJP 99

  27. E XAM PL E U S I NG CU R VEVER T EX( ) @ NEERAJP 99

  28. @ NEERAJP 99

  29. @ NEERAJP 99

  30. CR EAT IN G B A S I C S H APE S @ NEERAJP 99

  31. Piet Mondrian Eperiments @ NEERAJP 99

  32. USING RECTANGLE SHAPE @ NEERAJP 99

  33. @ NEERAJP 99

  34. Using Shapes @ NEERAJP 99

  35. LI NEA R I N TE R PO L AT IO N This function interpolates within the range [start..end] based on the amount parameter, where amount parameter is typically within a [0..1] range. @ NEERAJP 99

  36. E XAM PL E U S I NG L ER PC OL O R () @ NEERAJP 99

  37. @ NEERAJP 99

  38. P E RLI N NO I SE / SI MP L EX N O IS E @ NEERAJP 99

  39. P ER LI N N OI S E / S IM P L EX N O I SE Without processing, use noise module in Python. (https://pypi.org/project/noise/) @ NEERAJP 99

  40. AD D N O I SE T O T H E P I XEL C O L O R S @ NEERAJP 99

  41. @ NEERAJP 99

  42. AD D RAN D O M T O T H E P I XEL C O L O R S @ NEERAJP 99

  43. USI N G N O I SE A ND T RI G O N OM ET R Y @ NEERAJP 99

  44. USI N G N O I SE AND T R IG O N O MET R Y @ NEERAJP 99

  45. USI N G N O I SE A ND T R IG N O ME TR Y @ NEERAJP 99

  46. USI N G N O I SE A ND T RI G O N OM ET R Y @ NEERAJP 99

  47. Perlin Noise Field @ NEERAJP 99

  48. PERLIN NOISE Using Perlin Noise Field and Perlin Noise generated random noise points(grain like texture). @ NEERAJP 99

  49. P ERL IN NO I S E F I EL D @ NEERAJP 99

  50. P ERL IN NO I S E F I EL D @ NEERAJP 99

  51. PER L I N N O IS E F IE L D @ NEERAJP 99

  52. P ERL IN NO I S E F I EL D @ NEERAJP 99

  53. GEOMETRY FRACTALS CHAOS Using Geometrical patterns, fractals and chaos theory to generate aesthetic art pieces @ NEERAJP 99

  54. SIERPINSKI TRIANGLE An equilateral triangle, subdivided recursively into smaller equilateral triangles with one recursive call each time. @ NEERAJP 99

  55. Modified Sierpinski Triangle @ NEERAJP 99

  56. Fractal Flower @ NEERAJP 99

  57. Mandelbrot Set A geometrical figure where each part has the same statistical characters. Source: Wikipedia @ NEERAJP 99

  58. Julia Set @ NEERAJP 99

  59. The Logistic Map Source: Wikimedia

  60. CHAOS THEORY Deterministic, unpredictable A small change in the initial state can result in very large difference in the final outcome @ NEERAJP 99

  61. Attractors Lorenz system De Jong Attractor @ NEERAJP 99 https://examples.pyviz.org/attractors/attractors.html

  62. SIMULATING PAINT Creating oil, water color paint effeccts on our 2D/3D canvas. @ NEERAJP 99

  63. @ NEERAJP 99

  64. C RE A T E P O L YG O N, D I VI D E S I D ES @ NEERAJP 99

  65. F U N C TI O NS TO D IV I D E T H E S ID E U SIN G RA N D O M G A U SSI A N @ NEERAJP 99

  66. A DD VE RT E X T O T HE N E W S ID E S @ NEERAJP 99

  67. AD D A C US T OM R AN DO M G AU SS IA N M ET H OD @ NEERAJP 99

  68. @ NEERAJP 99

  69. Inspiration : https://tylerxhobbs.com/essays/2017/a-generative-approach-to-simulating- @ NEERAJP 99 watercolor-paints

  70. Pixel Sorting Algorithms v1.0 @ NEERAJP 99

  71. S I MP LE I M PL EM EN TA TI ON O F S O R TI N G PI X E L S @ NEERAJP 99

  72. S I MP LE I M PL EM EN TA TI ON O F S O R TI N G PI X E L S @ NEERAJP 99

  73. Pixel Sorting Algorithms v2.0 @ NEERAJP 99

  74. THANK YOU neerajp99 Code: https://bit.ly/2WDxqsC

Recommend


More recommend