alala
Membres-
Compteur de contenus
289 -
Inscription
-
Dernière visite
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par alala
-
Problème gisement + Abscisse sur une droite
alala a répondu à un(e) sujet de mateus dans LISP et Visual LISP
Désolé la commande est : (command "_break" ss point point2 "@") donc dans ton cas : (command "_break" ent pt3 pt4 "@") mais avec tout tes point je ne vois pas l'intérêt de faire des coupures quand tu peu créer des lignes ou polylignes complètes! Surtout que si je ne me trompe pas ta polyligne de base est systématiquement droite? -
Problème gisement + Abscisse sur une droite
alala a répondu à un(e) sujet de mateus dans LISP et Visual LISP
Bonjour, la seule fonction dont tu a besoin est celle-ci : (command "break" ss point point2 "@") ss est le entname de la polyligne et point et point2 les points de coupure. @+ -
Je conseille d'ajouter de la hachure (SOLID et "classique") c'est assez intéressant également de voir le résultat (certains utilisent la fonction, d'autre les redessinent). J'aurais bien dit oui, mais 700km tous les matin c'est pas simple! J'ai 3 ans de Revit, 5 ans de Autodesk Architectural Desktop, 12 ans d'Autocad, 5 ans de MAP (via CIVIL), mais des lacunes technique en bâtiment, malgré un certain nombre d'études de faisabilité, avec dessin de bâtiment à mon actif. Enfin si y'a une succursale à Dieppe je veut bien postuler ;)
-
bonjour (defun c:comptebloc ( / ADoc ss n monbloc Imb) (vl-load-com) (setq ADoc (vla-get-activedocument (vlax-get-acad-object))) (setq ss (ssget "_X" '((0 . "INSERT")(410 . "MODEL")))) (setq n 0) (vlax-for monbloc (vla-get-ActiveSelectionSet ADoc) (if (setq Imb (Imbriquebloc monbloc 0)) (setq n (+ n Imb)) ) (setq n (1+ n)) ) (princ n)(princ) ) (defun Imbriquebloc ( bloc compte / Inbloc) (vlax-for Imbloc (vla-item (vla-get-blocks ADoc)(vla-get-name bloc)) (if (eq (vla-get-objectname Imbloc) "AcDbBlockReference") (progn (if (setq Imb(Imbriquebloc Imbloc 0)) (setq compte (+ compte Imb)) ) (setq compte (1+ compte)) ) ) ) ) Quelque chose comme ça? edit : petite erreur!
-
Bonjour, C'est exactement le genre de test que nous réalisions. Et la on avais déjà de grosses surprises. Avec en plus un plan de base un peu ancien, pas à l’échelle et comportant quelques cotes contradictoires et/ou étranges pour observer les réaction. Tout cela dépend bien sur du besoin, faire du neuf, reprendre de l'existant, savoir faire ou utiliser un levé terrain, ... il faudrait un test pour chaque tache à réaliser mais cela prend beaucoup de temps. Parfois il est plus important de tester le comportement devant la difficulté (analyser et reporté l’erreur) que le dessin lui même. @+
-
Ajustement et raccord sur polyligne
alala a répondu à un(e) sujet de mateus dans LISP et Visual LISP
Bonjour, plutôt que d'ajuster il serais peu être plus judicieu de créer des lignes ou polylignes entre tes éléments. Surtout que si je ne me trompe pas tu a toutes les coordonnées de ceux-ci. @+ -
:blink: J'aimerais avoir cette capacité à modélisé aussi vite et bien sous Autocad. Chapeau!
-
Bonjour, un sujet en relation : http://cadxp.com/topic/35020-fonction-error/ Donc dans ton cas il peu être possible de faire ceci : (defun *error* (errmsg) (setvar "osmode" accro) (setvar "cmdecho" echo) (if cc (setvar "clayer" cc) ) (if errmsg (print errmsg) ) (princ) ) Personnellement dans un premier temps je passerai le changement de calque dans la fonction Posetxt de manière à ce qu'il soit le plus rapide possible et presque invisible pour l'utilisateur final. (defun Posetxt (num pt haut /) (setq cc (getvar "clayer")) (setvar "clayer" "zfe") (entmake (list (cons 0 "TEXT") (cons 100 "AcDbEntity") (cons 100 "AcDbText") (cons 1 (rtos num)) (cons 10 (trans (cdr pt) 1 0)) (cons 11 (trans (cdr pt) 1 0)) (cons 8 "zfe") (cons 40 haut) ) ) (setq pt2 pt) (setvar "clayer" cc) (princ) ) @+
-
Bonjour, Le script c'est "simple". Il suffit d'écrire dans l'ordre les commandes transmises à AutoCad, avec un séparateur qui indique la validation entre chaque commande (retour à la ligne ou espace ou ;) Par exemple si dans AutoCad tu souhaite modifier la couleur du calque "monbeaucalqueamoi" en couleur 15 tu peu taper : -calque co 15 monbeaucalqueamoi Avec la prise en compte de la dernière entrée sinon tu teste dans la fonction -calque En sachant donc qu'un grand nombre de fonction qui donnent accès à une fenêtre de configuration ont leur équivalent en ligne de commande avec un "-" devant. En espérant avoir été clair. @+
-
Bonjour, effectivement un script utilisé avec un logiciel tel que superautoscript pour généraliser cela sur un certain nombre de plan me semble le plus rapide à mettre en œuvre. Par exemple: -dwgunits 6 2 4 O O N Pour un plan en Mètres. @+
-
bonjour, A tu testé ceci dans le Lisp de LeeMac? @+
-
Bonjour, c'est pour cette raison que je n'ai jamais parlé de changer le h-cadre d'emplacement. Dans le cas créé ici le cadre est agrandis par la déplacement vers la gauche + vers le bas de la partie gauche du cadre. Comme il y a une contrainte de colinéarité la partie droite suit, mais pas le paramètre, d’où l'erreur qui grandis en même temps que le cadre s'élargis. Pour les autres blocs ils sont très intéressant, je vais voir si je peu t'orienter sur les procédures à appliquer pour réaliser ce que tu souhaite. De plus ce sont des bloc qui me semblent utiles pour de nombreux utilisateurs, mais je me trompe peu être!
-
Bonjour, j'avais fait un truc (crade) pour caler les fenêtres de présentation les unes par rapport aux autres en Lisp, mais dans une même présentation (par contre pas adapté si l'on a des scu différents dans chaque fenêtres) : (defun c:CentrerVue ( / FenetreBase FenetreCible VlaFenetreCible VlaFenetreCibleVer) (vl-load-com) (princ "Choisir la fentre de référence : \n") (setq FenetreBase (ssname (ssget "_:E:S" '((0 . "VIEWPORT"))) 0)) (princ "Choisir la fentre de cible : \n") (setq FenetreCible (ssname (ssget "_:E:S" '((0 . "VIEWPORT"))) 0)) (setq VlaFenetreCible (vlax-ename->vla-object FenetreCible)) (if (eq (vla-get-displaylocked VlaFenetreCible) :vlax-true) (progn (setq VlaFenetreCibleVer 1) (vla-put-displaylocked VlaFenetreCible :vlax-false) ) ) (command "._mspace") (command "cvport" (cdr(assoc 69 (entget FenetreCible)))) (command "zoom" "c" (cdr(assoc 12 (entget FenetreBase))) "") (command "._pspace") (if (eq VlaFenetreCibleVer 1) (vla-put-displaylocked VlaFenetreCible :vlax-true) ) ) Si ça peu aider!
-
Bonjour, Pas loins encore une fois,il semble que tu ai ajusté le cadre de ton action mais pas les objets. Lorsque tu clic droit sur l'action tu a un menu qui te propose "jeu de sélection" puis "modifier le jeu de sélection". Il te demande ensuite le cadre de l'action d'étirement (ici il suffit qu'il soit autour de la partie gauche de ton cadre à étirer). Puis "Sélectionner l'objet à ajouter au jeu d'actions ou [supprimer]". Ici il te suffira de choir "Supprimer" puis de choir les objets que tu souhaite ne pas voir dans ta sélection (les éléments de la voie). Il ne devrais te rester dans la sélection, que le cadre, sa hachure et le paramètre "h-cadre". Par contre si tu souhaite que la profondeur ne varie pas en fonction de la largeur du cadre il faudra déplacer le paramètre, dans l'état cela risque d'être assez complexe, voir impossible (ou alors avec des contraintes, et il est peu conseillé de mélanger contraintes et paramètres dans un même bloc dynamique. Les bloc Dynamiques sont très intéressant, très utiles, mais très complexe ety surtout plein de limites parfois peu compréhensibles, et dans une logique parfois contradictoire (et quelques bug bien pénibles). Personnellement j'en use de plus en plus, mais le constat est que cela peu perturber certains utilisateurs. @+
-
Très intéressant, merci!
-
Oui! Tu garde ton paramètre et ton action sur la largeur de voie. Mais sur l'action d'étirement de la largeur du cadre tu ne prend que les objet à étirer dans le cadre. ou alors tu souhaite qu'une longueur dépende d'une autre, et la c'est une autre histoire. Pour avoir des limites tu peu aller dans les propriétés des paramètres de dimensions posés et imposer des limites hautes et basses.
-
Bonjour, tu y était presque, supprime ta voie et ton paramètre de largeur de voie du jeu de sélection de la largeur de ton cadre et le tour est joué. Tu peu modifier le jeu de sélection de l'action si tu fait un clic droit sur celle ci. Et au passage tu peu réduire la largeur du cadre de cette action. Pour entrer directement les longueurs tu à tes paramètres qui apparaissent dans ta fenêtre de propriété du bloc. Au pire tu peu lier un paramètre à un attribut. @+
-
Problème gisement + Abscisse sur une droite
alala a répondu à un(e) sujet de mateus dans LISP et Visual LISP
bonjour, Il suffira d'entrer la création de la liste dans la boucle. (setq malistedepoly '()) (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 "");;RECUPERER ENTITE (setq malistedepoly (cons malistedepoly entlast)) (command "polylign" n pt4 "");;RECUPERER ENTITE (setq malistedepoly (cons malistedepoly entlast)) (command "polylign" pt4 pt3 "");;RECUPERER ENTITE (setq malistedepoly (cons malistedepoly entlast)) (command "polylign" n pt5 "");;RECUPERER ENTITE (setq malistedepoly (cons malistedepoly entlast)) (command "polylign" pt5 pt3 "");;RECUPERER ENTITE (setq malistedepoly (cons malistedepoly entlast)) ;;tracé des jonctions ======================= [[ ICI IL FAUT RECUPERER LES ENTITES POUR FINALISER PAR LE RACCORD ]] ==================================== (command "inserer" "candelabre1" pt3 1 1 orient "") ;; insère les candélabres aux points de piquages [[ PB REDEFINIR LANGLE ]] ) A voir ensuite comment tu souhaite exploiter cette liste qui contiendra tous les noms de polylignes crées. Personnellement j'ai tendance à faire le moins de grosses listes possibles (de plus en plus longues à traiter) donc dans ton cas si tu le peu il serait intéressant d'exploiter les informations que tu récolte au plus vite, donc dans la boucle. En testant ton Lips je me pose une question (peu être bête) mais pourquoi faire une choix de placement d'un coté ou de l'autre de la ligne principale dans un premier temps avec la souri, puis avec un choix de couleur ensuite? Si c'est pour une présentation pense à bien réfléchir à l'utilisateur final et son approche du "logiciel". les temps d'exécution notamment me semblent un peu long. @+ -
Problème gisement + Abscisse sur une droite
alala a répondu à un(e) sujet de mateus dans LISP et Visual LISP
D'ou l'intérêt defaire une liste par exemple: (setq malistedepoly '()) (command "polylign" n pt3 "") (setq malistedepoly (cons malistedepoly entlast)) (command "polylign" n pt4 "") (setq malistedepoly (cons malistedepoly entlast)) (command "polylign" pt4 pt3 "") (setq malistedepoly (cons malistedepoly entlast)) (command "polylign" n pt5 "") (setq malistedepoly (cons malistedepoly entlast)) (command "polylign" pt5 pt3 "") (setq malistedepoly (cons malistedepoly entlast)) Donc la liste "malistedepoly" contiendra les nom d'entités désirés dans l'ordre ou elle ont été crées. A toi ensuite d'exploiter la liste à ta convenance. -
Problème gisement + Abscisse sur une droite
alala a répondu à un(e) sujet de mateus dans LISP et Visual LISP
Bonjour, Si je comprend bien le soucis, pourquoi ne pas te faire une liste à la création des entités? Lorsque tu fait une polyligne tu peu poursuivre avec un entlast que tu enregistrera dans une liste dans un ordre qui t'arrange pour ensuite réutiliser ces entités à ta convenance. Le plus simple serait encore de créer les polylignes avec un Entmakex comme ça tu pourrais récupérer l'entité dés sa création sans passer par un entlast. @+ -
[Résolu] Cadre (bloc dynamique) multiple de A4
alala a répondu à un(e) sujet de Azerty dans Routines LISP
Pour les flèches superposés je le déconseillerais, mais dans ton cas tu souhaitait avoir un élargissement vers le bas/droite de ton cadre, donc pas trop le choix. Personnellement dans mes test je place les paramètre un peu plus loin (au bord des 210/297 mon cadre étant plus petit à cause des marges) et tout fonctionne, mais suivant le besoin il faut effectivement adapter l'outil. Content que tu ai pu réaliser ton besoin. -
Je pense principalement aux textures Revit qui s'exportent très bien dans Max par exemple mais qui sont incompatibles avec presque tous les plugin de rendu sous Revit que j'ai pus testé. Devoir refaire les textures plusieurs fois car celle-ci sont imposé par le render est une perte de temps, surtout si l'on doit produire un projet Revit à rendre à un client avec des texture qu'il pourra utiliser imédiatement (donc texture intégrés à Revit.) Toutefois pour le prix, si l'on fait du rendu et que l'on a pas les moyen (financiers ou technique) de passer à 3DsMax je pense que c'est interressant!
-
[Résolu] Cadre (bloc dynamique) multiple de A4
alala a répondu à un(e) sujet de Azerty dans Routines LISP
C'est donc bien possible avec un bloc Dynamique. J'explique la procédure de travail : - Ouvrir un nouveau plan - BEDIT en ligne de commande ou Outils -> Editeur de blocs - choisir <Dessin courant> - dessiner un cadre de la taille désiré (210x297 - les marges donc 10mm de sur chaque bord si besoin = 190x277) aux coordonnées 0,0 - dessiner les marques de pliage à l'extérieur du cadre de façon à obtenir les 4 coins marqués - dans la palette d'outils de création de blocs, choisir, dans l'onglet "paramètres", la fonction "Linéaire" - placer tel une côte ce paramètre sur le bas (à l'horizontal) du cadre précédemment dessiné (de gauche à droite de préférence) - ouvrir les propriétes de l'élément déposé et changer dans "jeu de valeurs" : - "Type de dist" -> Incrément - "Dist incrément -> 210 - "Dist minimum - > 190 - changer également la propriété "Nombre de poignées" -> 1 -dans la palette d'outils de création de blocs, choisir, dans l'onglet "paramètres", la fonction "Linéaire" - placer tel une côte ce paramètre sur la droite (à la verticale) du cadre précédemment dessiné (de haut en bas de préférence) - ouvrir les propriétes de l'élément déposé et changer dans "jeu de valeurs" : - "Type de dist" -> Incrément - "Dist incrément -> 297 - "Dist minimum - > 277 - changer également la propriété "Nombre de poignées" -> 1 - dans la palette d'outils de création de blocs, choisir, dans l'onglet "Actions", la fonction "Etirer" - sélectionner le paramètre horizontal - Sélectionner le point ou se trouve la flèche - Dessiner une emprise qui englobe la partie droite (du coté de la flèche du paramètre) du cadre précédemment dessiné - sélectionner le cadre - dans la palette d'outils de création de blocs, choisir, dans l'onglet "Actions", la fonction "Etirer" - sélectionner le paramètre vertical - Sélectionner le point ou se trouve la flèche - Dessiner une emprise qui englobe la partie basse (du coté de la flèche du paramètre) du cadre précédemment dessiné - sélectionner le cadre - dans la palette d'outils de création de blocs, choisir, dans l'onglet "Actions", la fonction "Réseau" - sélectionner le paramètre horizontal - sélectionner les marques de pliage verticale en bas et en haut à droite (du coté de la flèche du paramètre) - distance : 210 - dans la palette d'outils de création de blocs, choisir, dans l'onglet "Actions", la fonction "Réseau" - sélectionner le paramètre vertical - sélectionner les marques de pliage horizontale en bas à droite et à gauche (du coté de la flèche du paramètre) - distance : 297 - dans la palette d'outils de création de blocs, choisir, dans l'onglet "Actions", la fonction "Déplacer" - sélectionner le paramètre horizontal - Sélectionner le point ou se trouve la flèche - sélectionner les marques de pliage horizontale en bas et en haut à gauche (du coté de la flèche du paramètre) - dans la palette d'outils de création de blocs, choisir, dans l'onglet "Actions", la fonction "Déplacer" - sélectionner le paramètre Vertical - Sélectionner le point ou se trouve la flèche - sélectionner les marques de pliage Verticale en bas à gauche et à droite (du coté de la flèche du paramètre) Enregistrer! Enjoy! :D -
[Résolu] Cadre (bloc dynamique) multiple de A4
alala a répondu à un(e) sujet de Azerty dans Routines LISP
Bonjour, l'on peu réaliser cela avec un bloc dynamique avec : - 2 paramètres linéaires - 2 actions d'étirement - 2 actions de réseau Ensuite l'on configure les paramètres d'étirement pour avoir un incrément de 210x297 et le tour est joué. Cela correspondrais à la demande? -
Bonjour, j'ai la même expérience des rendu trop réalites. Souvent les clients ne critiquaient pas le projet mais l'environnement ou toutes autres choses, n'ayant rien à dire sur le projet ou trop d'information à traiter en même temp. Résultat les clients se sentaient peu impliqué, avaient une impression de projet finit et immuable ou leurs choix ne pouvaient pas être pris en compte. Au final ce sont les projets plus succins avec de nombreux choix qui ont pemis souvent d'allez au bout, même si le rendu final est le même l'approche psychologique du client est différente. Pour les rendu Revit je pense qu'ils sont largement suffisant, mais bien trop long, Si Octane peu résorber ce problème à moindre coût c'est un produit à suivre, par contre il faudrait qu'il y ait une reprise totale des projets fait sous revit, il serait "pénible" de devoir appliquer des textures et gérer la végétation (par exemple) dans deux produit pour un même projet. @+
