El polígono de restricciones quita todos las entidades de la red que tocan, aunque no estén contenidas entera

master
Elena 2020-04-24 23:44:03 +02:00
parent cca9f084c0
commit ef20103e46
3 changed files with 5 additions and 5 deletions

Binary file not shown.

View File

@ -2,11 +2,11 @@
<Name>OLIVIA AddIn</Name> <Name>OLIVIA AddIn</Name>
<AddInID>{0718b3b3-5422-4d80-97ad-f72b18a3e476}</AddInID> <AddInID>{0718b3b3-5422-4d80-97ad-f72b18a3e476}</AddInID>
<Description>Add-In de ArcMap para la herramienta de optimización de la limpieza viaria, OLIVIA.</Description> <Description>Add-In de ArcMap para la herramienta de optimización de la limpieza viaria, OLIVIA.</Description>
<Version>2.0.0.3</Version> <Version>2.0.0.4</Version>
<Image>Images\OliviaAddIn.png</Image> <Image>Images\OliviaAddIn.png</Image>
<Author>VSM</Author> <Author>VSM</Author>
<Company>VSM</Company> <Company>VSM</Company>
<Date>09/03/2020</Date> <Date>17/04/2020</Date>
<Targets> <Targets>
<Target name="Desktop" version="10.2" /> <Target name="Desktop" version="10.2" />
</Targets> </Targets>

View File

@ -135,7 +135,7 @@ namespace OliviaAddIn
/* /*
* Dado un nombre de featureclass, una consulta y una geometría, interseca entre un poligono dado (geom) y una capa lineal (fc1) * Dado un nombre de featureclass, una consulta y una geometría, interseca entre un poligono dado (geom) y una capa lineal (fc1)
*/ */
public IQueryFilter dame_filt_inter(IFeatureClass fc, string consulta, IGeometry geom) public IQueryFilter dame_filt_inter(IFeatureClass fc, string consulta, IGeometry geom, esriSpatialRelEnum spatrel = esriSpatialRelEnum.esriSpatialRelIntersects)
{ {
IQueryFilter filt = null; IQueryFilter filt = null;
ISpatialFilter filtro_espacial = null; ISpatialFilter filtro_espacial = null;
@ -148,7 +148,7 @@ namespace OliviaAddIn
filtro_espacial = new SpatialFilterClass(); filtro_espacial = new SpatialFilterClass();
filtro_espacial.Geometry = geom; filtro_espacial.Geometry = geom;
filtro_espacial.GeometryField = fc.ShapeFieldName; filtro_espacial.GeometryField = fc.ShapeFieldName;
filtro_espacial.SpatialRel = esriSpatialRelEnum.esriSpatialRelIntersects; filtro_espacial.SpatialRel = spatrel;
//se incorpora filtro de atributos si se pasa como argumento. De este modo se hará la interseccion espacial sólo de aquellos elementos que cumplan el filtrado de atributos. //se incorpora filtro de atributos si se pasa como argumento. De este modo se hará la interseccion espacial sólo de aquellos elementos que cumplan el filtrado de atributos.
if ((consulta != null) || consulta != "") if ((consulta != null) || consulta != "")
filtro_espacial.WhereClause = consulta; filtro_espacial.WhereClause = consulta;
@ -497,7 +497,7 @@ namespace OliviaAddIn
//crea el filtro espacial y el añadido de consulta de atributos si fuera necesario //crea el filtro espacial y el añadido de consulta de atributos si fuera necesario
nomb_class = OliviaGlob.Capas.ftclass_ejes; nomb_class = OliviaGlob.Capas.ftclass_ejes;
IFeatureClass fc = FunGDB.abre_ftclass(OliviaGlob.Paths.PathGdbNw, nomb_class); IFeatureClass fc = FunGDB.abre_ftclass(OliviaGlob.Paths.PathGdbNw, nomb_class);
filtro = dame_filt_inter(fc, null, geom1); filtro = dame_filt_inter(fc, null, geom1, esriSpatialRelEnum.esriSpatialRelContains);
if (filtro == null) if (filtro == null)
{ {
err_st = "Error al crear el filtro de exportación " + name; err_st = "Error al crear el filtro de exportación " + name;