Davizero Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 Bonjour, Avec les polylignes j'ai accès à la "largeur globale du segment" dans les proporiétés de l'objet,mais propriété qui n'existe pas pour les lignes. Je suis donc obligé de retracer en polyligne par dessus mes lignes pour avoir la largeur désirée :Bcp de temps passé!!!! Comment pourrais-je trouver une autre solution? Merci d'avance.
bonuscad Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 Commande "PEDIT"option "Multiple"Choisir tes lignesRépondre "Oui" pour les convetir en polyligneoption "Epaisseur"Donne la largeur voulue pour tes segments Et voilà! Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Davizero Posté(e) le 7 janvier 2005 Auteur Posté(e) le 7 janvier 2005 Merci, Ok pour une manip trait par trait,mais est-il possible de faire la même chose en sélection rapide "toutes les lignes d'un même calque". Ou est-il possible de créer un bouton de raccourci qui copierait les propriétés d'une polyligne jusqu'à transformer une ligne en polyligne.... ptet difficile, mais ça serait le pied!!!
Patrick_35 Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 Oui, avec un filtre en transparent durant la sélection --> '_filter @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
bonuscad Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 L'option "Multiple" sert justement à obtenir l'application de transformation sur TOUTES les lignes sélectionnées. Si tu veux faire ça que sur un calque précis utilise la commande "'_FILTER" au message "Choix des Objets". Je pense que tu as besoin quand même d'une formation de base ;) Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius
Pako Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 est-il possible de faire la même chose en sélection rapide "toutes les lignes d'un même calque". La commande _FILTER peux faire un ensemble de sélection rapide dans un dessin courrant ! Il suffit seulement d'ajouter à la liste ( Objet = Ligne & Layer = NomClaque ) et l'appliquer à tous le dessin (_ALL) ! A+ ;) l'ACADien ! http://img124.exs.cx/img124/7999/start.gif
Pako Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 On dégaine vite, ici ! Bravo Patrick_35 ! On a même plus le temps d'écrire ! l'ACADien ! http://img124.exs.cx/img124/7999/start.gif
Patrick_35 Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 éh, éh, j'ai pris ce qu'il fallait http://smileys.smileycentral.com/cat/36/36_1_40.gif @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Davizero Posté(e) le 7 janvier 2005 Auteur Posté(e) le 7 janvier 2005 Je vois que je tombe sur des bons et pour la formation de base je suis d'accord!!! Pour mon souci, si je veux récupérer tous les arcs et toutes les lignes de plusieurs calques (Ø32 et Ø40) pour pouvoir les transformer très rapidement en polyligne afin de jouer ensuite sur leur largeur. Et cet manip me serait utile pour tous mes dessins puisque je travaille tjs avec les mêmes noms de calques... et que rencontre tjs ce problême... What's the solution dans la chronologie? Si je la récupère, je la colle sur mon écran et je ne vous embête plus... Merci.
Patrick_35 Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 Fait un script C'est Tramber qui va content, je viens de donner son lien :exclam: @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Eric Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 Sinon il y a aussi la possibilité d'affecter une épaisseur d'impression directement à un calque ou voir directement sur les objets en les sélectionnant et en leur affectant l'épaisseur par la case épaisseur de la barre d'outil propriétés ou directement dans les propriétés Eric est formateur, revendeur sur AutoCAD LT, DraftSight, ZWCAD, SketchUp et PDF2CAD
Tramber Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 Je viens de faire la manip : D'abord un déplacement fantôme de 0,0 de mes entités filtrées (avec la selection rapide ou un filtre). Ensuite je tape PEDIT, option MultipleAu choix des objets je dis P, comme Précédent, ENTREEJe choisis l'option Epaisseur (ou Largeur ca dépend de la version) puis je donne mon epaisseur. ...quoi ?....ben voilà, c'est tout.(bon, tu peux aussi faire un Joindre, si tu veux rassembler les entités) C'est une manip sans script, mais merci au mangeur de crèpes pour son lien.Je note un bon point :cool: [Edité le 7/1/2005 par Tramber] Bureau d'études dessin. Spécialiste Escaliers Développement - Formation ./__\. (.°=°.)
rebcao Posté(e) le 7 janvier 2005 Posté(e) le 7 janvier 2005 le filtre pour les arcs et lignes pourrait ressembler à ça : (commande FILTER, penser à enregistrer les filtres) : ** Début OR ** Début AND objet = ligne calque = Ø32 ** Fin AND ** Début AND objet = arc calque = Ø32 ** Fin AND** Fin OR etc. une fois que les filtres existent tu peux utiliser cette MACRO (créer une icône) : ^C^Cselect;\filter;p;;_pedit;m;p;;J;0.00;; 1. tu sélectionnes tous les objets concernés... 2. tu choisit ou crée le filtre dans FILTER 3. cliquer sur APPLIQUER 4. PEDIT automatique avec JOINDRE y a plus qu'à tester... Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @)
jpeg Posté(e) le 26 janvier 2005 Posté(e) le 26 janvier 2005 bonjour, pour transformer des lignes en polylignes j'utilise ce lispà Bientôt ;;; mpedit.lsp;;; ;;; Copyright 1997 by Autodesk, Inc.;;;;;; Permission to use, copy, modify, and distribute this software;;; for any purpose and without fee is hereby granted, provided;;; that the above copyright notice appears in all copies and;;; that both that copyright notice and the limited warranty and;;; restricted rights notice below appear in all supporting;;; documentation.;;;;;; AUTODESK PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.;;; AUTODESK SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF;;; MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. AUTODESK, INC.;;; DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE;;; UNINTERRUPTED OR ERROR FREE.;;;;;; Use, duplication, or disclosure by the U.S. Government is subject to;;; restrictions set forth in FAR 52.227-19 (Commercial Computer;;; Software - Restricted Rights) and DFAR 252.227-7013©(1)(ii) ;;; (Rights in Technical Data and Computer Software), as applicable.;;; ;;;;;;============================================================================;;;;;; Multiple objects can be selected for the equivalent of the pedit operation;;; on polylines. Objects that are not polylines will be filtered out of the;;; selection set.;;;;;; ===================== load-time error checking ============================ (defun *merr* (msg) (setq *error* m:err m:err nil) (princ)) ;;;--------------------------------------------------------------------------;;; Command-line entry point for mpedit (defun c:mpedit (/ cmde) (setq m:err *error* *error* *merr* cmde (getvar "CMDECHO") ) (setq oldplinetype (getvar "PLINETYPE")) (setvar "PLINETYPE" 2) (setvar "CMDECHO" 0) (setq plines (ssget '( (-4 . " (0 . "POLYLINE") (0 . "LWPOLYLINE") (0 . "ARC") (0 . "LINE") (-4 . "OR>") ) ) ) (convert plines) (if plines (mpedit ss) ;after conversion, plines sset is duplicated in ss (princ "No polylines selected.") ) (setvar "CMDECHO" cmde) (setq *error* m:err m:err nil) (setq ss nil) (setq plines nil) (setvar "PLINETYPE" oldplinetype) (princ)) ;;; mpedit functionality and switch cases based on kword input operation (defun mpedit (plines / opt newWidth) (command "_.undo" "_begin") (while (/= opt "eXit") (progn (initget 0 "Open Close Ltype Decurve Fit Spline Width eXit") (setq opt (getkword "Open/Close/Width/Fit/Spline/Decurve/Ltype gen/eXit : ")) (if (not opt) (setq opt "eXit")) (if (= opt "Open") (chgplopen plines) );if Open (if (= opt "Close") (chgplclose plines) );if Close (if (= opt "Ltype") (chgltgen plines) );if Ltype gen (if (= opt "Decurve") (chgdecurve plines) );if Ltype gen (if (= opt "Fit") (chgfit plines) );if Ltype gen (if (= opt "Spline") (chgspline plines) );if Ltype gen (if (= opt "Width") (progn (initget 69) (setq newWidth (getdist "Enter new width for all segments: ")) (chgplwidths plines newWidth) );progn );if Width );progn );while (command "_.undo" "_end")) ;;; Pline width change (defun chgplwidths (plines newWidth / count ent subEntity currVertex) (setq count 0) (while (< count (sslength plines)) (setq ent (entget (ssname plines count))) (if (= (cdr (assoc 0 ent)) "LWPOLYLINE") (command "_.pedit" (ssname plines count) "_width" newWidth "_exit") (progn ;polylines (setq subEntity (entnext (ssname plines count))) (setq currVertex (entget subEntity)) (while (not (equal "SEQEND" (cdr (assoc 0 currVertex)))) (setq currVertex (subst (cons 40 NewWidth) (assoc 40 currVertex) currVertex)) (setq currVertex (subst (cons 41 NewWidth) (assoc 41 currVertex) currVertex)) (entmod currVertex) (setq subEntity (entnext (cdr (assoc -1 currVertex)))) (setq currVertex (entget subEntity)) );while (entupd (ssname plines count)) );progn );if (setq count (1+ count)) );while) ;;; Pline modification to close(defun chgplclose (plines / count new70) (setq count 0) (setq count 0) (while (< count (sslength plines)) (command "_.pedit" (ssname plines count) "_close" "_exit") (setq count (1+ count)) );while) ;;; Pline modification to open(defun chgplopen (plines / count) (setq count 0) (while (< count (sslength plines)) (command "_.pedit" (ssname plines count) "_open" "_exit") (setq count (1+ count)) );while) ;;; Pline vertex linetype generation switch (defun chgltgen (plines / count new70) (setq count 0) (initget 0 "ON OFF Exit") (setq opt (getkword "Full PLINE linetype ON/OFF : ")) (if opt opt "eXit") (if (= opt "ON") (while (< count (sslength plines)) (setq ent (entget (ssname plines count))) (setq new70 (cons 70 (logior 128 (cdr (assoc 70 ent))))) (setq ent (subst new70 (assoc 70 ent) ent)) (entmod ent) (setq count (1+ count)) );while );if on (if (= opt "OFF") (while (< count (sslength plines)) (setq ent (entget (ssname plines count))) (setq new70 (cons 70 (boole 6 128 (cdr (assoc 70 ent))))) (setq ent (subst new70 (assoc 70 ent) ent)) (entmod ent) (setq count (1+ count)) );while );if off) ;;; Pline decurve(defun chgdecurve (plines / count) (setq count 0) (while (< count (sslength plines)) (command "_.pedit" (ssname plines count) "_decurve" "_exit") (setq count (1+ count)) );while) ;;; Pline curve fit (defun chgfit (plines / count) (setq count 0) (while (< count (sslength plines)) (command "_.pedit" (ssname plines count) "_fit" "_exit") (setq count (1+ count)) );while) ;;; Pline spline fit(defun chgspline (plines / count) (setq count 0) (while (< count (sslength plines)) (command "_.pedit" (ssname plines count) "_spline" "_exit") (setq count (1+ count)) );while) ;;; Convert arcs and lines to polylines;;; ss is retained as a duplicate of the plines selection set because;;; after conversion, new handles are assigned to what were arcs and lines(defun convert (plines / count doconvert opt) (initget 0 "Yes No") (setq opt (getkword "Convert Lines and Arcs to polylines? : ")) (if (not opt) (setq opt "Yes")) (if (= opt "Yes") (progn ;if yes -- convert lines and arcs to polylines (setq ss (ssadd)) (setq count 0) (while (< count (sslength plines)) (if (or (equal (assoc 0 (entget (ssname plines count))) '(0 . "ARC")) (equal (assoc 0 (entget (ssname plines count))) '(0 . "LINE")) );or (progn (command "_.pedit" (ssname plines count) "_yes" "_exit") (ssadd (entlast) ss) );progn true (ssadd (ssname plines count) ss) );if (setq count (1+ count)) );while );progn yes (progn ;if no -- do not convert (setq ss plines) (setq count 0) (while (< count (sslength ss)) (if (or (equal (assoc 0 (entget (ssname ss count))) '(0 . "ARC")) (equal (assoc 0 (entget (ssname ss count))) '(0 . "LINE")) );or (progn (ssdel (ssname ss count) ss) (setq count (1- count)) );progn true (princ) );if (setq count (1+ count)) );while );progn no );if)(princ) Map3d 2022 - Covadis 17.1i + Autopiste
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