{"id":454,"date":"2017-11-01T23:25:00","date_gmt":"2017-11-01T16:25:00","guid":{"rendered":"http:\/\/www.oopsbox.com\/?p=454"},"modified":"2017-11-02T00:05:30","modified_gmt":"2017-11-01T17:05:30","slug":"dockerized-primitive-pictures-reproducing-images-with-vector-based-geometric-primitives","status":"publish","type":"post","link":"https:\/\/www.oopsbox.com\/?p=454","title":{"rendered":"Dockerized Primitive Pictures &#8211; Reproducing images with vector-based geometric primitives"},"content":{"rendered":"<p>\u0e21\u0e35\u0e42\u0e1b\u0e23\u0e40\u0e08\u0e04\u0e1a\u0e19 github \u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e23\u0e39\u0e1b\u0e20\u0e32\u0e1e\u0e14\u0e49\u0e27\u0e22 geometric primitives \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e43\u0e04\u0e23\u0e17\u0e35\u0e48\u0e0a\u0e2d\u0e1a\u0e23\u0e39\u0e1b\u0e20\u0e32\u0e1e\u0e41\u0e1a\u0e1a\u0e19\u0e35\u0e49\u0e08\u0e30\u0e23\u0e39\u0e49\u0e2a\u0e36\u0e01\u0e41\u0e1a\u0e1a\u0e1f\u0e34\u0e19\u0e21\u0e32\u0e01\u0e17\u0e35\u0e48\u0e21\u0e35\u0e42\u0e1b\u0e23\u0e40\u0e08\u0e04\u0e19\u0e35\u0e49\u0e02\u0e36\u0e49\u0e19\u0e21\u0e32 \u0e1b\u0e23\u0e1a\u0e21\u0e37\u0e2d\u0e43\u0e2b\u0e49\u0e40\u0e25\u0e22\u0e2b\u0e25\u0e48\u0e30\u0e01\u0e31\u0e19 ?\u00a0?\u00a0?\u00a0?\u00a0?<br \/>\n\u0e20\u0e32\u0e1e geometric primitives \u0e04\u0e37\u0e2d ? \u0e08\u0e30\u0e2d\u0e18\u0e34\u0e1a\u0e32\u0e22\u0e44\u0e07\u0e14\u0e35\u0e43\u0e2b\u0e49\u0e20\u0e32\u0e1e\u0e21\u0e31\u0e19\u0e2d\u0e18\u0e34\u0e1a\u0e32\u0e22\u0e15\u0e31\u0e27\u0e40\u0e2d\u0e07\u0e2b\u0e25\u0e48\u0e30\u0e01\u0e31\u0e19<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large\" src=\"https:\/\/camo.githubusercontent.com\/056b0d4a56457f6e98752f4ec33e7e315730bb0f\/687474703a2f2f692e696d6775722e636f6d2f48354e59704c342e706e67\" width=\"1230\" height=\"780\" \/><\/p>\n<p>\u0e23\u0e39\u0e1b\u0e43\u0e2b\u0e0d\u0e48 \u0e46 \u0e01\u0e47\u0e08\u0e30\u0e1b\u0e23\u0e30\u0e21\u0e32\u0e13\u0e19\u0e35\u0e49 \u0e2a\u0e27\u0e22\u0e43\u0e0a\u0e48\u0e44\u0e2b\u0e21\u0e25\u0e48\u0e30 ^_^<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large\" src=\"https:\/\/camo.githubusercontent.com\/caa806e8ba4c061526d87d89d334525c58c0b7af\/68747470733a2f2f7777772e6d69636861656c666f676c656d616e2e636f6d2f7374617469632f7072696d69746976652f6578616d706c65732f32393136373638333230312e706e67\" width=\"960\" height=\"636\" \/><\/p>\n<p>\u0e43\u0e04\u0e23\u0e2d\u0e22\u0e32\u0e01\u0e15\u0e32\u0e21\u0e44\u0e1b Fork \u0e01\u0e47\u0e15\u0e32\u0e21\u0e19\u0e35\u0e49\u0e40\u0e25\u0e22 <a href=\"https:\/\/github.com\/fogleman\/primitive\">https:\/\/github.com\/fogleman\/primitive\u00a0<\/a> \u0e2a\u0e48\u0e27\u0e19\u0e40\u0e23\u0e32\u0e01\u0e47\u0e21\u0e32\u0e25\u0e2d\u0e07\u0e2a\u0e23\u0e49\u0e32\u0e07 Docker \u0e01\u0e31\u0e19<\/p>\n<ol>\n<li>\u0e40\u0e23\u0e32\u0e43\u0e0a\u0e49 Image \u0e08\u0e32\u0e01 <a href=\"https:\/\/hub.docker.com\/_\/golang\/\"><span data-reactid=\".2c8hjlz9yww.2.1.1.0.0.0.0.0.0.1.0.1\">Go (golang) is a general purpose, higher-level, imperative programming language<\/span><\/a><\/li>\n<\/ol>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">FROM golang:alpine\r\nMAINTAINER M\r\nLABEL version=\"latest\"\r\n\r\nRUN apk add --no-cache git &amp;&amp; \\\r\nmkdir -p \/opt &amp;&amp; cd \/opt &amp;&amp; \\\r\ngo get -u github.com\/fogleman\/primitive\r\n\r\nVOLUME \/opt\r\nWORKDIR \/opt\r\n\r\nCMD [\"\/bin\/sh\"]<\/pre>\n<ul>\n<li>\u0e21\u0e32\u0e25\u0e2d\u0e07\u0e43\u0e0a\u0e49\u0e07\u0e32\u0e19\u0e01\u0e31\u0e19\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\">docker run -it --rm -v \/path\/data:\/opt primative:alpine primitive -i input.png -o output.png -n 100<\/pre>\n<\/li>\n<li>\u0e21\u0e32\u0e14\u0e39\u0e1c\u0e25\u0e25\u0e31\u0e1e\u0e18\u0e4c\u0e01\u0e31\u0e19<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-456\" src=\"https:\/\/www.oopsbox.com\/wp-content\/uploads\/output-1024x612.png\" alt=\"\" width=\"525\" height=\"314\" srcset=\"https:\/\/www.oopsbox.com\/wp-content\/uploads\/output-1024x612.png 1024w, https:\/\/www.oopsbox.com\/wp-content\/uploads\/output-300x179.png 300w, https:\/\/www.oopsbox.com\/wp-content\/uploads\/output-768x459.png 768w, https:\/\/www.oopsbox.com\/wp-content\/uploads\/output-2000x1200.png 2000w, https:\/\/www.oopsbox.com\/wp-content\/uploads\/output.png 2048w\" sizes=\"auto, (max-width: 525px) 100vw, 525px\" \/><\/li>\n<li>\u0e0a\u0e2d\u0e1a \u0e46 \u0e46 ????<\/li>\n<\/ul>\n<div id=\"s-share-buttons\" class=\"\"><div class=\"s-single-share\">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"fb-share-button\" data-href=\"https:\/\/www.oopsbox.com\/?p=454\" data-type=\"button_count\"><\/div><\/div><div class=\"s-single-share\"><a href=\"https:\/\/twitter.com\/share\" class=\"twitter-share-button\"><\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><div class=\"s-single-share\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"g-plusone\" data-size=\"medium\"><\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div><div class=\"s-single-share\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"\/\/www.pinterest.com\/pin\/create\/button\/\" data-pin-do=\"buttonBookmark\"  data-pin-color=\"red\"><img decoding=\"async\" src=\"\/\/assets.pinterest.com\/images\/pidgets\/pinit_fg_en_rect_red_20.png\" \/><\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<script type=\"text\/javascript\" async defer src=\"\/\/assets.pinterest.com\/js\/pinit.js\"><\/script>\n\t\t\t\t\t\t\t\t\t\t\t\t<\/div><div class=\"s-single-share\">\n\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"mailto:?Subject=Dockerized%20Primitive%20Pictures%20&#8211;%20Reproducing%20images%20with%20vector-based%20geometric%20primitives&Body=Here%20is%20the%20link%20to%20the%20article:%20https:\/\/www.oopsbox.com\/?p=454\" title=\"Email\" class=\"s3-email\"><img decoding=\"async\" src=\"https:\/\/www.oopsbox.com\/wp-content\/plugins\/simple-social-share\/includes\/..\/images\/share-email.png\"><\/a>\n\t\t\t\t\t\t\t\t\t\t\t<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>\u0e21\u0e35\u0e42\u0e1b\u0e23\u0e40\u0e08\u0e04\u0e1a\u0e19 github \u0e17\u0e35\u0e48\u0e43\u0e0a\u0e49\u0e2a\u0e23\u0e49\u0e32\u0e07\u0e23\u0e39\u0e1b\u0e20\u0e32\u0e1e\u0e14\u0e49\u0e27\u0e22 geometric primitives \u0e2a\u0e33\u0e2b\u0e23\u0e31\u0e1a\u0e43\u0e04\u0e23\u0e17\u0e35\u0e48\u0e0a\u0e2d\u0e1a\u0e23\u0e39\u0e1b\u0e20\u0e32\u0e1e\u0e41\u0e1a\u0e1a\u0e19\u0e35\u0e49\u0e08\u0e30\u0e23\u0e39\u0e49\u0e2a\u0e36\u0e01\u0e41\u0e1a\u0e1a\u0e1f\u0e34\u0e19\u0e21\u0e32\u0e01\u0e17\u0e35\u0e48\u0e21\u0e35\u0e42\u0e1b\u0e23\u0e40\u0e08\u0e04\u0e19\u0e35\u0e49\u0e02\u0e36\u0e49\u0e19\u0e21\u0e32 \u0e1b\u0e23\u0e1a\u0e21\u0e37\u0e2d\u0e43\u0e2b\u0e49\u0e40\u0e25\u0e22\u0e2b\u0e25\u0e48\u0e30\u0e01\u0e31\u0e19 ?\u00a0?\u00a0?\u00a0?\u00a0? \u0e20\u0e32\u0e1e geometric primitives \u0e04\u0e37\u0e2d ? \u0e08\u0e30\u0e2d\u0e18\u0e34\u0e1a\u0e32\u0e22\u0e44\u0e07\u0e14\u0e35\u0e43\u0e2b\u0e49\u0e20\u0e32\u0e1e\u0e21\u0e31\u0e19\u0e2d\u0e18\u0e34\u0e1a\u0e32\u0e22\u0e15\u0e31\u0e27\u0e40\u0e2d\u0e07\u0e2b\u0e25\u0e48\u0e30\u0e01\u0e31\u0e19 \u0e23\u0e39\u0e1b\u0e43\u0e2b\u0e0d\u0e48 \u0e46 \u0e01\u0e47\u0e08\u0e30\u0e1b\u0e23\u0e30\u0e21\u0e32\u0e13\u0e19\u0e35\u0e49 \u0e2a\u0e27\u0e22\u0e43\u0e0a\u0e48\u0e44\u0e2b\u0e21\u0e25\u0e48\u0e30 ^_^ \u0e43\u0e04\u0e23\u0e2d\u0e22\u0e32\u0e01\u0e15\u0e32\u0e21\u0e44\u0e1b Fork \u0e01\u0e47\u0e15\u0e32\u0e21\u0e19\u0e35\u0e49\u0e40\u0e25\u0e22 https:\/\/github.com\/fogleman\/primitive\u00a0 \u0e2a\u0e48\u0e27\u0e19\u0e40\u0e23\u0e32\u0e01\u0e47\u0e21\u0e32\u0e25\u0e2d\u0e07\u0e2a\u0e23\u0e49\u0e32\u0e07 Docker \u0e01\u0e31\u0e19 \u0e40\u0e23\u0e32\u0e43\u0e0a\u0e49 Image \u0e08\u0e32\u0e01 Go (golang) is a general purpose, higher-level, imperative programming language FROM golang:alpine MAINTAINER M LABEL version=&#8221;latest&#8221; RUN apk add &#8211;no-cache git &amp;&amp; \\ mkdir -p \/opt &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.oopsbox.com\/?p=454\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Dockerized Primitive Pictures &#8211; Reproducing images with vector-based geometric primitives&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":456,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[5],"tags":[47,48],"class_list":["post-454","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-docker","tag-geometric-primitives","entry"],"views":2593,"_links":{"self":[{"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=\/wp\/v2\/posts\/454","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=454"}],"version-history":[{"count":3,"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=\/wp\/v2\/posts\/454\/revisions"}],"predecessor-version":[{"id":458,"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=\/wp\/v2\/posts\/454\/revisions\/458"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=\/wp\/v2\/media\/456"}],"wp:attachment":[{"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=454"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=454"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.oopsbox.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=454"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}