Hi,<br><br>&nbsp;The GDAL Java Bind for GDAL 1.5 got compiled but the GDALTest.Java failed to compile.<br><br>at line 295<br><br>cm = poBand.GetRasterColorTable().getIndexColorModel(<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; gdal.GetDataTypeSize
(buf_type));<br><br>Is the getIndexColorModel method been deprecated is there any other method that is return ColorModel which is available in GetRasterColorTable ??<br><br>Rgds<br><br>Abhay<br><br><div class="gmail_quote">
On Jan 15, 2008 2:40 AM, Tamas Szekeres &lt;<a href="mailto:szekerest@gmail.com">szekerest@gmail.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Rick,<br><br>You can get further information about the history of the related<br>changes from this ticket:<br><a href="http://trac.osgeo.org/gdal/ticket/1578" target="_blank">http://trac.osgeo.org/gdal/ticket/1578</a><br>
<br>According to the changeset <a href="http://trac.osgeo.org/gdal/changeset/11640" target="_blank">http://trac.osgeo.org/gdal/changeset/11640</a><br>The ColoryEntry is treated as objects for all of the binding instead<br>
of arrays. Therefore the typemaps for GDALColorEntry in java has<br>become outdated.<br>It seems to me that these typemaps in the java bindings are tending to<br>map GDALColorEntry directly to java/awt/Color which is a target
<br>language specific type.<br><br>I can consider the following 2 trivial options to fix this problem:<br><br>1, Revert the change for java<br><br>Index: gdal.i<br>===================================================================
<br>--- gdal.i &nbsp; &nbsp; &nbsp;(revision 13527)<br>+++ gdal.i &nbsp; &nbsp; &nbsp;(working copy)<br>@@ -258,7 +258,7 @@<br>&nbsp;// GDALColorEntry<br>&nbsp;//<br>&nbsp;//************************************************************************<br>-#ifndef SWIGPERL
<br>+#if !definied(SWIGPERL) and !defined(SWIGJAVA)<br>&nbsp;%rename (ColorEntry) GDALColorEntry;<br>&nbsp;typedef struct<br>&nbsp;{<br><br><br>2. Strip the GDALColorEntry typemaps and thread ColorEntry as a separate class.<br><br>Index: typemaps_java.i
<br>===================================================================<br>--- typemaps_java.i &nbsp; &nbsp; (revision 13527)<br>+++ typemaps_java.i &nbsp; &nbsp; (working copy)<br>@@ -65,46 +65,9 @@<br><br><br><br>-%typemap(in) (GDALColorEntry *) (GDALColorEntry tmp) {
<br>- &nbsp;/* %typemap(in) (GDALColorEntry *) (GDALColorEntry tmp) */<br>- &nbsp;$1 = NULL;<br>- &nbsp;float *colorptr = 0;<br>- &nbsp;const jclass Color = jenv-&gt;FindClass(&quot;java/awt/Color&quot;);<br>- &nbsp;const jmethodID colors = jenv-&gt;GetMethodID(Color, &quot;getRGBComponents&quot;,
<br>- &nbsp; &nbsp;&quot;([F)[F&quot;);<br><br>- &nbsp;jfloatArray colorArr = jenv-&gt;NewFloatArray(4);<br>- &nbsp;colorArr = (jfloatArray)jenv-&gt;CallObjectMethod($input, colors, colorArr);<br><br>- &nbsp;colorptr = (float *)jenv-&gt;GetFloatArrayElements(colorArr, 0);
<br>- &nbsp;tmp.c1 = (short)(colorptr[0] * 255);<br>- &nbsp;tmp.c2 = (short)(colorptr[1] * 255);<br>- &nbsp;tmp.c3 = (short)(colorptr[2] * 255);<br>- &nbsp;tmp.c4 = (short)(colorptr[3] * 255);<br>- &nbsp;/*printf( &quot; &nbsp;%d, %d, %d, %d\n&quot;,<br>
- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tmp.c1, tmp.c2, tmp.c3, tmp.c4 );*/<br>- &nbsp;$1 = &amp;tmp;<br>-}<br><br>-%typemap(out) (GDALColorEntry *) {<br>- &nbsp;/* %typemap(out) (GDALColorEntry *) */<br>- &nbsp;const jclass Color = jenv-&gt;FindClass(&quot;java/awt/Color&quot;);
<br>- &nbsp;const jmethodID ccon = jenv-&gt;GetMethodID(Color, &quot;&lt;init&gt;&quot;,<br>- &nbsp; &nbsp;&quot;(IIII)V&quot;);<br>- &nbsp;$result = jenv-&gt;NewObject(Color, ccon, $1-&gt;c1, $1-&gt;c2, $1-&gt;c3, $1-&gt;c4);<br>-}<br>-<br>
-%typemap(jni) (GDALColorEntry *) &quot;jobject&quot;<br>-%typemap(jtype) (GDALColorEntry *) &quot;java.awt.Color&quot;<br>-%typemap(jstype) (GDALColorEntry *) &quot;java.awt.Color&quot;<br>-%typemap(javain) (GDALColorEntry *) &quot;$javainput&quot;
<br>-%typemap(javaout) (GDALColorEntry *) {<br>- &nbsp; &nbsp;return $jnicall;<br>- &nbsp;}<br>-<br>-<br>-<br>-<br>&nbsp;/*<br> &nbsp;* Typemap argout of GDAL_GCP* used in Dataset::GetGCPs( )<br> &nbsp;*/<br><br>I would suggest to apply #2 in the development version since it
<br>reduces the divergence between the java and the other languages,<br>however it breaks the backward compatibility.<br><br>Best regards,<br><br>Tamas<br><br><br><br><br>2008/1/14, Rick Brownrigg &lt;<a href="mailto:brownrigg@sunflower.com">
brownrigg@sunflower.com</a>&gt;:<br><div><div></div><div class="Wj3C7c">&gt; I have spent some time investigating the build issues for the Java<br>&gt; bindings in 1.5, and for the most part there are a couple of nearly<br>
&gt; trivial fixes to the Makefile and the environment settings that are<br>&gt; required. However, the most troublesome issue seems to be a swig<br>&gt; type-mapping issue, which at present I do not know how to correct. It
<br>&gt; centers upon the gdal type ColorEntry, which is mapped in<br>&gt; ...../swig/include/gdal.i &nbsp; &nbsp;For reasons I don&#39;t understand, the<br>&gt; generated file ..../swig/java/org/gdal/gdal/ColorEntry.java tries to<br>
&gt; pass arguments of type long (a pointer presumably) to the various native<br>&gt; settors/gettors implemented in gdalJNI.java (also a generated file),<br>&gt; which is expecting java.awt.Color objects instead. Hence the code will
<br>&gt; not compile. &nbsp;I don&#39;t understand the source of the mismatch,<br>&gt; particularly as these two files are generated by swig.<br>&gt;<br>&gt; Note that this mismatch was present in 1.4.x, but was masked by a #ifdef
<br>&gt; SWIGCSHARP directive around the mapping in gdal.i. &nbsp;(and thus there was<br>&gt; no Java proxy for the gdal type ColorEntry in 1.4.x (?)).<br>&gt;<br>&gt; I had indicated I would volunteer to support the Java bindings, but with
<br>&gt; this experience, I am now not confident &nbsp;that I can do so in a timely<br>&gt; fashion.<br>&gt;<br>&gt; FWIW...<br>&gt; Rick Brownrigg<br>&gt;<br>&gt; _______________________________________________<br>&gt; gdal-dev mailing list
<br>&gt; <a href="mailto:gdal-dev@lists.osgeo.org">gdal-dev@lists.osgeo.org</a><br>&gt; <a href="http://lists.osgeo.org/mailman/listinfo/gdal-dev" target="_blank">http://lists.osgeo.org/mailman/listinfo/gdal-dev</a><br>&gt;
<br>_______________________________________________<br>gdal-dev mailing list<br><a href="mailto:gdal-dev@lists.osgeo.org">gdal-dev@lists.osgeo.org</a><br><a href="http://lists.osgeo.org/mailman/listinfo/gdal-dev" target="_blank">
http://lists.osgeo.org/mailman/listinfo/gdal-dev</a><br></div></div></blockquote></div><br>