How to resolve the algorithm Barnsley fern step by step in the Visual Basic .NET programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Barnsley fern step by step in the Visual Basic .NET programming language

Table of Contents

Problem Statement

A Barnsley fern is a fractal named after British mathematician Michael Barnsley and can be created using an iterated function system (IFS).

Create this fractal fern, using the following transformations: Starting position: x = 0, y = 0

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Barnsley fern step by step in the Visual Basic .NET programming language

Source code in the visual programming language

' Barnsley Fern - 11/11/2019
Public Class BarnsleyFern

    Private Sub BarnsleyFern_Paint(sender As Object, e As PaintEventArgs) Handles Me.Paint
        Const Height = 800
        Dim x, y, xn, yn As Double
        Dim f As Double = Height / 10.6
        Dim offset_x As UInteger = Height \ 4 - Height \ 40
        Dim n, r As UInteger
        Dim Bmp As New Drawing.Bitmap(Height \ 2, Height) 'x,y
	'In Form: xPictureBox As PictureBox(800,400)
        xPictureBox.Image = Bmp
        For n = 1 To Height * 50
            r = Int(Rnd() * 100)      ' f from 0 to 99
            Select Case r
                Case 0 To 84
                    xn = 0.85 * x + 0.04 * y
                    yn = -0.04 * x + 0.85 * y + 1.6
                Case 85 To 91
                    xn = 0.2 * x - 0.26 * y
                    yn = 0.23 * x + 0.22 * y + 1.6
                Case 92 To 98
                    xn = -0.15 * x + 0.28 * y
                    yn = 0.26 * x + 0.24 * y + 0.44
                Case Else
                    xn = 0
                    yn = 0.16 * y
            End Select
            x = xn : y = yn
            Bmp.SetPixel(offset_x + x * f, Height - y * f, Color.FromArgb(0, 255, 0)) 'x,y  'r,g,b
        Next n
    End Sub 'Paint

End Class 'BarnsleyFern


  

You may also check:How to resolve the algorithm Bin given limits step by step in the C programming language
You may also check:How to resolve the algorithm Function definition step by step in the SETL programming language
You may also check:How to resolve the algorithm Solve a Hidato puzzle step by step in the Raku programming language
You may also check:How to resolve the algorithm Web scraping step by step in the Julia programming language
You may also check:How to resolve the algorithm Averages/Pythagorean means step by step in the FreeBASIC programming language