Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour « challenge » dans sujets.

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Fonctionnement de ce site
    • Nouvelle règle pour les invités : plus d'écriture possible sans inscription
    • CADxp, comment ça marche?
    • CADxp, vos souhaits
    • Forum test
  • Emploi
    • Emploi, monde du travail
  • AutoCAD
    • AutoCAD 3D
    • AutoCAD 2020-2024
    • AutoCAD LT 2024
    • AutoCAD LT 2020-2023
    • AutoCAD 2019
    • AutoCAD LT 2019
    • AutoCAD 2018
    • AutoCAD LT 2018
    • AutoCAD 2017
    • AutoCAD LT 2017
    • AutoCAD avant 2017
    • AutoCAD LT avant 2017
    • Tutoriaux AutoCAD
    • AutoCAD, liste de souhaits
  • Autres logiciels de CAO
    • Microstation
    • IntelliPlus, IntelliCAD, CadIdesk
    • ZWCAD
  • Architecture, Bâtiment
    • Revit
    • AutoCAD Architecture
    • AutoCAD MEP
    • BIM
  • Mécanique
    • Inventor
    • SolidWorks
    • Creo (ex. Pro/Engineer)
    • Catia
  • SIG, Génie civil, Cartographie, VRD
    • Autodesk Map
    • VRD
    • Covadis
    • Infraworks 360
    • Mensura
    • AutoCAD Civil
    • Autopiste
    • SIG internet
  • Imagerie, animation, PAO, modélisation 3D
    • 3DSMAX
    • Création et retouche d'images
    • Sketchup
    • Autres logiciels d'infographie
    • Lumion 3D
  • Programmation
    • LISP et Visual LISP
    • VBA et VB
    • Personnalisation, macros, DIESEL
    • ObjectARX/DBX, C++, .NET, RealDWG
    • Programmer en s'amusant
    • Suggestions de développements
  • Trucs et astuces
    • AutoCAD trucs et astuces
    • Windows trucs et astuces
  • Matériel CAO
    • Ordinateurs
    • Périphériques d'entrée
    • Périphériques de sortie, impression
  • Divers
    • CAO, généralités
    • Echanges de fichiers
    • Organisation du travail
    • Visualisateurs, annotation
    • Pause café
    • Bibliothèques de composants
    • Formation
  • Logiciels connexes
    • Devis, métré, estimation, quantitatif
    • Calculs et simulation
  • Forums métier
    • Bâtiment
    • Infrastructures

Calendriers

Il n’y a aucun résultat à afficher.

Blogs

Il n’y a aucun résultat à afficher.


Rechercher les résultats dans…

Rechercher les résultats qui contiennent…


Date de création

  • Début

    Fin


Dernière mise à jour

  • Début

    Fin


Filtrer par nombre de…

Inscription

  • Début

    Fin


Groupe


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

  1. Salut (gile) : Une petite amélioration possible dans ton lisp pour éviter un not en utilisant un or à la place du and et donc inverser la logique pour le test sur les onglets et les xrefs. On peut aussi éviter le if grâce au and (ou or si le not est supprimé) C'est juste histoire de gratter quelques millisecondes ;) On peut aussi rebondir sur ce challenge pour dénombrer le nombre de bloc A, le nombre de B, etc... Notre King (ElpanovEvgeniy) va pouvoir se creuser un peu plus les méninges ;) Pour la purge, on peux faire un truc très simple (repeat 10 (vla-purgeall (vla-get-activedocument (vlax-get-acad-object))) ) S'il y a + de 10 imbrications, c'est que le dessin est complexe. @+
  2. bseb67

    vla-select

    pfoui, dommage que ca marche pas. L'idée de de parcourir les présentations était aussi mon option de secours ;) merci quand même. Pour le challenge 30, j'ai déjà un peu travailler sur ça, si j'ai le temps j'attaquerai à entre midi et deux.
  3. Bonjour à toutes et tous, Neptune38 avait proposé gracieusement de partager ses persos ici,... Tu peux alors t'inspirer de la syntaxe. Tu peux sinon te rendre dans l'aide AutoCAD dans => Dans la recherche de forum, tu trouveras également plein de posts sur ce sujet,... Un post "challenge" à consulter également,...
  4. (gile)

    Challenge 29

    Salut, Ma réponse est la même que celle d'Evgeniy. (defun list_up (ind lst) (cond ((or (null ind) (null lst)) lst) ((= 0 (car ind)) (cons (car lst) (list_up (cdr (mapcar '1- ind)) (cdr lst))) ) ((= 1 (car ind)) (cons (cadr lst) (list_up (cdr (mapcar '1- ind)) (cons (car lst) (cddr lst))) ) ) (T (cons (car lst) (list_up (mapcar '1- ind) (cdr lst)))) ) ) Je l'avais donnée ici. C'est là que j'ai piqué cette idée de challenge. Eh Tramber, tu as eu tout le week-end !...
  5. Bonjour, la sous routine dont le code est ci-dessous me permet de sortir une catégorie d'une chaine de caractères, elle fonctionne bien mais pour mettre a jour la liste des prénoms par exemple c'est un peu dur pour des non programmeurs, c'est pourquoi je souhaiterais les mettre dans un bloc notes sous la forme : ("mot1" . "catégorie") ("mot2" . "catégorie") ("mot3" . "catégorie") ........................................ ("motN" . "catégorie") ou alors dans un fichier Excel (Open office Calc) ou mieux dans un fichier mdb d'access via les fonctions ADOLisp. Quelles seraient pour vous le choix le plus judicieux et le plus facile à coder ? C'est une sorte de challenge ! Merci, ;--------------------------------------------------------------- ;;; sous-fonction permettant de vérifier la catégorie d'un mot suivant les listes de contrôle et de renvoyer cette catégorie dans le programme principal (defun verification_mot (mot_a_verifier / outpout_categorie) (setq LISTE_PRENOMS (list "A." "Adam" "Adolphe" "Adrien" "Aimee" ............................ "Yves" "Yvonnick" "Zacharie" "Zenaide" "Hilarion" "E." "Ermangarde")) (setq LISTE_TYPES (list "Allée" "Avenue" "Bosquets" "Boulevard" "Canal" "Carré" ............................ "Terrain" "Villa" "Village")) (setq LISTE_ARTICLES (list "d'" "de" "de" "de" "l'" "de" "la" "des" "du" "l'" "le" "au" "aux")) (setq LISTE_TITRES (list "Abbé" "Abbe" "Amiral" "Capitaine" ............................ "Sous-Lieutenant" "Sous_Lieutenant")) (setq LISTE_PARTICULES (list "D'" "De" "De" "L'" "De" "La" "Des" "Du" "L'" "La" "Le")) (setq LISTE_TEXTES (list "et" "Et" "Dit" "DIT" "dit")) (cond ((vl-position mot_a_verifier LISTE_PRENOMS) (setq outpout_categorie "PRENOM")); fin member dans LISTE_PRENOMS ((vl-position mot_a_verifier LISTE_TYPES) (setq outpout_categorie "TYPE_VOIE")); fin member dans LISTE_TYPE ((vl-position mot_a_verifier LISTE_ARTICLES) (setq outpout_categorie "ARTICLE")); fin member dans LISTE_ARTICLE ((vl-position mot_a_verifier LISTE_TITRES) (setq outpout_categorie "TITRE")); fin member dans LISTE_TITRE ((vl-position mot_a_verifier LISTE_PARTICULES) (setq outpout_categorie "PARTICULE")); fin member dans LISTE_PARTICULE ((vl-position mot_a_verifier LISTE_TEXTES) (setq outpout_categorie "TEXTE")); fin member dans LISTE_TEXTE (T (setq outpout_categorie "INCONNU")) ); fin cond outpout_categorie ) ; fin defun verification_mot [Edité le 12/11/2009 par fabcad]
  6. Hello En voilà un challenge! concret en plus. Je vais faire une proposition qui reprend le même principe à ta discussion Je suis sur que ElpanovEvgeniy va faire un truc de ouf en récursivité ;) (defun match_replace (string pattern target / l_str l_pat l_trg n tmp l_rv) (cond ((and (eq (type string) 'STR) (eq (type pattern) 'STR) (eq (type target) 'STR)) (setq l_str (vl-string->list string) l_pat (vl-string->list pattern) l_trg (vl-string->list target) ) (while l_str (repeat (setq n (length l_pat)) (setq tmp (cons (nth (setq n (1- n)) l_str) tmp)) ) (cond ((equal tmp l_pat) (setq l_rv (append (reverse l_trg) l_rv)) (repeat (1- (length l_pat)) (setq l_str (cdr l_str))) ) (T (setq l_rv (cons (car l_str) l_rv)) ) ) (setq l_str (cdr l_str)) (setq tmp nil) ) (vl-list->string (reverse l_rv)) ) ) ) exemple d'usage: (MATCH_REPLACE "\nAvec CadXp, on trouve les réponses,\nCadXp la référence?\nCadXp faites la différence" "CadXp" "FabCad") ou encore (MATCH_REPLACE "\nAvec CadXp, on trouve les réponses,\nCadXp la référence?\nCadXp faites la différence" "\n" "\t ")
  7. Salut, Le "contrôle du parallélisme" avait été le sujet de ce challenge.
  8. Tous les sujets, avec le nom "Challenge" j'appelle pour moi-même comme les leçons et j'apprends... C'est aussi le but :D @+
  9. Tous les sujets, avec le nom "Challenge" j'appelle pour moi-même comme les leçons et j'apprends...
  10. bonuscad

    deux couleur

    Il est vrai qu'on en a déjà parlé et évoqué ce genre de solution. L'ennui est qu'on génère 2 entités décalées et surtout ont ne sait plus après coup les extrémités à retenir comme exactes (si celles-ci ont leur importance) Tout cela pour en venir à une idée qui m'ai venue à l'esprit en regardant les PMAILLE. Je me suis posé la question, à savoir si il ne serait pas possible de créer par programmation une PMAILLE (une représentation un peu comme des maillons d'une chaine) et d'affecté (à chaque maillon, qui serait une face à 4 cotés) une couleur précise. J'avais essayé manuellement en lisp (et la commande PMAILLE est vraiment pas évidente) à faire 2 maillons successifs de couleur différente et cela à l'air de pouvoir se faire. Je pense que se serait un bon challenge, surtout pour les champions des fonctions récursives (vous voyez à qui je peux penser ;) ), pour mettre en place ces sommets de PMaille. Une seule entité avec des couleurs propre indépendamment de celle du calque. Par contre cela serait une entité complexe avec beaucoup de point de définition (faudrait pas en abuser sous peine que le dessin prenne une taille pharaonienne) Est ce que le jeu en vaut la chandelle?
  11. Patrick_35

    Purger

    Salut Sans 2010, difficile de juger, mais je pense qu'il faut faire une sélection pour effacer ces objets. Un challenge pour effacer les textes vides. Pour les lignes vides, regarde la propriété Length. @+
  12. bseb67

    Messenger intranet ....

    Salut, a mon avis net send est surement désactivé. c 'est une des premières choses qu'un admin fait sur un serveur. Nous on utilise atnotes, il permet de mettre des notes, alarmes sur ton pc, et d'envoyer des messages à d'autres pc sur le réseau, il faut activer dans réseau accepter messages entrants. Son seul défaut: prendre la main en pop_up, car il n'a pas d'info bulles d'arriver de message Patrick35=> je sentirai un bon challenge pour développer en lisp par le biais d'un fichier de communication, un mini chat sous totocad. :D Faut pas que j'en parle à ma chef, car elle me trouve déjà parano du lisp :cool:
  13. Yahaaaa! Un petit challenge :D . La première version est déjà faite, reste encore la liste sans sous-liste pour le resultat
  14. Invité

    Comptage et tri Liste

    Merci ;-) C'est super, avec les differentes routines posté dans les challenge j'ai trouvé mon bonheur
  15. Bon l'eau a coulé sous le pont, mais une discussion d'aujourd'hui me fais contribuer a cet ancien challenge (defun test (lst / el nw_lst) (foreach n lst (if (not (member (setq el (cons n (- (length lst) (length (vl-remove n lst))))) nw_lst)) (setq nw_lst (cons el nw_lst)) ) ) (vl-sort nw_lst '(lambda (e1 e2) (< (car e1) (car e2)))) )
  16. Bonjour, J'sais pas si ça répond au challenge, mais à ta question peut être Avec: (setq lst_el '(" Tasseau Longueur 1.23" " Tasseau Longueur 3.25" " Tasseau Longueur 1.23" " Tasseau Longueur 1.23" " Tasseau Longueur 1.23" " Tasseau Longueur 3.25" " Tasseau Longueur 4") nw_lst nil) (foreach n lst_el (if (not (member (setq el (strcat (itoa (- (length lst_el) (length (vl-remove n lst_el)))) n)) nw_lst)) (setq nw_lst (cons el nw_lst)) ) )
  17. Salut ! Un petit challenge pour t'aider ?
  18. Salut, Voilà pour la première demande, pour la seconde, ça pourrait faire l'objet d'un "challenge". ;; ZH (gile) ;; Sélectionne les objets présents dans l'espace courant d'après leurs "handle" (defun c:zh (/ space ss obj hlst olst kw i l) (vl-load-com) (or *acdoc* (setq *acdoc* (vla-get-ActiveDocument (vlax-get-acad-object)))) (setq space (vla-get-Block (vla-get-ActiveLayout *acdoc*)) ss (ssadd) ) (sssetfirst) (initget 1) (setq hlst (getstring "\nEntrez les handles à sélectionner séparés par des virgules: ") hlst (str2lst hlst ",") ) (foreach h hlst (if (and (not (vl-catch-all-error-p (setq obj (vl-catch-all-apply 'vla-HandleToObject (list *acdoc* h) ) ) ) ) (equal (vla-ObjectIdToObject *acdoc* (vla-get-OwnerId obj)) space ) ) (progn (setq olst (cons obj olst)) (ssadd (vlax-vla-object->ename obj) ss) ) ) ) (if ss (progn (sssetfirst) (sssetfirst nil ss) (setq i -1 l (length olst) ) (while (or (initget "Suivant Précédent Tous") (setq kw (getkword "Zoom sur [suivant/Précédent/Tous] <S>: ")) (setq kw "Suivant") ) (if (= kw "Suivant") (setq i (rem (1+ i) l)) (setq i (if (minusp (1- i)) (1- l) (1- i) ) ) ) (if (= kw "Tous") (ZoomObject olst) (ZoomObject (list (nth i olst))) ) ) ) ) (princ) ) ;; ZoomObject Effectue un zoom sur les objets contenus dans la liste ;; ;; Argument ;; objlst : une liste de vla-object ;; ;; Variables ;; dir : normale du plan de la vue courante ;; ang : angle de la vue courante ;; 3x3 : matrice de transformation du SCG vers la vue courante (dimension 3) ;; 4x4 : matrice de transformation du SCG vers la vue courante (dimension 4) ;; ptlst : liste des points minimum et maximum des bounding-boxes des objets sélectionnés (SCG) (defun ZoomObject (objlst / dir ang 3x3 4x4 ptlst) (vl-load-com) (setq dir (trans '(0 0 1) 2 0 T) ang (- (getvar "viewtwist")) 3x3 (mxm (mapcar '(lambda (x) (trans x 0 dir)) '((1 0 0) (0 1 0) (0 0 1)) ) (list (list (cos ang) (- (sin ang)) 0) (list (sin ang) (cos ang) 0) '(0 0 1) ) ) 4x4 (append (mapcar '(lambda (v o) (append v (list o)) ) 3x3 '(0 0 0) ) (list '(0 0 0 1)) ) ) (foreach obj objlst (vla-TransformBy obj (vlax-tmatrix (trp 4x4))) (vla-getBoundingBox obj 'minpt 'maxpt) (vla-TransformBy obj (vlax-tmatrix 4x4)) (setq ptlst (cons (vlax-safearray->list minpt) (cons (vlax-safearray->list maxpt) ptlst) ) ) ) (vla-ZoomWindow (vlax-get-acad-object) (vlax-3d-point (mxv 3x3 (apply 'mapcar (cons 'min ptlst)))) (vlax-3d-point (mxv 3x3 (apply 'mapcar (cons 'max ptlst)))) ) ) ;; str2lst ;; Transforme un chaine avec séparateur en liste de chaines ;; ;; Arguments ;; str : la chaine à transformer en liste ;; sep : le séparateur (defun str2lst (str sep / pos) (if (setq pos (vl-string-search sep str)) (cons (substr str 1 pos) (str2lst (substr str (+ (strlen sep) pos 1)) sep) ) (list str) ) ) ;; transpose une matrice -Doug Wilson- (defun trp (m) (apply 'mapcar (cons 'list m)) ) ;; Applique une matrice de transformation à un vecteur -Vladimir Nesterovsky- (defun mxv (m v) (mapcar '(lambda (r) (apply '+ (mapcar '* r v))) m) ) ;; Multiplie (combine) deux matrices -Vladimir Nesterovsky- (defun mxm (m q) (mapcar '(lambda (r) (mxv (trp q) r)) m) )
  19. Re, Sur TheSwamp.org : Le challenge "Triangulation" (C++) Le LISP d'Evgeniy dans un autre sujet sur le forum LISP
  20. C'est sur, mais le temps d'exécution reste honorable. D'ailleurs il y a un fichiers test de 100000 point juste avant le code (points en 2D, mais cela ne change pas grand chose je pense). C'est pas immédiat, mais le résultat est au bout. (y a même une barre de progression avec le pourcentage) J'avais eu l'occasion de tester un code de (Danielle Piaza, je crois) mais sont code arrivait a buger, les triangles étaient mal équilibrés (triangle avec des angles en sifflet) et le temps d'exécution rien à voir. Le seul truc qui manque pour que ce code soit parfait, est que l'on ne peut pas appuyer la triangulation sur des lignes de rupture de pente. Mais là c'est un autre challenge... Déjà qu'un code aussi condensé arrive à un aussi bon résultat, m'épate.
  21. Salut, Il avait écrit ce code lors d'un "challenge" sur le forum C++ du site TheSwamp (je ne peux pas donner lien, le site est en dérangement) Je me souviens que son code, bien que plus lent que les codes C++ (normal), avait vraiment impressionné les autres "challengers".
  22. Hello Merci les Super Lispeurs ! :) :D :cool: Je vais tester tout ça MAIS petite précision pour Patrick_35 : je ne veux pas les FERMER mais simplement les DETECTER donc une simple sélection des polylignes en sortie est parfaite pour moi ! Ca ressemble à un petit challenge ... :P Le Decapode "détecteur de polylignes presques closes/fermées"
  23. Pour être tout à fait honnête.... Je pensait que le ralentissement des opération de copier/coller sur ce fichier étaient dus à ces lignes multiples en partie inutiles... en fait il semblerait que ce soit plutôt un problème avec une multitude d'échelle.... j'ai appliqué la procédure indiquée dans un autre message, et cela marche. J'ai aussi récupéré une utilisation "aisée" du fichier. Tout ça pour dire qu'il n'est pas nécessaire que vous passiez plus de temps à essayer de solutionner mon problème, à moins que vous ne preniez cela comme un challenge perso.... Merci
  24. Vu ta demande, je ne pense pas que OVERKILL convienne: Il ne supprime que les doublons parfaitement exact et non partiellement superposés comme tu le décrit. J'avais bien vu dans le temps une telle demande sur un forum US avec une proposition en lisp mais de là à remettre la main dessus.... :( De plus je ne sais pas s'il était performant. Quitte à le réécrire je pense qu'il faudrait s'orienter vers un algorithme vectoriel pour tester les segments partiellement superposés/confondus. La demande n'est pas simple. :casstet: Peut être un challenge utile.
  25. Invité

    ligne projectee sur face 3d

    GRANDE ;-) ça fonctionne a merveille merci Gile encore un fois c'est simple et bien fait ..... il faut que j'etudie ça pour comprendre comme tu a fait ! pour te remercier j'ai plein de script Python pour blender si ca t'interesse ;-) (car j'utilisr autocad pour les plans et blender pour les rendu 3d) merci ancore pour tou ca ;-) PS le vrai challenge impossible le rêve inavoué par contre mais ça mémé toi je ne pense pas qui puisse le faire c'est d'indiquer un volume de projection quelconque, solide cylindre etc et récupérer la grille déformée , mais in faudrait que autocad detecte chaque face du volume et que envoi les rayon seulement ou il le faut [Edité le 29/9/2008 par ingoenius]
×
×
  • 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é