
-----------------------------------
Catalyst
Sun Oct 05, 2003 1:48 am

Tree
-----------------------------------
I was bored in compsci (whole class learning put/get :lol: ) the other day
so i made this


% Tree 
proc AddGradient (c1, c2, n : int)
    var clr : int
    var r1, g1, b1, r2, g2, b2, p, p0 : real
    RGB.GetColor (c1, r1, g1, b1)
    RGB.GetColor (c2, r2, g2, b2)
    const a := 50
    for i : 1 .. n
        p := (i / n) * 100
        p0 := 100 - p
        clr := RGB.AddColor ((((r1 * p) + (r2 * p0)) / 2) / a, (((g1 * p) + (g2 * p0)) / 2) / a, (((b1 * p) + (b2 * p0)) / 2) / a)
    end for
end AddGradient

AddGradient (114, 114, 220)
AddGradient (2, 10, 35)

type Point :
    record
        x, y : real
    end record


var holdPoint : Point
holdPoint.x := 0
holdPoint.y := 0

fcn RandReal : real

    result (Rand.Real * 2 - 1) * 10
end RandReal

fcn AngleFrom (X, Y : real, dist, ang : real) : Point

    holdPoint.x := (cosd (ang) * dist) + X
    holdPoint.y := (sind (ang) * dist) + Y

    result holdPoint
end AngleFrom

var md : int := 150

var inc : real := 45
var reduc : real := 2
var numB : int := 3
proc MakeTree (X, Y : real, ang : real, dist : real)


    var test := AngleFrom (X, Y, dist, ang)

    if 511 - round (255 * dist / md) + 1 