Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: A resource for drawing complex primitives in JavaScript (xqt2.com)
70 points by MJSplot_author on Sept 15, 2015 | hide | past | favorite | 11 comments



Do you mind if I add these to my own library? https://github.com/Lerc/whio (MIT Licence)

It's a library I use when I teach kids JavaScript. It provides simple global functions to let them get started before they have to deal with ideas such as canvas context objects.

A Wiki page showing the functions they get to use is at http://fingswotidun.com/code/index.php/API

The functions you show here are exactly the sort of thing that would be useful for beginners.


Nice, is that a LOGO programming language?


Go for it!


Is the author aware of https://developer.mozilla.org/en-US/docs/Web/API/CanvasRende...?

Use rotate(), translate(), and scale() instead of doing your own math.


Yes, but this is as simple. It's not really my maths, it's quite standard stuff.

I'm more excited about Path2D[0] becoming adopted by more browsers.

[0] https://developer.mozilla.org/en-US/docs/Web/API/Path2D


Here's a resource I made for Processing. Very similar. http://printingcode.runemadsen.com/lecture-form-2/


Nice work. Very interesting. Canvas is such a fun API.


Is it reliable to add methods to a built-in object like CanvasRenderingContext2D? I avoid it, but perhaps just out of superstition.


You're right, extending the prototype of builtin objects is almost always a bad idea.

See String.prototype.contains → String.prototype.includes because mootools extended the String prototype[1]

[1] - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...


If you know what you are doing it's fine, but it might cause incompatibility issues from namespace collisions.

You can rearrange the code to accept a context as the first argument if you are worried.


nice we need more lessons like this.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: