2016-10-01 66 views
0

我在func draw(_ dirtyRect:NSRect)方法中有以下代碼,但是即使應該隨機化,所有線條也使用相同顏色繪製。我讀到它可能與fps有關,但有沒有辦法如何繪製它多彩? 感謝您的任何提示。在循環中爲NSBezierPath繪製多種顏色

for y in 1...3 { 
    for x in 1...20 { 
     switch arc4random_uniform(5) { 
      case 0: 
       color = NSColor.red 
      case 1: 
       color = NSColor.purple 
      case 2: 
       color = NSColor.green 
      case 3: 
       color = NSColor.blue 
      case 4: 
       color = NSColor.yellow 
      default: 
       color = NSColor.yellow 
      } 
      point.move(to: NSPoint(x: x*10, y: y)) 
      point.line(to: NSPoint(x: x*10, y: y+100)) 
      color.setStroke() 
      point.stroke()  
    } 
} 

回答

0

最後我找到了解決辦法,或者至少解決方法 - 我把聲明的

let point = NSBezierPath() 

到內部的「X」的循環,它按預期工作。不知道這是否是最有效的解決方案,歡迎任何進一步的建議。