Aller au contenu

mateus

Membres
  • Compteur de contenus

    261
  • Inscription

  • Dernière visite

  • Jours gagnés

    2

Tout ce qui a été posté par mateus

  1. Bonjour à tous j'essaie d'utiliser la commande _break (coupure) avant de faire mon raccord
  2. Merci Olivier c'est ce que je pensais mais après le faire dans mon lisp je vais essayer ... Bonne soirée à toi
  3. Merci Olivier mais j'ai déjà essayé même manuellement je n'arrive pas alors peut être que je suis ocmpletement à côté de la plaque que je ne sais pas me servir de la commande mais en tout cas je n'y arrive pas . Mon programme actuel est celui ci. Je ne sais pas à quel moment le coller le code de Didier. ECL2.lsp
  4. j'ai ressayer et voici ce que ça me fait voir schéma ci-joint ma polyligne réseau disparaît, je souhaiterai que la poly reste et que les raccords se fassent de chaque côtés des antennes.
  5. Bonjour Olivier et merci pour ta réponse, j'ai ressayer la commande j'ai essayer avec l'option ajuster mais rien n'y fait je n'arrive même pas manuellement à ajuster la poly réseau aux deux antennes :unsure:
  6. Ce que je cherche à faire c'est simplement ajuster et raccorder en rayon ...
  7. En gros comme montré sur le schéma joint la commande me le fait mais je souhaiterai ne pas voir apparaître les éléments en jaune et faire comme la figure de droite
  8. J'ai essayé d'utiliser la commande "_Fillet" pour raccorder en rayon la poly en rouge avec les piquages en couleur cyan sans faire d'ajustement je n'arrive pas.
  9. je l'ai essayé manuellement ça ne fonctionne pas
  10. Merci Didier pour ta réponse mais c'est juste que je ne comprends pas comment tu veux faire pour faire un raccord rayon si t'as pas encore ajuster. Ci joint la photo qui montre la poly réseau et les piquages. peux tu m'expliquer comment faire fonctionner la commande "_fillet" et à quel endroit dois je la placer parce que j'ai même essayé dans la barre de commande j'ai pas réussi Amicalement ECL2.lsp
  11. Bonjour à vous ! Tout d'abord merci Didier et Gile pour vos explications. (Gile j'ai maintenant compris mon erreur, c'est vrai qu'en sachant que polar attend un point, étant donné que ma variable n vaut un "ename", l'erreur survient.) Merci Je vais essayer de bien me faire comprendre et d'expliquer ce que je souhaite faire pour finir le programme. Pour commencer, j'ai décalé la polyline du trottoir pour obtenir la polyline réseau, ensuite j'ai décalé la poly réseau pour obtenir celle des candélabres. J'ai placé mes 3 points qui permettent de relier le réseau principal aux candélabres. (image ci-jointe "POINTS ANTENNES") en utilisant les fonctions "vla". Maintenant ce qu'il me reste à faire c'est d'ajuster dans un premier temps mes antennes au réseau principal (image ci-jointe: "ajustement" --> ajuster le bout de polyligne jaune avec les antennes en rouge afin d'obtenir le résultat escompté en image ci-jointe "explications ajustements-raccords") Puis terminer par raccorder en rayon (image ci-jointe "raccord-rayon") PT2 et PT3 (les points qui lies les antennes au réseau ) au réseau principal Pour l'ajustement j'ai essayé de procéder avec un ajustement "trajet", en définissant pour chaque piquage deux points intermédiaires qui me permettront de suivre un trajet et donc de réaliser les ajustements. J'ai utilisé la commande "point" que vous pouvez voir dans le programme joint en guise de test (pour voir si les points étaient placés aux bons endroits). Je me suis rendu compte que non (image ci-jointe : "explications ajustement" : le polygone en couleur jaune montre bien que les deux points "ptIntermediaire" "ptTrottoir" (noms des variables dans le programme)que j'ai voulu insérer ne sont pas à la position souhaitée, quant au polygone vert, il montre les points aux endroits où j'aimerai vraiment qu'ils soient pour réaliser la commande "ajuster" "trajet". Voila j'espère être plus clair dans ma démarche. j'aimerai vraiment finir ce bout de programme (je profite de mes deux semaines de vacances pour bosser là dessus avant de devoir rendre le projet mais quand je vois que je coince pour des trucs pareils, je me demande comment je fais pour continuer et persévérer tellement ça me démotive) Merci de votre aide. Amicalement ECL2.lsp
  12. Bonjour alala, je pense que c'est plus simple de faire des ajustements et raccords rayon parce que si c'est une polyline courbée il faudrait faire des arcs et tout tandis ce que si je garde la polyline d'origine et que je fais des ajustements ça serait peut être plus simple. Après je sais pas je demande à voir...
  13. Bonjour à tous, je crée ce sujet parce que je suis coincé avec mon programme pour ajuster et raccorder en "rayon". Pour l'instant je suis coincé au niveau des ajustements. L'ajustement se réalise pour mon premier piquage (deux antènnes) sur la polyligne mais pas pour le reste des piquages. Mon but est de le faire à chaque insertion. Je joins à ce post les lisps permettant de faire fonctionner le programme. Je ne peux pas envoyer le bloc du luminaire car pas possible d'envoyer des formats ".DWG" Ci-dessous le bout de code avec en gras l'endroit ou je suis bloqué. Merci par avance (while (< DistStartPT1 longCandeVla) (setq PT (vlax-curve-getPointAtDist polyCandeVla DistStartPT1)) ;;calcul des pt candélabres (setq ptTrottoir (vlax-curve-getClosestPointTo polyTrottoirVla PT) ) ;;projection des point PT sur poly trottoir (setq PT2 (vlax-curve-getpointAtDist polyReseauVla (- DistStartPT1 (* distResCande 0.5)) ) ) ;;calcul du point PT2 (setq PT3 (vlax-curve-getpointAtDist polyReseauVla (+ DistStartPT1 (* distResCande 0.5)) ) ) ;;calcul du point PT3 (entmake (list (cons 0 "INSERT") (cons 2 "candelabre1") (cons 8 "ICI-RES-ECP-Candélabres") (cons 10 PT) (cons 50 rot) ) ) ;;insertions des blocs candélabres (entmake (list (cons 0 "LWPOLYLINE") (cons 100 "AcDbEntity") (cons 100 "AcDbPolyline") (cons 8 "ICI-RES-ECP") (cons 90 3) (cons 10 PT2) (cons 10 PT) (cons 10 PT3) ) ) (setq lstEnt (cons (entlast) lstEnt)) [b](foreach n lstEnt (command "ajuster" n "" "trajet" PT ptTrottoir "" "") )[/b] ;;tracé des antènnes . (setq DistStartPT1 (+ DistStartPT1 entraxeCande)) ) ;;end while ECL.lsp ASSISTANCE.lsp
  14. Bonjour à tous, j'ai un soucis sur une erreur et je n'arrive pas à me déboguer. l'erreur est la suivante : ; erreur: type d'argument incorrect: point 2D/3D: <Nom d'entité: 7ffff710d60> et le déboguage s'arrête sur cette ligne : (setq pt3 (polar n (+ rot (/ pi 2)) decalageCande)) Je joins le lisp complet Merci par avance courbe_test.lsp
  15. Merci beaucoup Didier ! Merci pour ton aide !! Amicalement
  16. Merci Didier pour ta routine, j'ai compris ton code jusqu'à l'endroit ci-dessous où je fut largué <_< (setq listepol2 (apply 'append listepol)) (setq tmp (vlax-make-safearray vlax-vbDouble (cons 0 (- (length listepol2) 1)))) (vlax-safearray-fill tmp listepol2) (setq mapol(vla-addPolyline space tmp)) (vla-put-Color mapol"10") (setvar "osmode" oldosmode) (princ) Pour l'orientation des blocs par contre, je ne comprends pas car même avec ton code l'orientation se fait mal, j'ai tenté de prendre d'autres blocs et de changer de pc, rien... Je me posais une question aussi que veut dire calcul du paramètre? A quel moment par contre la polyligne est tracée dans le code je ne le vois pas ? C'est quasi ce que j'aimerai faire de mon programme ( je te joins mon schéma comme d'habitude :) ) Merci beaucoup Didier
  17. J'en étais sur que tu viendrai ahaha !! Merci Didier pour ta réponse et pour ta routine dont tu as pris le temps de faire pour m'aider. Tout d'abord concernant cette routine mon but n'est pas de la prendre et de la copier coller mais de comprendre comment d'autres personnes extérieures comme toi fonctionnent. Prendre les bons côtés du code de ces personnes et retravailler ou garder ce que moi j'estime de bon de mon programme (même si ce ne l'est pas pour certain). D'ailleurs, un autre autocadien programmer, pour pas le nommé : Olivier m'avait fait à sa manière avec les fonctions visual lisp ce programme (merci encore et bonjour à toi si tu passes par ici Olivier). Son programme je l'ai gardé et je compte le réutiliser (reprendre sa manière de traiter son programme modifier , rajouter etc.) Pour l'orientation Didier, je sais bien que c'est du pûr autocad mais lors de mes insertions autocad justement ne veut rien savoir. Comme je t'ai dis sur le post précédent lorsque je mets "0" en orientation, ce n'est pas la bonne orientation mais le programme est fluide dans le sens ou il insère automatiquement les candélabres (blocs) par contre si je mets l'orientation qui est "orient" (variable définissant l'angle) le programme perd contrôle, n'est plus fluide du tout, il faut cliquer sur la souris pour que tous les blocs s'insèrent et ne s'insèrent d'ailleurs pas avec la bonne orientation. :unsure: Pour le reste de mon programme je souhaiterai comme montré dans le post 49 joindre mon réseau principal avec mes piquages. J'ai pensé à supprimer la polylign réseau dans un premier temps. Ensuite tracer les droites qui lieraient les piquages (comme montré en photo ci-joint) Pour finir par le raccordement en rayon Bonne soirée ! Il me reste un mois avant la fin du monde !!!! <_<
  18. Bonjour à tous, Ce message s'adresse à tous et toutes mais plus particulièrement à Didier si tu passe dans le coin :). Cela fait un moment que je n'ai pas eu le temps de retoucher à mon programme mais je m'y remet depuis hier et il beugue toujours au niveau de l'orientation de mes candélabres: Si je choisis de mettre "0" en guise d'orientation pour l'insertion de mes blocs, le programme est fluide mais l'orientation est mauvaise. Sinon , si je choisis de mettre "orient" qui est la variable qui définit la vraie orientation de mes candélabres par rapport à mon réseau, non seulement le programme n'est pas fluide parce que le programme prend en compte une orientation de "1" (je ne sais pas pourquoi) et il faut que je clique autant de fois sur la souris qu'il y aura d'implantations(étrange) celui-ci étant mon premier problème. Le deuxième : raccord-jointure entre mes raccordements et le réseau principal. J'ai enfin pu récupérer mes entités de types polylignes ( pour les droites qui représentent les piquages) et les points d'insertions au nombre de 3 pour chaque piquage. (Merci alala) Ce que j'aimerai faire c'est éventuellement supprimer mon réseau principal et relier le tout avec la commande polyligne mais je ne sais pas trop comment m'y prendre... Merci d'avance. Commandes_v0.1.1.LSP INIT.lsp
  19. Bonsoir alala, Encore merci pour ta réponse, grâce à toi j'ai enfin pu récupérer mes entités ! Je n'ai pas encore testé ce que je voulais faire pour raccorder et joindre à mon réseau principal mais j'essaierai très prochainement. C'est vrai que c'est un peu long car il faut cliquer sur la souris plusieurs autant de fois qu'il y a de luminaires pour terminer le programme. Sait tu d'où vient ce problème par hasard, j'aimerai bien qu'ils se positionnent sans qu'on ai besoin de cliquer plusieurs fois sur la souris. Amicalement
  20. Merci pour ta réponse alala, Le problème c'est qu'il faut que je récupère chaque entité de polyligne tracée pour chaque jonction parce que j'ai utilisé la fonction (foreach) (pour chaque point d'insertion "n" trouvé sur le réseau principal --> tracer les polylignes de jonctions #46 Donc ce que je cherche à faire, c'est de récupérer tous mes noms d'entité (polyligne et même points, voir schéma d'explication joint au #48 "Explications_details_entitees.pdf" en utilisant des listes comme tu as dis alala mais de façon à ce que je les récupère pour chaque jonctions. Amicalement
  21. Bonjour alala, en fait c'est bien ça que je veux faire (utiliser entlast) pour récupérer mes entités mais je veux les récupérer pour chacune de mes jonctions comme tu peux le voir dans mon programme au post #46 (fonction n°8). Je ne trouve pas le moyen de récupérer toutes les entité car (entlast) me retourne le dernier élément en vue (progn ;;tracé des jonctions du côté "rouge" (foreach n lst_pt ;;pour chaque point d'insertion existant dans la liste "lst_pt" on créer les points permettant de réaliser les jonctions (setq pt3 (polar n (+ orient (/ pi 2)) decalageCandelabre) pt4 (polar n (+ orient pi) (/ decalageCandelabre 2)) pt5 (polar n (+ orient 0) (/ decalageCandelabre 2)) ) (command "polylign" n pt3 "");; EXEMPLE POUR CETTE LIGNE : ICI SI JE VEUX RECUPERER LA POLYLIGNE QUI DEBUTE DU POINT "n" AU POINT "pt3", LE PROBLEME EST QUE CELA ME RETOURNE LA DERNIERE ENTITEE TRACEE CONNUE (command "polylign" n pt4 "");;RECUPERER ENTITE (command "polylign" pt4 pt3 "");;RECUPERER ENTITE (command "polylign" n pt5 "");;RECUPERER ENTITE (command "polylign" pt5 pt3 "");;RECUPERER ENTITE ;;tracé des jonctions ======================= [[ ICI IL FAUT RECUPERER LES ENTITES POUR FINALISER PAR LE RACCORD ]] ==================================== Amicalement
  22. Re bonsoir Didier, au même titre que le souhait de récupérer les noms d'entités de mes polylignes, j'aimerai récupérer également récupérer celles de mes points (pt3 pt4 pt5 pt6 pt7 pt8)pour chaque jonctions avec le réseau principal toujours. Merci d'avance Amicalement.
  23. Bonjour Didier et merci pour ta réponse, En fait je souhaiterai récupérer les noms de mes entités des mes jointures ( ex : (<Nom d'entité: 7ffff8c6f30>) pour pouvoir faire rappel à eux afin de les joindre au réseau principal. Merci d'avance Didier
  24. Bonjour Didier : Merci encore pour ta réponse malgré le temps que tu n'as pas forcément. En fait j'ai pas le choix j'ai mis tellement de temps à me mettre à programmer car j'ai bloqué complètement dessus. c'est pas faux, mais c'est que je vois que le temps avance et qu'il ne me reste plus beaucoup de temps car mon projet est loin d'être fini encore. j'ai décidé de dire à l'utilisateur de cliquer sur deux points pour que je me base sur celui-ci pour implanter la suite de mon programme (car plus facile, je connais déjà les deux sommets de la polyligne) Le décalage par rapport à l'alignement est le réseau principal d'éclairage donc c'est sa distance de décalage que je demande. Le côté du réseau comme tu pourras le voir sur les pdf , c'est le côté du réseau principal que l'utilisateur aura choisit pour implanter ses luminaires(candélabres) Ici le décalage des candélabres c'est celui qui part du réseau principal d'éclairage jusqu'aux points d'insertions des candélabres. (la distance des blocs "assistants" de part et d'autre du réseau est égale à ce décalage) Je te joins à ce #post, 4 pdf qui contiennent les explications graphiques de ce que je souhaite faire avec le programme. Mes 3 problèmes actuellement sont: (en dehors de la mise en forme, optimisation du code, car je n'ai malheureusement plus le temps de retoucher le programme tel qu'il est défini désormais, je souhaite juste débloquer les derniers points ) - L'orientation des candélabres qui n'en fait qu'à sa tête, je ne comprends pas pourquoi ils s'orientent mal - Le fait de devoir cliquer à chaque fois sur la souris pour faire apparaitre les piquages des candélabres (je ne sais pas si cela te le fais aussi avec ton post mais avec 2 ordi essayés, l'erreur y est encore.) - Récupérer mes entités de polylignes sous forme de liste pour pouvoir joindre et raccord avec rayon sur le réseau principal. Merci beaucoup pour l'aide Amicalement. Explications phase 1-2.pdf Explications phase 3-4.pdf Explications phase 5.pdf Explications_details_entitees.pdf
  25. Bonjour, Est ce que quelqu'un pourrait me dire comment récupérer mes entités et ce à chaque jonction (fonction n°8) de mon programme joint en post #46, c'est important je dois rendre mon projet d'étude dans un mois et il faut que je puisse résoudre cela avant de poursuivre. Merci bien Amicalement
×
×
  • 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é