<div dir="ltr">Gracias,<div><br></div><div>Te lo envío por privado.</div></div><div class="gmail_extra"><br><div class="gmail_quote">El 6 de abril de 2017, 19:38, Joaquin Jose del Cerro Murciano <span dir="ltr">&lt;<a href="mailto:jjdelcerro@gvsig.org" target="_blank">jjdelcerro@gvsig.org</a>&gt;</span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="">El 5 de abril de 2017, 18:46, Francisco Puga <span dir="ltr">&lt;<a href="mailto:fpuga@icarto.es" target="_blank">fpuga@icarto.es</a>&gt;</span> escribió:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hola,<div><br></div><div>Quería obtener de forma rápida el número de geometrías (primitivas) de cada feature de un shape.</div><div><br></div><div>No se si hay alguna forma de hacerlo directamente en gvSIG pero me hice un script superrapido tal que así:</div><div><br></div><div><div>import gvsig</div><div><br></div><div>def main(*args):</div><div>    features = gvsig.currentLayer().features(<wbr>)</div><div>    for feature in features:</div><div>      code = feature[&#39;id1&#39;]</div><div>      num_geometries = feature.geometry().getPrimitiv<wbr>esNumber()</div><div>      # num_geometries = feature.geometry().getNumVerti<wbr>ces()</div><div>      print &#39;{}: {}&#39;.format(code, num_geometries)</div></div><div><br></div><div>Pero da el error. </div><div><br></div><div>AttributeError: &#39;org.gvsig.fmap.geom.jts.primi<wbr>tive.curve.line.Line2&#39; object has no attribute &#39;getPrimitivesNumber&#39;</div><div><br></div><div>No se si es porque el método getPrimitivesNumber no está en la interfaz Geometry si no en <a href="http://downloads.gvsig.org/download/gvsig-desktop-testing/dists/2.3.0/javadocs/html/org/gvsig/fmap/geom/aggregate/Aggregate.html" target="_blank">Aggregate</a> que sólo heredan las geometrías multi. Si es así podría ser útil que este método estuviera disponible para todas las geometrías para evitar tener que hacer comprobaciones de tipo. Por ejemplo Postgis lo hace así con <a href="http://postgis.net/docs/manual-2.1/ST_NumGeometries.html" target="_blank">ST_NumGeometries</a>. De todas formas en las propiedades de la capa está declarada MultiCurve:2D.</div></div></blockquote><div><br></div></span><div>Me temo que el metodo  getPrimitivesNumber solo va a funcionar sobre agregados.<br><br></div><span class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>También relacionado con esto. Si paso el script sobre otra capa que tengo, en este caso un Multicurve:·3DM no me va ni el método getPrimitivesNumber() ni el método getNumVertices()</div><div><br></div></div></blockquote><div><br></div></span><div>Si pudieses hacerme llegar el shape que te da esos problemas le hecho un vistazo a ver que es lo que pasa.<br><br></div><div>Un saludo<br></div><div>Joaquin<br><br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class=""><div dir="ltr"><div></div><div>Estoy en gvSIG 2.3.1.</div><div><br></div><div>Un saludo.</div></div>
<br></span>______________________________<wbr>_________________<br>
gvSIG_desarrolladores mailing list<br>
<a href="mailto:gvSIG_desarrolladores@listserv.gva.es" target="_blank">gvSIG_desarrolladores@listserv<wbr>.gva.es</a><br>
Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección: <a href="https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores" rel="noreferrer" target="_blank">https://listserv.gva.es/cgi-bi<wbr>n/mailman/listinfo/gvsig_desar<wbr>rolladores</a><br>
<br></blockquote></div><span class="HOEnZb"><font color="#888888"><br><br clear="all"><br>-- <br><div class="m_-5395821222197933369gmail_signature">------------------------------<wbr>--------<br>Joaquin Jose del Cerro Murciano<br>Development and software arquitecture manager at gvSIG Team<br><a href="mailto:jjdelcerro@gvsig.com" target="_blank">jjdelcerro@gvsig.com</a><br><a href="mailto:jjdelcerro@gvsig.org" target="_blank">jjdelcerro@gvsig.org</a><br>gvSIG Association<br><a href="http://www.gvsig.com" target="_blank">www.gvsig.com</a><br><a href="http://www.gvsig.org" target="_blank">www.gvsig.org</a></div>
</font></span></div></div>
<br>______________________________<wbr>_________________<br>
gvSIG_desarrolladores mailing list<br>
<a href="mailto:gvSIG_desarrolladores@listserv.gva.es">gvSIG_desarrolladores@<wbr>listserv.gva.es</a><br>
Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección: <a href="https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores" rel="noreferrer" target="_blank">https://listserv.gva.es/cgi-<wbr>bin/mailman/listinfo/gvsig_<wbr>desarrolladores</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>Francisco Puga</div><div>iCarto | Innovación, Cooperación, Cartografía y Territorio S.L.</div><div><a href="http://www.icarto.es/" target="_blank">http://www.icarto.es/</a></div><div><br></div><div>c/ Rafael Alberti nº 13 – 1º D</div><div>15008 A Coruña</div><div>Galicia (Spain)</div><div>+34 881927808</div><div><br></div><div>Este correo electrónico contiene información estrictamente confidencial y es de uso exclusivo del destinatario, quedando prohibida a cualquier otra persona su revelación, copia, distribución, o el ejercicio de cualquier acción relativa a su contenido. Si ha recibido este mensaje por error, por favor conteste a su remitente mediante correo electrónico y proceda a borrarlo de su sistema.</div><div><br></div><div>Sus datos personales serán tratados de forma confidencial y no serán cedidos a terceros ajenos a ICARTO. En cualquier caso, podrá ejercer los derecho de oposición, acceso, rectificación y cancelación de acuerdo con lo establecido en la Ley Orgánica 15/99, de 13 de diciembre, de Protección de Datos de Carácter Personal dirigiéndose a Innovación, Cooperación, Cartografía e Territorio, SL. (ICARTO) en la dirección postal a C/ Rafael Alberti, nº 13, 1ºD, 15.008 – (A Coruña).</div></div></div>
</div>