
JPhil
Membres-
Compteur de contenus
207 -
Inscription
-
Dernière visite
-
Jours gagnés
6
Tout ce qui a été posté par JPhil
-
Pb avec des calque commençant par # avec gel_fen surement de Gilles
JPhil a répondu à un(e) sujet de Fabs dans Routines LISP
Ces caractères spéciaux (- et _) ne posent aucun problème bien au contraire 🙂, les autres sont déconseillés voir à bannir 😉 surtout si tu veux te lancer dans la programmation. En utilisant ce caractère (_) en début de nom de calque, ils apparaitront avant le calque 0. -
Pb avec des calque commençant par # avec gel_fen surement de Gilles
JPhil a répondu à un(e) sujet de Fabs dans Routines LISP
Bonjour, C'est obligatoire les caractères spéciaux dans le nom du calque ($, ¤, #) ? -
Sélection objets dans une fenêtre POLYGONALE
JPhil a répondu à un(e) sujet de rebcao dans AutoCAD 2011
Bonjour, Je remonte le sujet car je rencontre un problème de sélection d'objets dans les fmult. Dans le cas n°1, je peux : - sélectionner tous les objets contenus dans la zone de dessin, - sélectionner uniquement les objets (en magenta) sur le calque Pose, - sélectionner uniquement les objets (en jaune) sur le calque Dépose, - sélectionner uniquement les objets (en bleu) sur le calque Modification, - sélectionner tous les objets contenus dans le cadre en bleu (en balayant un par un c'est bon). Je ne peux pas : - sélectionner tous les objets en dehors des cadres en bleu, - et par conséquence sélectionner uniquement les objets (en magenta ou jaune) en dehors des cadres en bleu. Dans le cas n°2, je peux (dans chacune des fmult) : - sélectionner tous les objets, - sélectionner uniquement les objets (en magenta), - sélectionner uniquement les objets (en jaune), - sélectionner uniquement les objets (en bleu). Je ne peux pas (dans chacune des fmult) : - sélectionner tous les objets contenus dans le cadre en bleu, - sélectionner tous les objets en dehors des cadres en bleu, - et par conséquence sélectionner uniquement les objets (en magenta ou en jaune) en dehors des cadres en bleu. J'ai utilisé et modifié le lisp SelectByVport de (gile) et uniquement utilisé le lisp Special_selections toujours de (gile). Dans SSOC, je pense (mais pas encore testé) qu'il faut modifier le nil afin de pouvoir sélectionner que les objets en rouge ou en jaune : (ssdel (ssname ss 0) (SelByObj (ssname ss 0) "Cp" nil)) Ci-dessous le lisp SelectByVport modifié : (or *acad* (setq *acad* (vlax-get-acad-object))) (or *acdoc* (setq *acdoc* (vla-get-ActiveDocument *acad*))) ;; gc:SelectByVport ;; Retourne un jeu de sélection contenant les objets visibles dans ;; la fenêtre flottante en fonction du mode ;; ;; Arguments ;; vp : une fenêtre flottante (ename) ;; mode : mode de sélection ("_CP" ou "_WP") ;; paramfltrlayercolor : sélection objets par calque (8) ou par couleur (62) ;; fltrlayercolor : nom du calque ou numéro de la couleur (defun gc:SelectByVport (vp mode paramfltrlayercolor fltrlayercolor / elst ss pl pts len inc wid ht xd) (setq elst (entget vp '("ACAD"))) (if (setq pl (cdr (assoc 340 elst))) (if (= "LWPOLYLINE" (cdr (assoc 0 (entget pl)))) (foreach p (entget pl) (if (= 10 (car p)) (setq pts (cons (cdr p) pts)) ) ) ; fin foreach (progn (setq len (vlax-curve-getDistAtParam pl (vlax-curve-getEndParam pl) ) inc (/ len 120) ) (while ( (setq pts (cons (vlax-curve-getPointAtDist pl (setq len (- len inc))) pts ) ) ; fin setq pts ) ) ; fin while ) ; fin progn ) ; fin if lwpolyline (setq cen (cdr (assoc 10 elst)) wid (/ (cdr (assoc 40 elst)) 2.) ht (/ (cdr (assoc 41 elst)) 2.) pts (list (list (- (car cen) wid) (- (cadr cen) ht) (caddr cen)) (list (+ (car cen) wid) (- (cadr cen) ht) (caddr cen)) (list (+ (car cen) wid) (+ (cadr cen) ht) (caddr cen)) (list (- (car cen) wid) (+ (cadr cen) ht) (caddr cen)) ) ) ) ; fin if (if (= paramfltrlayercolor "") (setq fltr '((410 . "Model"))) (setq fltr (list '(410 . "Model") (cons paramfltrlayercolor fltrlayercolor))) ) (vla-ZoomExtents *acad*) (vla-put-Mspace *acdoc* :vlax-true) (setvar 'cvport (cdr (assoc 69 elst))) (setq ss (ssget mode (mapcar (function (lambda (x) (trans (trans x 3 2) 2 1))) pts) fltr ) ) (vla-put-Mspace *acdoc* :vlax-false) (vla-ZoomPrevious *acad*) ss ) ;; gc:GetViewport ;; Invite l'utilisateur à sélectionner une fenêtre flottante ;; Retourne le nom d'entité de la fenêtre (ename) ou nil (defun gc:GetViewport (/ vp typ) (if (/= (getvar 'cvport) 1) (vla-put-Mspace *acdoc* :vlax-false) ) (while (not (and (setq vp (car (entsel "\nSélectionnez la fenêtre: "))) (setq typ (cdr (assoc 0 (setq elst (entget vp))))) (or (= typ "VIEWPORT") (and (setq vp (cdr (assoc 330 elst))) (= "VIEWPORT" (cdr (assoc 0 (entget vp)))) ) ) ) ) (princ (if vp "L'objet sélectionné n'est pas une fenêtre de présentation" "Aucun objet sélectionné" ) ) (setq vp nil) ) vp ) ;; Commandes ;; Sélection par capture (defun c:ssvpc () (ssvpc "" "") ) (defun ssvpc (paramfltrlayercolor fltrlayercolor / vp ss) (if (= (getvar 'tilemode) 1) (alert "Cette commande n'est disponible qu'en espace papier") (progn (setq ss (gc:SelectByVport (gc:GetViewport) "_CP" paramfltrlayercolor fltrlayercolor)) (vla-put-Mspace *acdoc* :vlax-true) (sssetfirst nil ss) ) ) (princ) ) ;; Sélection par fenêtre (defun c:ssvpw () (ssvpw "" "") ) (defun ssvpw (paramfltrlayercolor fltrlayercolor / vp ss) (if (= (getvar 'tilemode) 1) (alert "Cette commande n'est disponible qu'en espace papier") (progn (setq ss (gc:SelectByVport (gc:GetViewport) "_WP" paramfltrlayercolor fltrlayercolor)) (vla-put-Mspace *acdoc* :vlax-true) (sssetfirst nil ss) ) ) (princ) ) (princ "\nEntrez SSVPC pour une sélection par capture, SSVPW pour une sélection par fenêtre.") ;;; ;;; Exemple d'utilisation ;;; (ssvpc 62 108) - Sélection d'objets dont la couleur est 108 ;;; (ssvpc 62 42) - Sélection d'objets dont la couleur est 42 ;;; (ssvpc 8 "Ief-modification-e") - Sélection d'objets dont le calque est Ief-modification-e ;;; (ssvpc 8 "Ief-depos-_-e") - Sélection d'objets dont le calque est Ief-depos-_-e ;;; (ssvpc 8 "Ief-pose-_-e") - Sélection d'objets dont le calque est Ief-pose-_-e ;;; ;;; Puis utiliser Lisp Special_selections ;;; Lancer SSOC ou SSOF - fonctionne uniquement dans une seule fenêtre ;;; et il faut balayer les entités une par une -
Création d'une DLL en Visual Studio 2022.
JPhil a répondu à un(e) sujet de DenisHen dans ObjectARX/DBX, C++, .NET, RealDWG
Je viens de trouver ces sujets : - À qui appartient le code d'un site/logiciel ? >>> ici <<< - La protection par le droit d’auteur spécifique des logiciels >>> ici <<< - Les entreprises font souvent fi de la protection de propriété intellectuelle de leurs logiciels >>> ici <<< Mais alors quoi faire quand on est salarié d'une (grosse) entreprise, coder ou ne pas coder ? -
Numérotation présentation LISP RON variante ?
JPhil a répondu à un(e) sujet de sylarr dans AutoCAD 2020-2024
@sylarr, @Minocia, un début de réponse >>> ici <<< -
Publication de plusieurs folios en PDF avec noms de signet automatique...
JPhil a répondu à un(e) sujet de JPhil dans Pour aller plus loin en LISP
A tout hasard, savez-vous s'il est possible d'avoir au final cette structure : Fichier PDF - "Au Clair de la Lune - Folio 1" - "François à l'Hôtel - Folio 2" Car actuellement j'ai plutôt cette structure qui commence à me géner : Fichier PDF + "Feuilles et vues" - "Au Clair de la Lune - Folio 1" - "François à l'Hôtel - Folio 2" Donc je cherche à savoir s'il est possible de supprimer le signet intermédiaire "Feuilles et vues", mais j'ai l'impression que c'est pas gagné 😕 -
@Cad67 Les domaines Archi et GC c'est là où il y a le plus de monde donc plus de concurrence. Côté système et plus particulièrement l'Elec (courant fort et courant faible) si tu "maîtrises" (j'aime pas dire ce mot car on ne maîtrise jamais totalement un domaine/logiciel) tu trouveras plus facilement du boulot. Pour ta formation tu peux regarder pour le domaine de la clim/ventilation/plomberie. Tu y apprendras à gérer de grosses gaines de ventilation avec les coudes, à gérer les pentes pour la plomberie. Après ça tu verras que la gestion des CDC (chemin de câbles) c'est finger in the nose.
-
Bonjour Cad67, J'ai fait un peu de Revit il y a quelques années et c'est vrai que c'était sympa. Quand tu parles de chiffres, calcul, installation à son compte ... tu m'as fait pensé à un logiciel dont j'avais vu une démo il y a bien 5 ans : https://bimoffice.fr/ Côté modeleur BIM, tu ne pourras pas tout faire, chaque domaine étant bien spécifique. Donc faut bien choisir : archi, génie civile, ... ? L'autre question c'est, veux-tu te tourner vers le particulier ou vers les professionnelles et dans ce cas quels types de bâtiment (habitation, bureau, entrepôt, gare, ...) ?
-
pole emploi... c'est pas gagné
JPhil a répondu à un(e) sujet de philsogood dans Emploi, monde du travail
Faut espérer que ton candidat reste avec toi après l'avoir formé. -
valeur attribut selon résultat opération avec 2 attributs dans un même bloc
JPhil a répondu à un(e) sujet de yaya dans LISP et Visual LISP
Bonjour, Pour t'aider il nous faut le lisp modifié. -
Petit truc que je ne comprends pas avec (wcmatch.
JPhil a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Y'a un truc qui me dérange dans ton code. Sinon tu peux tenter un truc dans ce genre : - 1) contrôler la longueur totale du nombre par rapport à la longueur du nombre en valeur absolue afin de déterminer si le nombre est négatif -> utiliser la fonction "ABS" - 2) contrôler la longueur du nombre en valeur absolue -> si inférieur à 2 appliquer un 0 devant sinon garder la valeur - 3) associer les deux étapes précédentes -
[Challenge] Dessiner le chemin de sortie
JPhil a répondu à un(e) sujet de JPhil dans Programmer en s'amusant
Dans la vie faut se faire plaisir! Alors si tu veux rajouter des variantes let's go ^^ Par contre je m'interroge sur ta question "Faut-il prévoir également prévoir un décalage vis-à-vis des cloisons/murs pour le tracé du chemin de résolution", peux-tu être plus explicite ? Pour la représentation du chemin tu peux t'inspirer de the 7 Guest 😉 : https://zupimages.net/up/22/35/awc6.jpg -
[Challenge] Dessiner le chemin de sortie
JPhil a répondu à un(e) sujet de JPhil dans Programmer en s'amusant
Demarche intéressante, donc si y'a une sortie au centre du "P" faut trouver une autre solution. -
En se basant sur cette image qui représente un labyrinthe avec une forme en "P", pensez-vous qu'il soit possible de dessiner le chemin de sortie en une ligne (ou plutôt polyligne) ? 🤔 Contrainte pour la représentation du labyrinthe : - pas de polyligne donc que des lignes et des arcs - un calque "Mur" pour les traits épais en noir et un calque "Cloison" pour les traits fins en gris Langage autorisé : - Lisp - mais VBA et autres sont les bienvenus 😉
-
LISP qui ouvre, selectionne tout , decompose, et enregistre sur plusieurs fichiers
JPhil a répondu à un(e) sujet de dr.bim dans Débuter en LISP
Les fichiers DWG sont des plans ou des blocs ? Si c'est des plans je te conseille fortement l'utilisation de la commande "BURST" à la place de la commande décomposer surtout si tu as des blocs avec attribut sinon tu risques d'avoir une sacrée surprise ^^ Plutôt que qu'un programme LISP, il serait judicieux de regarder du côté SCRIPT. Sinon, question idiote, quel est l'intérêt de cette demande plutôt particulière ? -
REVIT : fixer la position d'un plan de référence de famille paramétrique
JPhil a répondu à un(e) sujet de GautierVsr dans Revit
Bien vu 😉 -
REVIT : fixer la position d'un plan de référence de famille paramétrique
JPhil a répondu à un(e) sujet de GautierVsr dans Revit
N'ayant plus accès à Revit depuis longtemps, tu peux tenter une famille imbriquée : 1) faire le parallélépipède dans un modèle générique 2) l'insérer dans une nouvelle famille (modèle générique) et y créer une cotation 3) la réinsérer dans une nouvelle famille (modèle générique) et y créer la seconde cotation tout en rappelant la première J'avais suivi un tuto "rotation famille sur 3 axes" pour me faire la main sur une caméra, car Revit ne pouvait pas faire une rotation dans les 3 axes en même temps sans faire de famille imbriquée. Donc c'est peut-être la marche à suivre pour toi. Avantage de cette méthode c'est que ta cotation peut basculer de occurence à type à chaque étape de la famille imbriquée et donc d'utiliser des formules. -
Commande présentation en ligne de commande
JPhil a répondu à un(e) sujet de Julieng dans AutoCAD LT 2020-2023
AutoCAD dit quoi si tu choisis Nouv à la place de Gabarit ? Commande: -PRESENTATION Entrez l'option de présentation [Copier/EFfacer/Nouv/Gabarit/Renommer/Sauvenom/Etablir/?] <établir>: N -
Changer d'espace mais d'objet à papier
JPhil a répondu à un(e) sujet de sylarr dans AutoCAD 2020-2024
Je ne vois pas où est l'avantage de déplacer la hachure de l'espace objet à l'espace papier. Espace objet : échelle à 1 Espace papier : échelle variable Ce qui veut dire que si tu changes ton échelle de papier (tu passes du 50ème au 100ème par exemple) tu vas devoir refaire ta hachure ? Y'a t-il une raison particulière à faire ce choix ? -
Créer une info-bulle lors d'un survol d'entité
JPhil a répondu à un(e) sujet de l56 dans Visual LISP
Merci @bonuscad Effectivement c'est vachement mieux maintenant. -
Créer une info-bulle lors d'un survol d'entité
JPhil a répondu à un(e) sujet de l56 dans Visual LISP
Merci @bonuscad pour ton lisp. Puis-je me permettre une remarque ? J'ai fait un test et ça fonctionne plutôt bien, néanmoins j'ai trouvé la limite. Lorsqu'on survole un bloc sur sa partie dessin, le lisp affiche bien toutes données, par contre lorsqu'on survole un des attributs du même bloc, le lisp n'affiche pas toutes les données. Penses-tu qu'il soit facile d'y remédier ? Merci par avance. -
Suppression de toutes les occurences d'un bloc utilisé
JPhil a répondu à un(e) sujet de Kilian336 dans LISP et Visual LISP
AutoCAD R14 ou AutoCAD 2014 ? -
[Résolu] Dessiner des lignes avec "recouvrement"
JPhil a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Si j'ai bien compris en prenant la ligne du bas : Longueur premier trait : 600 Longueur premier vide : 520 (600 - 2*40) Longueur deuxième trait : 600 Longueur deuxième vide : 520 (600 - 2*40) ... En prenant la ligne du haut : Longueur premier vide : 560 (600 - 1*40) Longueur premier trait : 600 Longueur deuxième vide : 520 (600 - 2*40) Longueur deuxième trait : 600 ... J'ai bon ? -
[Résolu] Dessiner des lignes avec "recouvrement"
JPhil a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Si je comprends bien, tu cherches à créer les deux lignes fines entre les deux lignes épaisses ? Dans ton premier post, j'avais compris que la ligne du bas existe et que tu voulais la ligne du haut. -
[Résolu] Dessiner des lignes avec "recouvrement"
JPhil a répondu à un(e) sujet de DenisHen dans Débuter en LISP
Plusieurs questions : C'est une ligne ou polyligne ? Pas de courbes ? Toujours à l'horizontale ? Je verrais quelque chose comme cela en sachant que ton point 0 est à gauche : 1)a) Pour chaque ligne b) Je récupère les coordonnées des extrémités en vérifiant le sens de la ligne par rapport à mon point 0 (donc une liste rangée par ordre croissant sur l'axe des X) et j'applique un plus 40 sur l'axe des X pour l'extrémité de gauche (premier point) et un moins 40 sur l'axe des X pour l'extrémité de droite (deuxième point) Accessoirement je peux appliquer l'écart entre les lignes sur l'axe des Y, comme ça c'est fait 2) Toutes ces coordonnées sont dans une liste rangée par ordre croissant (axe des X) 3) Je supprime ou ne tiens pas compte du premier point, et je créé ma ligne avec le point 2 et le point 3, puis le point 4 avec le point 5 ... Autre version : 1) Pour chaque ligne je récupère les coordonnées des extrémités 2) Toutes ces coordonnées sont dans une liste rangée par ordre croissant (axe des X) 3) J'applique un MAPCAR sur l'axe des X (une fois sur deux je rajoute 40, et donc une fois sur deux je diminue de 40) et des Y (tous concernés) 4) Je supprime ou ne tiens pas compte du premier point, et je créé ma ligne avec le point 2 et le point 3, puis le point 4 avec le point 5 ...