Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- open System.IO
- open System.Drawing
- type Vector = { X: int; Y: int; Z: int }
- type Sphere = { Center: Vector; Radius: int }
- let intersect v s =
- let x0, y0, z0 = float(v.X), float(v.Y), float(v.Z)
- let x1, y1, z1 = float(s.Center.X), float(s.Center.Y), float(s.Center.Z)
- sqrt(pown(x0 - x1) 2 + pown(y0 - y1) 2 + pown(z0 - z1) 2) < float(s.Radius)
- let sphere = { Center = { X = 127; Y = 127; Z = 127 }; Radius = 127 }
- let bitmap = new Bitmap(256, 256)
- for x in 0 .. 255 do
- for y in 0 .. 255 do
- for z in 0 .. 255 do
- if intersect { X = x; Y = y; Z = z } sphere then
- bitmap.SetPixel(x, y, Color.FromArgb(z, 0, 0, 255))
- bitmap.Save(Path.Combine(__SOURCE_DIRECTORY__, "bitmap.png"))
Add Comment
Please, Sign In to add comment