#1 Mon 12 March 2007 15:23
- Pierre.J
- Participant occasionnel
- Lieu: Nantes - Paris
- Date d'inscription: 1 Nov 2006
- Messages: 37
Comment faire une requête avec un angle?
Bonjour à tous,
Voila l'exposé du problème:
J'ai un cadastre sur lequel j'ai affiché les routes et un réseau quelconque souterrain (prenons un réseau d'eau).
J'ai remarqué que les canalisations d'eau sont plus sujettes à se casser si elles sont perpendiculaires à la route (la pression exercée par le passage des voitures se concentre en un point).
Ma question est la suivante:
comment faire une sélection qui prenne en compte toutes les calanisations qui ont un angle compris entre 70° et 90° par rapport aux routes?
Je ne sais pas si c'est possible de faire une requête de ce type sous Mapinfo (en SQL? en Mapbasic?)
Voilou!
Merci à tous par avance,
Pierre
Hors ligne
#2 Mon 12 March 2007 21:16
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Comment faire une requête avec un angle?
Bonjour
Si les objets sont des lignes (pas des polylignes), on pourra utiliser ObjectGeography(obj,x) avec x=1 ou 2 pour le X ou Y du point début et x=3 ou 4 pour le X ou Y du point fin. Le plus basique est de créer ces 4 colonnes dans chaque table, de les mettre à jours avec ces valeurs puis de construire une requête ...judicieuse
Si ce sont des polylignes...je ne vois pas dans l'immédiat
Hors ligne
#3 Tue 27 March 2007 10:15
- Pierre.J
- Participant occasionnel
- Lieu: Nantes - Paris
- Date d'inscription: 1 Nov 2006
- Messages: 37
Re: Comment faire une requête avec un angle?
les objets que j'ai sont des polylignes, quelqu'un sait comment faire?
Hors ligne
#4 Tue 03 April 2007 09:53
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: Comment faire une requête avec un angle?
Piste:
- découper les polylignes par un polygone tampon du réseau routier (largeur = celle de la route plus un mètre de part et d'autre)
- les "bouts" obtenus sont assimilables à des lignes (les canalisations zigzaguent peu sous les chaussées...)
- déterminer les coordonnées de leurs extrémités par ObjectGeography()
- créer les lignes ayant ces extrémités
...on est ramené alors à ma réponse précédente
Hors ligne