ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

New WINDEV, WEBDEV and WINDEV Mobile 2024 feature!
Help / WLanguage / Managing databases / HFSQL / 
  • Cas particuliers
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
GeometryOverlap (Function)
In french: FormeChevauche
Permet de savoir si deux géométries se chevauchent.
Les conditions nécessaire pour que deux géométries se chevauchent sont les suivantes :
  • Les géométries ont la même dimension (par exemple, deux géométries de type polygone en 2 dimensions).
  • Les intérieurs des géométries ont une intersection non vide de la même dimension que les géométries considérées.
  • Chaque géométrie possède au moins un point à l'intérieur de l'autre géométrie.
Example
oPolygone2D_1 is Polygon2D
Linestring2DAddPoint(oPolygone2D_1.Outline, -4.38, 6.50)
Linestring2DAddPoint(oPolygone2D_1.Outline, -6.81, 1.51)
Linestring2DAddPoint(oPolygone2D_1.Outline, -1.42, -0.23)
Linestring2DAddPoint(oPolygone2D_1.Outline, 0.89, 4.19)
Linestring2DAddPoint(oPolygone2D_1.Outline, -4.38, 6.50)
oPolygone2D_1 = GeometryCorrect(oPolygone2D_1)

oPolygone2D_2 is Polygon2D
Linestring2DAddPoint(oPolygone2D_2.Outline, 2.35, 7.52)
Linestring2DAddPoint(oPolygone2D_2.Outline, -3.01, 4.47)
Linestring2DAddPoint(oPolygone2D_2.Outline, 1.82, 2.10)
Linestring2DAddPoint(oPolygone2D_2.Outline, 2.35, 7.52)
oPolygone2D_2 = GeometryCorrect(oPolygone2D_2)

Trace("GéométrieChevauche(oPolygone2D_1, oPolygone2D_2) = " + GeometryOverlap(oPolygone2D_1, oPolygone2D_2))
Syntax
<Résultat> = GéométrieChevauche(<Géométrie A> , <Géométrie B>)
<Résultat>: Booléen
  • Vrai si les géométries se chevauchent,
  • Faux dans le cas contraire.
En cas d'erreur, la variable ErreurDétectée est à Vrai. Pour connaître le libellé de l'erreur, utilisez la fonction ErreurInfo avec la constante errMessage.
<Géométrie A>: Variable correspondant à des données spatiales
Nom de la variable correspondant à la première géométrie manipulée. Cette géométrie peut correspondre à un des types de variables suivants :
<Géométrie B>: Variable correspondant à des données spatiales
Nom de la variable correspondant à la seconde géométrie manipulée. Cette géométrie peut correspondre à un des types de variables suivants :
Remarks

Cas particuliers

  • Si la géométrie A est incluse dans la géométrie B, leur intersection est égale à la géométrie A. Dans ce cas, la fonction GeometryOverlap renvoie Faux.
  • Si les paramètres <Géométrie A> et <Géométrie B> sont identiques, la fonction GeometryOverlap renvoie Faux.
  • Si les géométries considérées sont des multipolygones, il suffit que l'un des polygones de la géométrie A chevauche un des polygones de la géométrie B pour que la fonction GeometryOverlap renvoie Vrai.
Exemple :
// Définition d'un triangle délimitant une zone géographique
// Mémorisation de ce triangle dans une variable de type PolygoneGéo 
polyGeo is PolygonGeo
LinestringGeoAddPoint(polyGeo.Outline, 0n48.8187479172765, 0n1.9550104465229536)
LinestringGeoAddPoint(polyGeo.Outline, 0n48.685649220185574, 0n2.023674998054354)
LinestringGeoAddPoint(polyGeo.Outline, 0n48.82612543243871, 0n2.2106580854197566)
polyGeo = GeometryCorrect(polyGeo)

// Recherche les communes ayant un territoire dans le triangle ciblé
nbEnregs is int
FOR EACH DatasCommunes where GeometryOverlap(DatasCommunes.rub_Geometrie, polyGeo) 
	// Nom de la commune dans une trace
	Trace(DatasCommunes.NomCommune)
END
Business / UI classification: Business Logic
Component: wd290hf.dll
Minimum version required
  • Version 2024
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 03/29/2024

Send a report | Local help