2016-10-01 11 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() 

во внутренний «х» петли и она работает, как ожидалось. Не уверен, что это эффективное и правильное решение для mos, поэтому любые дополнительные предложения приветствуются.

 Смежные вопросы

  • Нет связанных вопросов^_^