File:Gosper curve 3.svg

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search

Original file(SVG file, nominally 320 × 320 pixels, file size: 24 KB)

Captions

Captions

Add a one-line explanation of what this file represents

Summary[edit]

Description Gosper curve of degree 4. Created by me as a vector replacement for .
Date 17 March 2007 (original upload date)
Source Own work based on: Gosper curve 3.png
Author
Vector:
SVG development
InfoField
 
The SVG code is valid.
 
This geometry was created with perl.

Source[edit]

The SVG file is produced by the following Perl script, which is based on the Logo implementation at Gosper-Kurve.

<source lang="perl">

  1. !/bin/perl

use Math::Trig;

  1. SVG Gosper curve generator by Blotwell
  2. Released under GFDL

BEGIN{ print <<HEREDOC <?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"

   "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
   <svg xmlns="http://www.w3.org/2000/svg"
        xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve"
               width="320px" height="320px"
                        viewBox="0 0 6400 6400">

HEREDOC

}

my $x=500, $y=2500, $a=90; printf "<polyline points=\"%i,%i,",$x,$y; sub p {printf "%i,%i,",$x,$y;} sub fd {my $n=shift; $x+=$n*cos(deg2rad($a)); $y-=$n*sin(deg2rad($a)); p();} sub tl {$a+=shift;} sub rt {$a-=shift;} my $ln=100; rg(4);

sub gl {my $st=-1+shift; if ($st<0) {fd($ln);} else {tl(60); rg($st); rt(60); gl($st); gl($st); rt(120); gl($st); rt(60); rg($st); tl(120); rg($st); tl(60); gl($st);}}

sub rg {my $st=-1+shift; if ($st<0) {fd($ln);} else {rg($st); rt(60); gl($st); rt(120); gl($st); tl(60); rg($st); tl(120); rg($st); rg($st); tl(60); gl($st); rt(60);}}

END{print '" stroke="black" stroke-width="30" stroke-linejoin="round" fill-opacity="0" />',"\n</svg>\n";} }} }}

Licensing[edit]

Public domain I, the copyright holder of this work, release this work into the public domain. This applies worldwide.
In some countries this may not be legally possible; if so:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current19:10, 17 March 2007Thumbnail for version as of 19:10, 17 March 2007320 × 320 (24 KB)Blotwell (talk | contribs)Newer version with one more sig. fig. in coördinates.
06:20, 17 March 2007Thumbnail for version as of 06:20, 17 March 2007320 × 320 (19 KB)Blotwell (talk | contribs)Gosper curve of degree 4. Created by me as a vector replacement for Image:Gosper curve 3.png.

The following 2 pages use this file:

File usage on other wikis

The following other wikis use this file: