#1 Fri 25 November 2005 09:12
- fgasc
- Juste Inscrit !
- Lieu: Beaugency
- Date d'inscription: 9 Sep 2005
- Messages: 8
MapBasic : polylignes paralleles
Bonjour la liste,
je cherche à coder un outil qui permette de tracer des droites paralleles à une droite sélectionnée. lorsqu'il s'agit de droites composées d'une
simple ligne, mes restes de cours de 5ème me suffisent et j'arrive à
calculer l'équation et à déporter la droite d'une distance donnée.
Par contre, quand il s'agit d'une polyligne, le probleme est plus complexe : il faut que je découpe la polyligne en ligne, puis que je trace les
paralleles, puis que je calcule les points d'intersections, et enfin que
je redessine la nouvelle polyligne composée de tous mes points
d'intersections....
Tout cela me semble bien compliqué. est ce qu'il n'existe pas quelquepar un bout de code MapBasic qui permettrait de faire ce genre de chose (un
genre de buffer d'un seul coté, en polyligne) ? Ou bien si vous voyez un moyen de simplifier mon probleme, je suis preneur aussi.
Je précise que j'utilise la version 65 de MapInfo/MapBasic.
d'avance, merci pour vos réponses.
Florent GASC
Assistant à la Direction du Développement Agricole
SOSUCAM
BP 857
Yaoundé Cameroun
Hors ligne
#2 Wed 21 December 2005 13:44
Re: MapBasic : polylignes paralleles
il est plus simple d'utiliser une translation: on crée une polyligne vide, et pour chaque noeud de la ligne initiale, on calcule le point translaté qu'on ajoute à la nouvelle ligne
lprotig
Hors ligne
#3 Wed 21 December 2005 15:29
- Laurent Frilleux
- Participant actif
- Lieu: Aniane
- Date d'inscription: 8 Sep 2005
- Messages: 83
Re: MapBasic : polylignes paralleles
Bonjour
Vous pouvez exporter votre table en mif mid et y ajouter un transform aprés la ligne coordsys
transform multiplicateurX,multiplicateurY,déplacementX,déplacementY
Bonne journée
Laurent Frilleux
Immergis - Montpellier
Hors ligne
#4 Wed 21 December 2005 19:26
Re: MapBasic : polylignes paralleles
Je me suis toujours demandé ce que l'on appelle une "parallèle à une polyligne" et la réponse ici d'utiliser un simple déplacement en x et y est une façon de la concevoir. Dans ce cas la "parallèle" est un obet identique à l'original.
L'autre façon tient plus des principes de construction d'un tampon (ou d'un demi-tampon si l'on préfère). Les segments sont bien paralèlles aux originaux mais ils sont prolongés ou interrompus à leurs intersections. L'objet obtenu est alors différent de l'original.
Comme je voudrais offrir un outil pour répondre à ce problème, j'aimerais bien savoir quelle approche répond à la question qui a été posée au début. Vous pouvez voir la mise en œuvre de la deuxième approche dans l'outil Strings2Stripes qui est disponible sur www.paris-pc-gis.cm/Beta/beta.htm .
Utilsez alors l'option "coins pointus"
Jacques Paris
Hors ligne
#5 Thu 22 December 2005 08:49
Re: MapBasic : polylignes paralleles
et pourquoi ne tout simplement pas copier ta polyligne et ensuite lui faire subir la translation, tu calcul les centroiX et Y et ensuite tu déplaces le centre de ta nouvelle polyligne qui sera "parallèle" à la preemière.
alex
Dernière modification par alex (Thu 22 December 2005 10:58)
J'arrête le combat pour le SVG !! et je ne fais plus que de l'information.
SVG : Scalable Vector Graphic ou comment mettre de la vie sur votre site Internet.
www.ode43.fr
Hors ligne