Domanda

Io ho esperienza nella programmazione iPhone, ma non proprio in programmazione grafica.

Ho deciso di fare un gioco 2d e scegli Quartz 2D per questo scopo (ho familiarità con Open GL, ma quarzo sembra essere più facile per un gioco 2d).

C'è un modo integrato per disegnare un grafico di una formula matematica in quarzo? Per cominciando sarà solo una parabola (y = ax ^ 2 + bx + c), ma l'equazione stessa diventerà più complessa in futuro.

Può essere piuttosto lento se attirerò la parabola usando il mio algoritmo (da linee separate o punti).

Grazie in anticipo.

È stato utile?

Soluzione

Si potrebbe calcolare alcuni campioni discreti delle equazioni che si desidera rendere.
Il grafico sarà liscia o poligonale a seconda di quanti campioni che fornisci.

questo post del blog descrive come eseguire il rendering di forme d'onda un'applicazione per Mac OS X.
Come l'autore sta usando quarzo e, probabilmente, si può adattare il suo approccio per il vostro problema.
Il post sul blog utilizza i CGPathAddLines convenienti () metodo per creare un percorso da un insieme di punti.
Se vuoi costruire il tuo pezzo per pezzo percorso, è possibile utilizzare alcuni dei seguenti metodi:

CGMutablePathRef path = CGPathCreateMutable(); 
CGPathMoveToPoint(path, ...);
CGPathAddLineToPoint(path, ...);
CGPathAddArc(path, ...);
CGPathCloseSubpath(path);

Altri suggerimenti

Cosa succede ad usare qualcosa come il CorePlot quadro?

Per tracciare un'espressione matematica arbitraria, è possibile utilizzare Graham Cox GCMathParser a prendere in un NSString contenente l'espressione e valutare l'espressione per diversi valori. È quindi possibile utilizzare Nucleo Plot (come suggerito da Jasarien) per creare un grafico della questi valori. In realtà, ho un'applicazione di esempio che fa proprio questo, che Sarò l'aggiunta al progetto al più presto.

Non c'è niente di costruito in a quarzo per questo; dovrete tracciare ogni punto individualmente con la matematica.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top