{"action":"created","issue":{"url":"https://api.github.com/repos/mattlag/Glyphr-Studio/issues/214","labels_url":"https://api.github.com/repos/mattlag/Glyphr-Studio/issues/214/labels{/name}","comments_url":"https://api.github.com/repos/mattlag/Glyphr-Studio/issues/214/comments","events_url":"https://api.github.com/repos/mattlag/Glyphr-Studio/issues/214/events","html_url":"https://github.com/mattlag/Glyphr-Studio/issues/214","id":108325982,"number":214,"title":"paper.js","user":{"login":"gambhiro","id":1586232,"avatar_url":"https://avatars.githubusercontent.com/u/1586232?v=3","gravatar_id":"","url":"https://api.github.com/users/gambhiro","html_url":"https://github.com/gambhiro","followers_url":"https://api.github.com/users/gambhiro/followers","following_url":"https://api.github.com/users/gambhiro/following{/other_user}","gists_url":"https://api.github.com/users/gambhiro/gists{/gist_id}","starred_url":"https://api.github.com/users/gambhiro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gambhiro/subscriptions","organizations_url":"https://api.github.com/users/gambhiro/orgs","repos_url":"https://api.github.com/users/gambhiro/repos","events_url":"https://api.github.com/users/gambhiro/events{/privacy}","received_events_url":"https://api.github.com/users/gambhiro/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-09-25T13:25:47Z","updated_at":"2015-09-25T21:02:53Z","closed_at":null,"body":"By all means I am coming late to the discussions (#119, byte-foundry/prototypo#115), but now, before\r\n@mattlag's big boolean target, is perhaps a good time bring it up.\r\n\r\nWhen I noticed that I'd like to rotate a bowl for a serif `o`, I thought, hmm,\r\nlet's add the feature and keep designing. But then, when I see that I'd have to\r\nimplement the classic matrix classes and transforms, debug the whole mess I'd\r\nwrite, work out the API for it and so on, I feel very tired. I was interested in\r\npretty typefaces and now I would have to code `compsci` to continue.\r\n\r\nDo you not get this feeling?\r\n\r\nI pick up the atmosphere that you think `paper.js` would be a good thing, but it\r\nwould mean re-writing most of `Glyphr Studio` using the paper.js classes and\r\nAPI, and perhaps just thinking of that makes you feel tired.\r\n\r\nRewriting is not a bad thing! I want to help putting fire in that flame.\r\n\r\nSure, math is just math, UI is just gfx, and `paper.js` is not magic, but compsci is time consuming, and the paper.js folks have already had the headaches of growing and debugging a rich library of vector\r\ngraphics features.\r\n\r\nIf all one needed was a rotation transform, then yes, the rest of a big lib is\r\ntoo much extra. But then you need booleans, intersections, some other feature,\r\nand so on, and adding UI for it is all about vector graphics animations (if not\r\nthe bouncy-bouncy type), so `paper.js` would get well used.\r\n\r\nIt also lowers the bar and the effort needed to add new features. I mean, I'm\r\nnot very experienced in JS, but if there is lib with docs, I can write a loop or\r\ntwo and keep going, like in #124. That vision is fun, in addition to actually drawing pretty letters! Even if it is the payoff of a major backtrack and rewrite.\r\n\r\nWhat are your thoughts on this?\r\n"},"comment":{"url":"https://api.github.com/repos/mattlag/Glyphr-Studio/issues/comments/143354170","html_url":"https://github.com/mattlag/Glyphr-Studio/issues/214#issuecomment-143354170","issue_url":"https://api.github.com/repos/mattlag/Glyphr-Studio/issues/214","id":143354170,"user":{"login":"gambhiro","id":1586232,"avatar_url":"https://avatars.githubusercontent.com/u/1586232?v=3","gravatar_id":"","url":"https://api.github.com/users/gambhiro","html_url":"https://github.com/gambhiro","followers_url":"https://api.github.com/users/gambhiro/followers","following_url":"https://api.github.com/users/gambhiro/following{/other_user}","gists_url":"https://api.github.com/users/gambhiro/gists{/gist_id}","starred_url":"https://api.github.com/users/gambhiro/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gambhiro/subscriptions","organizations_url":"https://api.github.com/users/gambhiro/orgs","repos_url":"https://api.github.com/users/gambhiro/repos","events_url":"https://api.github.com/users/gambhiro/events{/privacy}","received_events_url":"https://api.github.com/users/gambhiro/received_events","type":"User","site_admin":false},"created_at":"2015-09-25T21:02:53Z","updated_at":"2015-09-25T21:02:53Z","body":"Thanks.\r\n\r\nI should have mentioned that I didn't think that this is a serious approach either, copying objects to paper.js and back was just a quick hack to see that paper.js would fit the use case like a glove.\r\n\r\nMy motivation to code is usually very purpose driven. I appreciate the purity and elegance of compsci but I don't find a lot of energy to implement it for the sake of it, so kudos to you for that.\r\n\r\nBut I enjoy scripting useful pieces into existing frameworks, things that help getting something done *better*, or add some new bag of tricks.\r\n\r\nWhen I saw for example Toche/BubbleKern for glyphsapp, or things you see in fontforge plugins and so on, I thought these would be cool to use in Glyphr.\r\n\r\nSo what this comes down to, and I suppose this is what I'd like to find out here, is if I could help to migrate / replace / rewrite the classes you have implemented in Glyphr, to the equivalent classes in paper.js.\r\n\r\nJust to the point where paper.js is drawing on the canvas and one can deal with scripting things in terms of its classes, or extensions of them. For this I will have to study Glyphr deeper, and I will probably need advice.\r\n\r\nJavascript allows such violence in it objects, I'm sure this can be organized in such a way that a neat compsci lib can grow in the app when you dig into the crazy math.\r\n\r\n> ...to come close to the nighted and abysmal secrets of the infinite and the ultimate—surely such a thing was worth the risk of one’s life, soul, and sanity!\r\n>\r\n> The Whisperer in Darkness, H.P. Lovecraft\r\n"}}