{"id":1976,"date":"2023-11-13T18:04:41","date_gmt":"2023-11-13T17:04:41","guid":{"rendered":"https:\/\/hannes.enjoys.it\/blog\/?p=1976"},"modified":"2023-11-13T18:06:22","modified_gmt":"2023-11-13T17:06:22","slug":"a-klaus-schulze-inspired-animated-qgis-geometry-generator-doodle","status":"publish","type":"post","link":"https:\/\/hannes.enjoys.it\/blog\/2023\/11\/a-klaus-schulze-inspired-animated-qgis-geometry-generator-doodle\/","title":{"rendered":"A Klaus Schulze inspired, animated QGIS geometry generator doodle"},"content":{"rendered":"\n<p>Found this<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Klaus Schulze - Deus Arrakis (Official Album Teaser)\" width=\"625\" height=\"352\" src=\"https:\/\/www.youtube.com\/embed\/xyyWXHtwx0k?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Made that<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"278\" style=\"aspect-ratio: 512 \/ 278;\" width=\"512\" controls src=\"https:\/\/hannes.enjoys.it\/blog\/wp-content\/uploads\/20231113-Klaus-Schulze-Deus-Arrakis-small-qgis.webm\"><\/video><\/figure>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"800\" style=\"aspect-ratio: 880 \/ 800;\" width=\"880\" controls src=\"https:\/\/hannes.enjoys.it\/blog\/wp-content\/uploads\/20231113-Klaus-Schulze-Deus-Arrakis.webm\"><\/video><\/figure>\n\n\n\n<p>With an empty inverted polygon layer, the canvas on 0 0,<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">with_variable(\n  'line_star',\n  collect_geometries(\n    with_variable(\n      'buffered_point_array',\n      geometries_to_array(\n        nodes_to_points(  \n          buffer(make_point(0,0), distance:=100, segments:=42),\n          ignore_closing_nodes:=True\n        )\n      ),\n      array_foreach(\n        @buffered_point_array,\n        make_line(\n          @canvas_cursor_point,\n          @element\n        )\n      )\n    )\n  ),\n  with_variable(\n    'donut_line_star',\n    difference(\n      @line_star,\n      buffer(\n        @canvas_cursor_point,\n        distance:=sin(scale_linear(epoch(now())%10000\/100, 0, 100, -pi(), pi()))*30+30,  -- %10000\/100 = 0-100\n        segments:=42\n      )\n    ),\n    collect_geometries(\n      @donut_line_star,\n      intersection(\n        rotate(@donut_line_star, 1),\n        translate(\n          buffer(\n            @canvas_cursor_point, \n            distance:=sin(scale_linear(epoch(now())%10000\/100, 0, 100, -pi(), pi()))*50+50,  -- %10000\/100 = 0-100\n            segments:=42\n          ),\n          sin(scale_linear(epoch(now())%10000\/100, 0, 100, -pi(), pi())),  -- %10000\/100 = 0-100\n          0\n        )\n      )\n    )\n  )\n)<\/code><\/pre>\n\n\n\n<p>and an arrow style with feature blending.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Found this Made that With an empty inverted polygon layer, the canvas on 0 0, and an arrow style with feature blending.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[60,31,40],"tags":[],"class_list":["post-1976","post","type-post","status-publish","format-standard","hentry","category-art","category-qgis","category-small-things"],"_links":{"self":[{"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/posts\/1976","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/comments?post=1976"}],"version-history":[{"count":2,"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/posts\/1976\/revisions"}],"predecessor-version":[{"id":1980,"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/posts\/1976\/revisions\/1980"}],"wp:attachment":[{"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/media?parent=1976"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/categories?post=1976"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hannes.enjoys.it\/blog\/wp-json\/wp\/v2\/tags?post=1976"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}