Penrose tiling: Difference between revisions
Content added Content deleted
Alextretyak (talk | contribs) (Added 11l) |
(Added FreeBasic) |
||
Line 158: | Line 158: | ||
{{out}} |
{{out}} |
||
[[Media:Penrose tiling cpp.svg]] |
[[Media:Penrose tiling cpp.svg]] |
||
=={{header|FreeBASIC}}== |
|||
{{trans|Phython}} |
|||
Not much of a FreeBASIC program: majority of this code is string literals that dumps an SVG on output. |
|||
<syntaxhighlight lang="vb">Sub penrose(depth As Integer) |
|||
Dim As String svg |
|||
svg = "<svg viewBox=""-100 -100 200 200"" xmlns=""http://www.w3.org/2000/svg"">" + !"\n" |
|||
svg &= " <defs>" + !"\n" |
|||
svg &= " <path id=""A0"" d=""M 80.90169943749474 58.778525229247315 L 0 0 100 0"" stroke=""black"" fill=""#8bc"" />" + !"\n" |
|||
svg &= " <path id=""B0"" d=""M 0 0 80.90169943749474 58.778525229247315 161.80339887498948 0"" stroke=""black"" fill=""#97e"" />" + !"\n" |
|||
For d As Integer = 0 To 5 |
|||
svg &= " <g id=""A" : svg &= (d+1) : svg &= """ transform=""translate(100, 0) scale(0.6180339887498949)"">" + !"\n" |
|||
svg += " <use href=" & """" & "#A" & d & """ transform=""rotate(108)"" />" + !"\n" |
|||
svg &= " <use href=" & """" & "#B" & d & """ transform=""scale(-1, 1)"" />" + !"\n" |
|||
svg &= " </g>" + !"\n" |
|||
svg &= " <g id=""B" & d+1 & """>" + !"\n" |
|||
svg &= " <use href=" & """" & "#A" & d+1 & """ />" + !"\n" |
|||
svg &= " <use href=" & """" & "#B" & d & """ transform=""translate(100, 0) scale(0.6180339887498949) rotate(144) translate(-80.90169943749474,-58.778525229247315)""/>" + !"\n" |
|||
svg &= " </g>" + !"\n" |
|||
Next |
|||
svg &= " <g id=""G"">" + !"\n" |
|||
svg &= " <use href=""#A6""/>" + !"\n" |
|||
svg &= " <use href=""#A6"" transform=""scale(1, -1)"" />" + !"\n" |
|||
svg &= " </g>" + !"\n" |
|||
svg &= " </defs>" + !"\n" |
|||
svg &= " <g transform=""scale(2, 2)"">" + !"\n" |
|||
svg &= " <use href=""#G"" transform=""rotate(-144)"" />" + !"\n" |
|||
svg &= " <use href=""#G"" transform=""rotate(-72)"" />" + !"\n" |
|||
svg &= " <use href=""#G"" transform=""rotate(0)"" />" + !"\n" |
|||
svg &= " <use href=""#G"" transform=""rotate(72)"" />" + !"\n" |
|||
svg &= " <use href=""#G"" transform=""rotate(144)"" />" + !"\n" |
|||
svg &= " </g>" + !"\n" |
|||
svg &= "</svg>" |
|||
Print #1, svg |
|||
End Sub |
|||
Open "Penrose_tiling.svg" For Output As #1 |
|||
penrose(6) |
|||
Close #1</syntaxhighlight> |
|||
=={{header|Go}}== |
=={{header|Go}}== |