2010-01-28 12 views
0

Je crée un graphique illustrant logiciel en Java. Dans le cadre du processus si l'équation est de forme y = Sin (x) * Cos (x)Traçage une valeur Points décimal en Java

alors dans ce cas la valeur de y est un point de valeur décimale. Mais en Java, nous sommes autorisés à tracer uniquement des points entiers. Existe-t-il un moyen de tracer des points au format décimal en utilisant n'importe quel paquet ???

L'autre stratégie qui peut être utilisé consiste à convertir la valeur décimale en valeur entière correspondante. Mais cet algorithme ne me donne pas une courbe lisse ...

Thanx à l'avance ...

+0

Quel package utilisez-vous actuellement pour faire le tracé. Il n'y a * rien * dans java qui ferait des entiers - seulement une règle de traçage difficile et rapide, mais il y a peut-être un cadre qui a cette contrainte. Personne ne peut vous aider à moins d'indiquer quel outil vous utilisez. –

+0

Pourquoi êtes-vous seulement autorisé à tracer des points entiers? –

Répondre

2

Si votre utilisation de la classe Graphics pour dessiner votre image, utilisez une classe XXXX2D plutôt que la classe XXXX avec un Graphics2D. Par exemple:

Graphics2D g=(Graphics2D)g1; 
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); 
g.draw(new Line2D.Double(1.000,1.22,78.98098,3.098)); 
(...) 
1

Je suppose que les entiers x, y pour un tracé sont les pixels auxquels ils doivent aller. Si vous ne pouvez pas obtenir une belle courbe en redimensionnant vos valeurs, pensez probablement à créer une image plus grande en mémoire (peut-être deux fois l'échelle y) et peindre dessus, puis en redimensionnant cette image dans votre interface graphique. en utilisant getScaledInstance SampleModel.getScaledInstance sur votre image mise en mémoire tampon avec l'indice SCALE_SMOOTH.

Bien que Pierre dit est peut-être mieux.

Questions connexes