E perchè no, visto che l’ottimizzazione non è mai troppa, ho pensato a come fare meno calcoli possibili durante gli update della cache.
Qualche variabile privata in più a livello di modulo, e i calcoli fatti solo quando quei valori cambiano (zoom) invece che ad ogni loro utilizzo.
Ora il metodo di controllo _isVisible è tornato semplice come in origine nonostante lavori in coordinate assolute.
Ciò mi ha richiesto anche una modifica lato server, ma ne è risultata un’ulteriore ottimizzazione nonché un bugfix, quindi ben venga.
Devo decidermi a procedere sull’integrazione di Facebook!