Aller au contenu

Symboles le long d\'un pline à distance x


Messages recommandés

Posté(e)

Bonjour,

Comment dois-je m'y prendre pour insérer un symbole sur une polyligne à une distance supérieure à X et inférieur à Y et insérer également un symbole au début et à la fin de la polyligne?

Tous ces éléments sont bien entendu variables, soit le symbole qui peut être ou pas déjà inséré dans mon dessin, les distances X et Y varient, et la polyligne n'est jamais la même. Les symboles doivent être orientés sur la polyligne.

Je sais que je peux utiliser "diviser" après avoir diviser la longueur de ma polyligne par Y et insérer....... Le problème c'est que j'en aurais pout très longtemps, et très souvent.

 

Merci à l'avance,

 

Karmélie

Posté(e)

coucou

 

le libellé de ta question est particulièrement compliqué :(

 

que sont ces valeurs X et Y ?

 

distance supérieure à X et inférieur à Y

 

les distances X et Y varient

 

avoir diviser la longueur de ma polyligne par Y

 

tu nous en dis plus et plus clairement, s'il te plaît

 

amicalement

Posté(e)

Bonjour,

 

Je tente d'éclaircir mon énoncé.

 

Je dois insérer un symbole le long d'une polyligne (comme la commande diviser le fait très bien).

 

Toutefois j'ai des critères de distance minimum et maximum à respecter. Par exemple, l'écart en les symboles doit être supérieur à 9 mètres mais inférieur à 10 mètres. De plus il doit y avoir un symbole au début et à la fin du polyligne (ce que la command diviser ne fait pas).

 

Je sais faire manuellement l'opération. Le problème c'est que j'ai plusieurs "cas" qui demande à insérer différents symboles qui ont des critères de distance max et min différents. J'aurai souvent ce genre d'opération à faire.

 

Ex. Calque = ame1

Symbole = bulle

Distance Min = 8m

Distance Max =10m

 

Calque = ame2

Symbole = carre

Distance Min = 12.25m

Distance Max = 15.0m

 

Calque = ame3

Symbole = triangle

Distance Min = 7.5m

Distance Max = 8m

 

Idéalement, on pourrait choisir le calque d'insertion, le symbole à insérer, les objets à diviser et spécifier la distance min. et max.

 

C'est mieux? :P

 

Karmélie

 

Posté(e)

Hum... comment expliquer?

 

Pour une opération = une distance

Pour l'opération suivante = une autre distance

Dans l'exemple:

Calque = ame3

Symbole = triangle

Distance Min = 7.5m

Distance Max = 8m

 

Si une polyligne a une longueur de 70m.

Je calcule: 70/8 (dist max) = 8.75m, j'arrondi à 9

Je calcule 70/9 = 7.7777 Je respecte le mininum OK je dessine.

Avec la commande "diviser" j'insère le bloc "triangle" en divisant ma polyligne en 9 segments.

Je copie le premier triange dessiné au début de ma polyligne et le dernier triangle dessiné à la fin de ma polyligne...

 

...et je recommence pour toutes les polylignes du calque ame3 qui sont toutes de longueur différente.

 

Je recommence ensuite pour un autre calque, avecdes polylignes différentes er des critères différents.

 

Les noms de calques, les distances min et max et les noms de blocs sont ici à titre d'exemple seulement.

 

 

Posté(e)

coucou

 

j'ai commencé un truc vite fait

 

(setq ent (car(entsel"\polyligne")))
(setq ObjLine (vlax-ename->vla-object ent)
     ptfin (vlax-curve-getEndPoint ObjLine)
     ptdeb (vlax-curve-getstartPoint ObjLine)
     Longueur(vlax-curve-getdistatpoint ObjLine ptfin)
     )
(setq distMax (getreal "\nDistance MAX\n")
     distmin (getreal "\nDistance MIN\n")
     )
(setq nombre (atoi (rtos (/ longueur distmax)2 0)))
(setq ecart (/ longueur nombre)
     ecart2 0
      )
(repeat nombre
       (setq pm (vlax-curve-getpointAtdist ObjLine ecart2))
       (command "_insert" "zaza" pm "" "" "" )
       (setq ecart2 (+ ecart ecart2))
       )
(command "_insert" "zaza" ptfin "" "" "" )

 

dis-moi si ça te convient

le bloc zaza à changer avec ton vrai nom

amicalement

Posté(e)

Bonjour/Bonsoir

 

Ca ne semble pas fonctionner.

 

Je crois avoir omis de spécifier que les segments entre les symboles doivent être égaux et avoir une longueur comprise entre le critère minimun et le critère maximun.

 

Pas évident de passer l'information surtout lorsque la demande vient d'un tiers...

 

Je tente une dernière explication en dessin. Une image vaut mille mots...

 

http://www.cijoint.fr/cjlink.php?file=cj201108/cijNfsIY3w.zip

 

Merci

Posté(e)

Coucou

 

Je crois avoir omis de spécifier

c'est sûr que tu en as omis des informations

traduire une idée en mots n'est pas tâche aisée je te l'accorde

mais nous n'avons que des mots pour échanger nos idées,

aussi il faut se creuser la tête pour expliciter le souci dans le détail

et surtout ça, le détail, c'est ce qui fait la différence.

 

ce que je t'ai tapé vite fait hier

(pour me faire une récré après une journée de crotte)

semble correspondre à ce que tu as demandé

toutefois, c'est du vite fait

c'est à dire sans contrôles en particulier au niveau des accrochages

il faut bien les désactiver sinon le résultat risque d'être erratique.

 

je n'ai pas accès au serveur de ci-joint,

(je suis en expat et le réseau est ultra-sécurisé)

donc je ne peux voir ton explication dessinée.

 

fais moi un MP et je te donnerai mon mail perso

ou biens viens me voir sur mon site où il est aisé d'attacher des fichiers

 

amicalement

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité