tipos referencias que objeto metodos genericos ejemplos java scala nullpointerexception processing

referencias - excepción del puntero nulo: extensión escalar de una clase java



referencias en java (1)

Estoy jugando con el uso de Scala para mis proyectos de procesamiento.

He extendido la clase Rect desde ToxicLibs , pero recibo una excepción de puntero nulo cuando intento llamar a rect(toxi.geom.Rect r) desde dentro de un método.

import toxi.processing.ToxiclibsSupport import toxi.geom.{ Vec2D, Rect } class Scope(x: Float, y: Float, width: Float, height: Float) extends Rect(x, y, width, height) { def this(r: Rect) { this(r.x, r.y, r.width, r.height) } def draw(gfx: ToxiclibsSupport) { gfx.rect(this) // null pointer exception occurs here } }

Este es el código que llama al método de draw :

import processing.core.PApplet import toxi.processing.ToxiclibsSupport import toxi.geom.Rect class ScalaP5Test extends PApplet { var gfx = new ToxiclibsSupport(this) override def setup() { size(1000, 800) } override def draw() { var scope = new Scope(100, 200, 400, 300) scope.draw(gfx) // draw called here } }

¿algunas ideas?


Ahh, lo tengo:

class ScalaP5Test extends PApplet { var gfx = null override def setup() { gfx = ToxiclibsSupport(this) ... } ... }

Entonces puedes reutilizar la variable en otras funciones. No estoy seguro de si esa es la mejor manera, así que si tienes una mejor manera, ¡házmelo saber!