Invité spartacuss Posté(e) le 24 mai 2011 Posté(e) le 24 mai 2011 BONJOUR salut tt le monde , j'ai un dessin constituer de plusieurs lwpolyline et je veux récupérer le rayon de courbure de ces lwplolyline ainsi que la distance entre eux (la distance entre chaque lwpolyline ) je sait que c'est un petit peut difficile mais j'attend chaque indication , aide , critique ..... merci d'avance pour le temps que vous consacres a ce sujet . bien amicalement
Fraid Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 Bonjour, (la distance entre chaque lwpolyline ) a moins qu'elles soient identiques et parallèles cela ne veut rien dire ou la distance entre leur première poignée peut être ? Peut tu reformuler ta question, ou/et nous envoyer un exemple? https://github.com/Fraiddd
Invité spartacuss Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 re non ne sont pas paralleles , je vveux vous envoyer un exemple mais je c pas comment faire :red:
Invité spartacuss Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 re je veux vous envoyer une image mais j'arrive pas joindre l'image ( ca me donne ça : )
Fraid Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 essaye en utilisant ce sitetu colle le lien qu'il te donne http://dl.free.fr/ https://github.com/Fraiddd
bonuscad Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 Est ce que cette réponse de (gile) n'est pas (à quelque chose près) dans la même optique?Il n'y a pas grand chose à faire pour avoir les distances entre sommets de 2 polylignes au lieu du milieu comme proposé dans la routine. Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Invité spartacuss Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 RE voila mon dessin sur le quelle je travaille : file:///C:/Documents%20and%20Settings/nemotek/Bureau/exeple1.bmp@bonuscad non c'est pas ça ,moi je veux calculer la distance minimal et la distance maximal entre les lwpoyligne . cordialement
Invité spartacuss Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 re :red le lien http://dl.free.fr/ ne marche pas et le truc que j'ai fait aussi, je c pas pourquoi le lisp (me déteste )
bonuscad Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 @bonuscad non c'est pas ça ,moi je veux calculer la distance minimal et la distance maximal entre les lwpoyligne . Ha bon! :exclam: Je ne vois pas comment (gile) a pus extraire le milieu entres sommets concomitants sans avoir la distance entre ceux-ci :casstet: Mais je te laisse juge de ton besoin.Pour moi il me semblait qu'un (mapcar 'max (list distances calculées)) et un (mapcar 'min (list distances calculées)) placé judicieusement dans sa routine... Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Invité spartacuss Posté(e) le 25 mai 2011 Posté(e) le 25 mai 2011 re merci bonuscad et Fraid. donc je vais reformuller mon problème (comme le programme de gile)_plusieurs polylignes P et Q , ......., des 2D,_la polyligne P a pour sommets P1,P2,P3.....P(n-1),Pn._la polyligne Q a pour sommets Q1,Q2,Q3.....Qn-1),Qn._avec P1(Xp1,Yp1) et Q1(xq1,Yq1)......Pn(Xpn,Ypn,Zpn) et Qn(Xqn,Yqn). je veux récupérer la distance minimal entre chaque deux polylignes . 2eme chose je veux récupéré le rayon de courbure de ces polylignes . cordialement
Invité spartacuss Posté(e) le 30 mai 2011 Posté(e) le 30 mai 2011 bonjour je travaille toujours sur le même projet : je commence d'abord par le calcul de la distance entre les différents points du dessin ,et je vérifie ces distancesavec une distance si la distance que je calcule (dist) est inférieur a 50 donc il faut lancer une alerte et dessiner une ligne entre les extrémités de (dist) mon programme calcule extraire les cordonnes des point et calcule les distance mais pour l’alerte ou la ligne non . (defun get_dwgnam () (if (= (getvar 'dwgtitled) 1) (setq xy(vl-filename-base (getvar 'dwgname))) ) (setq draww(strcat xy "_LST.txt")) ) (defun c:lwp (/ n center ent m cor allc) (setq in (list (cons 0 "INSERT"))) (setq ins(ssget "x" in));selection (setq len (sslength ins));le nombre des element dans ins (setq nmblock(cdr (assoc 2 (entget (ssname ins 0))))) (setq y(entget (cdr( assoc -2 (tblsearch "block" nmblock))))) (setq le (length y)) ;==°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°== (setq ent(tblobjname "BLOCK" "ld")) (setq nam (list)) (while (setq ent (entnext ent)) (if (eq "LWPOLYLINE" (cdr (assoc 0 (entget ent)))) (progn (setq nam(append nam (list(cdr (assoc -1 (entget ent)))))) ))) (setq cord (list)) (setq c -1) (while (< (setq c (1+ c)) (length nam)) (setq entg (entget (nth c nam))) (setq li (list)) (setq n 0) (repeat (length entg) (setq z (car (nth n entg))) (if (= z 10) (progn (setq li (append li (list (cdr (nth n entg))))) ) ) (setq n (1+ n)) ) (setq cord (append cord (list li)) ) ) ;==°_°====°_°====°_°====°_°=== la boucle pour calculler la distance ==°_°====°_°====°_°====°_°====°_°====°_°== (setq r 0 j 0 k 0 dist2 nil a (length cord) b (length (nth r cord)) c (length (nth (1+ r) cord)) ) (while (< r a) (while (< j b) (while (< k c) (setq p1 (nth j(nth r cord))) (setq p2 (nth k (nth (1+ r) cord))) (setq dist (distance (nth j (nth r cord)) (nth k (nth (1+ r) cord)))) (if ( < dist 100) (progn (alert " ooooops ooooops erreur") (command "_.line" p1 p2 "") ) ) (setq k (1+ k)) (setq dist1 (append dist1 (list dist))) ) (setq j (1+ j)) ) (setq dist2 (append dist2 (list dist1))) (setq r (1+ r)) ) (princ dist2) ;==°_°====°_°====°_°====°_°====°_°====°_°====°_°==le fichier listing ==°_°====°_°====°_°====°_°====°_°====°_°====°_°====°_°== (progn (vl-load-com) (setq shell (vla-getInterfaceObject (vlax-get-acad-object) "Shell.Application")) (vlax-invoke-method shell 'ShellExecute (strcat "C:\\Documents and Settings\\nemotek\\Application Data\\Autodesk\\AutoCAD 2009\\R17.2\\fra\\Support\\DR-check\\"(get_dwgnam)) nil nil nil nil ) (vlax-release-object shell) ) (setq hui (strcat "C:/Documents and Settings/nemotek/Application Data/Autodesk/AutoCAD 2009/R17.2/fra/Support/DR-check/"(get_dwgnam))) (setq fil (open hui "w")) (princ cord fil) (princ "\n\n"fil) (princ dist2 fil) (close fil) (princ) ) ] si quilqu'un peut m'aider je suis crevé la :? amicalement
Invité spartacuss Posté(e) le 31 mai 2011 Posté(e) le 31 mai 2011 re enfin voila l'image de mon dessin:http://img219.imageshack.us/img219/8813/exeple.png
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant