Please try specifying another one using the -encoding option one error found というエラー
パスが、以下になっています。
which scala
/usr/local/bin/scala
ソース
import java.awt.image.BufferedImage
import java.awt.Color
/**
* マンデルブロート集合を表示する。
*/
object Mandelbrot {
/**
* 画像を作成する。
*/
def createImage(mx:Double, my:Double, zoom:Double, maxCount:Int):BufferedImage = {
var image = new BufferedImage(500, 500, BufferedImage.TYPE_3BYTE_BGR)
for (y <- 0 until image.getHeight) {
for (x <- 0 until image.getWidth) {
val cx = mx + (x-image.getWidth / 2) / zoom
val cy = my - (y-image.getHeight / 2) / zoom
val count = calcMandelbrot(cx, cy, maxCount)
if (count != -1) {
val color = Color.HSBtoRGB(count/100.0f, 1.0f, 1.0f)
image.setRGB(x, y, color)
}
else {
image.setRGB(x, y, 0) // BLACK
}
}
}
image
}
/**
* マンデルブロートの各点において、z^2 > 4 になるまでの回数を計算する。
* maxCount回を超えると-1を返す。
*/
def calcMandelbrot(cx:Double, cy:Double, maxCount:Int):Int = {
var zx = 0.0
var zy = 0.0
for (i <- 0 until maxCount) {
val sx = zx * zx
val sy = zy * zy
if ((sx + sy) >= 4.0)
return i
zy = 2.0 * zx * zy + cy
zx = sx - sy + cx
}
-1
}
}
import scala.swing.{SwingApplication,MainFrame,Label,Alignment}
import java.io.File
import javax.imageio.ImageIO
import javax.swing.ImageIcon
object MandelbrotTest extends SwingApplication {
val image = Mandelbrot.createImage(-0.745428, 0.113009, 100, 100)
// val image = Mandelbrot.createImage(-0.745428, 0.113009, 1000, 100)
// val image = Mandelbrot.createImage(-0.745428, 0.113009, 10000, 500)
// val image = Mandelbrot.createImage(-0.745428, 0.113009, 100000, 1000)
// val image = Mandelbrot.createImage(-0.745428, 0.113009, 1000000, 1000)
// val image = Mandelbrot.createImage(-0.745428, 0.113009, 10000000, 1500)
// val image = Mandelbrot.createImage(-0.745428, 0.113009, 100000000, 2000)
ImageIO.write(image, "png", new File("MandelbrotSet0.png"))
def startup(args: Array[String]) {
val top = new MainFrame {
title = "Mandelbrot Set"
iconImage = ImageIO.read(new File("MandelbrotSet250x250.png"))
contents = new Label("", new ImageIcon(image), Alignment.Center)
pack()
visible = true
}
}
}
コンパイルすると、以下のようなエラーが出ます。
scalac -encoding Shift_JIS /Users/akane/Desktop/Hello.scala
error: IO error while decoding /Users/akane/Desktop/Hello.scala with Shift_JIS: MALFORMED[1]
Please try specifying another one using the -encoding option
one error found
何を直せばいいのでしょうか?
mi editor UTF-8 LF(Mac/Unix) です。