Hi Francisco,<br>I discovered these days that the patch for managing 4d shapefiles I sent to you some weeks ago is uncomplete. <br>4D shapefiles are read correctly with that patch, but if I start editing them and then I save them, the shapeWriter do not work as expected. <br>
The malfunctioning is caused by the fact that when the shapeWriter tries to get the layer type<br>the IndexedShpDriver collapse 2d and 4d shapefiles to the same type of layer:<br><br> case (SHP.POLYLINEM):<br>
auxType = auxType | FShape.LINE | FShape.M;<br>
break;<br> case (SHP.POLYLINE2D):<br> case (SHP.POLYLINE3D):<br> auxType = auxType | FShape.LINE;<br> break;<br><br>while it must be:<br><br> case SHP.POLYLINE2D:<br>
auxType = auxType | FShape.LINE;<br> break;<br> case SHP.POLYLINEM:<br> auxType = auxType | FShape.LINE | FShape.M;<br> break;<br> case SHP.POLYLINE3D:<br>
auxType = auxType | FShape.LINE | FShape.Z;<br> break;<br><br>The new version of the patch of libFMap is attached to the mail.<br>Best regards,<br>Flavio<br><br><br><div class="gmail_quote">
2010/2/1 Flavio Pompermaier <span dir="ltr"><<a href="mailto:fla83tn@libero.it">fla83tn@libero.it</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Francisco,<br>I was thinking nobody read my email..<br>However, I tested the solution against the attached shapefile, which has x,y,z and m dimension (although z is always 0...).<br>I didn't test legends and labelling because by now I use it like a normal 3D shapefile. <br>
But if you do it it should be certainly a good idea!<br>Moreover I didn't test non-indexed shapefiles but I don't even know if they exist..and also if they do<br>it seems to me that the code to manage them is always passing through the classes I modified.<br>
<br>Thanks for keeping me up to date,<br>Flavio<br><br><br><div class="gmail_quote">2010/1/29 Francisco José Peñarrubia <span dir="ltr"><<a href="mailto:fpenarru@gmail.com" target="_blank">fpenarru@gmail.com</a>></span><div>
<div></div><div class="h5"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Flavio.<br>
<br>
Sorry about this late response... :-(.<br>
<br>
About the patch, we are going to evaluate it. Please, can you send us<br>
some shapefiles to test, and one or two use cases?.<br>
We are going to test also some legends, and labelling (just in case you<br>
haven't tested it yet).<br>
<br>
Thanks a lot for this collaboration, and keep going, please.<br>
<br>
Fran Peñarrubia.<br>
gvSIG Team<br>
<br>
Flavio Pompermaier escribió:<br>
<div><div></div><div>> Hi to all,<br>
> In the project I' working on I had the need of managing M dimension of<br>
> PolylineZ contained in shapefiles<br>
> and I had to modify the libFMap and read also M coordinate for<br>
> Shape.POLYLINE3D.<br>
> The patch is attached to this mail.<br>
> I'd like to know whether this patch could be added of interest for a<br>
> cumulative further patch of gvSIG 1.9.<br>
><br>
> -------------------------------------------------------------------------------------------------------------------------------------------------------<br>
> Brief summary:<br>
> -------------------------------------------------------------------------------------------------------------------------------------------------------<br>
> - Class ShapeZMFactory proxies the creation of Z-geometries with four<br>
> coordinates. By now only polylines<br>
> are managed but, if somedays there will be the need of managing also<br>
> Zpoints, Zmultipoints and Zpolygons<br>
> with four dimension, you can always implement method for their<br>
> creation in the aforementioned class.<br>
><br>
> - Class FPolyline3DM extends FPolyline3D in order to manage m<br>
> dimension of PolylineZ shapes<br>
><br>
> - Class IndexedShpDriver instead manage the reading of m coordinate<br>
> from shapefiles..<br>
> --------------------------------------------------------------------------------------------------------------------------------------------------------<br>
><br>
> If anyone knows if I've forgotten to touch other classes in order to<br>
> make my patch complete is pleased to let<br>
> me know about it.<br>
><br>
> Best regards,<br>
> Flavio Pompermaier<br>
><br>
</div></div>> ------------------------------------------------------------------------<br>
><br>
> _______________________________________________<br>
> Gvsig_internacional mailing list<br>
> <a href="mailto:Gvsig_internacional@listserv.gva.es" target="_blank">Gvsig_internacional@listserv.gva.es</a><br>
> <a href="http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_internacional" target="_blank">http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_internacional</a><br>
><br>
<br>
_______________________________________________<br>
Gvsig_internacional mailing list<br>
<a href="mailto:Gvsig_internacional@listserv.gva.es" target="_blank">Gvsig_internacional@listserv.gva.es</a><br>
<a href="http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_internacional" target="_blank">http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_internacional</a><br>
</blockquote></div></div></div><br>
</blockquote></div><br>