# Holiday Paintable Canvas Challenge

**URL:** <https://forum.inductiveautomation.com/t/holiday-paintable-canvas-challenge/112691>\
**Category:** Ignition\
**Tags:** vision\
**Created:** [December 9, 2025, 8:06am UTC](https://forum.inductiveautomation.com/t/holiday-paintable-canvas-challenge/112691 "2025-12-09T08:06:16Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![justinedwards.jle](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/justinedwards.jle/32/37854_2.png) [@justinedwards.jle](https://forum.inductiveautomation.com/u/justinedwards.jle)\
**Post date:** [December 9, 2025, 6:11pm UTC](https://forum.inductiveautomation.com/t/holiday-paintable-canvas-challenge/112691/3 "2025-12-09T18:11:08Z")

</div>

> [@paul-griffith](#):
>
> a procedurally generated tree

I've made Christmas trees before: 🙂 [Traced Christmas Tree Example](https://forum.inductiveautomation.com/t/get-all-the-vertices-from-a-general-path/100184/3)

![Traced Christmas Tree](https://us1.discourse-cdn.com/inductiveautomation/original/3X/2/c/2c482b178beb60f622645812c936d4cad91dbd7f.gif)

> [@paul-griffith](#):
>
> nerd sniping

**For more fun:**  
Add a running timer component to the window. Then, put a custom property on the canvas called `value` and bind it to the value property of the timer to drive animations in the canvas.

**Example:** _(Using the Santa repaint event code above)_  
Modify the part of the code where the eyes and pupils are drawn, so they change with the timer value:

```python
# left and right eyes
graphics.fillOval(59, 121, 24, 24)
if event.source.value % 2:
	graphics.fillOval(113, 121, 24, 24)
else:
	graphics.drawLine(113, 132, 133, 132)

# left and right pupils
graphics.color = system.gui.color('white')
graphics.fillOval(68, 126, 11, 11)
if event.source.value % 2:
	graphics.fillOval(117, 126, 11, 11)

```

**Result:**  
 ![SantaWinking](https://us1.discourse-cdn.com/inductiveautomation/original/3X/4/1/414f69b7b633ae51670f655198f9466cee8a6d38.gif)

---

_[View the full topic](https://forum.inductiveautomation.com/t/holiday-paintable-canvas-challenge/112691)._
