Bonjour a tous!
Me voici un peu, je dis bien un peu avancé dans mon projet. Grace a ImageJ j'ai vraiment tout ce dont j'avais besoin. Maintenant voici mon nouveau probleme. Il se trouve qu'ImageJ est en AWT...et je dois le migrer en SWT..en faite ce projet n'est qu'une partie (un plugin) d'un big projet developpé avec eclipse RCP, dont il doit obligatoirement tourner avec SWT.
Donc voila, le premier probleme rencontré est le suivant :
Pour l'ouverture d'un fichier image nous avons a un moment donné dans le code :
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 ColorModel cm = createColorModel(fi); ( fi etant un fileinfo ) avec pour createColorModel() : /** Returns an IndexColorModel for the image specified by this FileInfo. */ public ColorModel createColorModel(FileInfo fi) { if (fi.fileType==FileInfo.COLOR8 && fi.lutSize>0) return new IndexColorModel(8, fi.lutSize, fi.reds, fi.greens, fi.blues); else return LookUpTable.createGrayscaleColorModel(fi.whiteIsZero); }
bien bien...seulement je n'ai pas trouvé d'equivalent en SWT. Ma premiere solution proposée était de passer par des BufferImage, mais comme nous serons amené à travailler sur de nombreuses images en meme temps, et qu'en plus viendra s'ajouter a ceci une distribution des images sur d'autres pc, cette solution est trop lente. Est ce qu'il existe un moyen avec SWT de recuperer les données d'images pixel par pixel pour apres pouvoir effectuer des traitements dessus?The ColorModel abstract class encapsulates the methods for translating a pixel value to color components (for example, red, green, and blue) and an alpha component
J'ai bien conscience qu'SWT est moins adapté qu'AWT pour ce genre de traitement, et que la solution preconisée par la pluspart des articles sur le net est de faire une convertion brutale en passant par les bufferImages, mais que voulez vous, on ne peut aller contre la volonté des boss...
Merci d'avance pour vos eventuelles reponses!
Partager