2011-04-16 2 views
1

J'essaye de coder une application qui crée un filtre de sphériser sur un jpeg. J'ai lutté pendant un certain temps avec le code Java qui fait de la distorsion due à bufferedimage n'étant pas pris en charge sur Android. J'ai été donné this lien qui donne une distorsion fisheye écrite en C#. Je considère le portage de ce code à Android en utilisant le ndk. Je suis this lien pour configurer le ndk. ma question est le code que je voudrais utiliser est écrit en C# alors que le lien ci-dessus sur la façon de configurer le ndk donne des exemples écrits en C++/c. est-ce un problème? Fondamentalement ce que je demande est si je mets en place ma machine dev avec le deuxième lien sera-je capable d'utiliser le code dans le premier lien? Merci. matportage C# à android

+1

Tangentiellement lié, cela peut vous être utile (je ne l'ai pas utilisé, YMMV, etc.): http://mono-android.net – David

+0

ok merci je vais jeter un oeil – turtleboy

Répondre

2

Ce que vous voudrez peut-être faire est de le porter en utilisant opengl es (http://www.khronos.org/opengles/) d'abord, et votre machine de développement. Une fois que vous y arrivez, l'obtenir à l'androïde sera plus facile.

Avez-vous écrit cela en C# en utilisant la bibliothèque DirectX à l'origine?

Vous pouvez également utiliser OpenGL ES à partir de Java (http://developer.android.com/guide/topics/graphics/opengl.html), en fonction des performances dont vous avez besoin.

Mise à jour:

Si vous voulez le port de C# pour OpenGL ES vous pouvez regarder cette bibliothèque, que je ne l'ai pas utilisé, mais il semble bon: http://www.opentk.com/.

Pour le portage vers Java, vous pouvez regarder ceci: http://www.badlogicgames.com/wordpress/?p=343

Avant d'essayer d'obtenir ce sur Android, vous pouvez porter le code à OpenGL ES d'abord, dans une langue, puis une fois que vous avez DONE , puis aller à Android sera considérablement plus simple car vous aurez déjà travaillé sur la partie principale.

+0

black hi, Je suis nouveau à Android et je ne sais pas comment contourner cela et, de plus, quelles technologies utiliser. comme je l'ai dit j'ai trouvé du code en Java pur (jhlabs) qui sphérise un jpeg mais c'est l'utilisation de l'image tamponnée qui m'arrête. Le lien dans mon premier post est écrit en C#, quelque chose que je ne connais pas. ce que je voudrais faire est d'extraire des parties de ce code qui modifie les pixels de mon jpeg et ensuite appeler ce code de mon activité android. Je ne suis pas très bon avec le traitement d'image donc écrire quelque chose à partir de zéro dans Java avec l'algorithme de distorsion est un peu beaucoup pour moi atm. – turtleboy

+0

noir pourriez-vous me pointer dans la bonne direction avec quelques liens sur la façon de configurer ma machine en ce qui concerne le portage? Je ne suis pas sûr de savoir comment intégrer mon application avec opengl es soit. le lien utilisant le ndk semble assez intéressant car beaucoup d'algorithmes d'image pour le traitement d'image que j'ai trouvé sont en C ou dérivés, merci mat – turtleboy

+0

@turtleboy - Quelle langue voulez-vous faire le portage initial. Par exemple, si Si vous connaissez C#, vous pouvez d'abord transférer vers OpenGL ES, en C#, puis vous pouvez le transférer vers Android. Si vous connaissez mieux C ou Java, cela aura un impact sur l'installation. –