Rechercher dans la communauté
Affichage des résultats pour « challenge » dans sujets.
502 résultats trouvés
-
Bonjour, J'ai fais quelques recherches sur le site, mais je n'ai pas trouvé. Ce n'est pas impossible que cela est été déjà évoqué. Ma problématique: J'ai une liste de nombre réel (pas forcément dans un ordre croissant ou décroissant) du style: '(7090.35 6081.96 5049.83 4031.35 3030.6 2028.35 1021.77 0.0 23926.9 23109.3 22129.8 21145.7 20131.1 19128.6 18127.2 17130.9 16131.5 15110.7 14088.1 13104.4 12085.2 11084.0 10088.8 9090.96 8092.54) De cette liste je voudrais extraire le nombre immédiatement inférieur ET supérieur. Par exemple avec 2556.63 comme valeur de départ obtenir l'encadrement '(2028.35 3030.6) ou même leur position (exploitable par nth) soit '(5 4) Si vous avez un lien à me proposer ou une idée! J'ai pas trop le temps pour faire un challenge (mais je saurais m'y résoudre à défaut de proposition) Merci à ceux qui me feront gagner du temps. NB: Jamais de nombre négatif dans ma liste, zéro peut être présent; la plus part du temps mais pas toujours.
-
Modélisation d'une Cox Cabriolet Karmann, jouez et gagnez!
Titi95 a répondu à un sujet dans CAO, généralités
Il ne reste que 12 jours, c'est un peu court pour ce type de projet, surtout vu certaines propositions qui mettent la barre bien haute J'aime bien le concept de challenge sur Lynkoa, c'est dynamique -
Modélisation d'une Cox Cabriolet Karmann, jouez et gagnez!
Invité a posté un sujet dans CAO, généralités
Lynkoa vous propose pour ce challenge de modéliser la célèbre Coccinelle Cabriolet Karmann. Vous avez jusqu'au 31 Août 2014 pour réaliser la modélisation sur votre logiciel de CAO favori. Vous pouvez poster vos publications jusqu'au 31 Août 23h59. Les détails sur le site de Lynkoa, relayé par AUGI France. -
Dessinateur (salaire / opinion)
Nico59 a répondu à un(e) sujet de Nico59 dans Emploi, monde du travail
Attention à la bougeotte, certains recruteurs n’aiment pas trop (surtout s'il faut former) après si vous savez le justifier : fin d'un projet, pas d'opportunité, nouveau challenge. -
Comme annoncé dans une actualité du 3 mars 2014, l'entreprise Fab21 a organisé le 1er week-end du design industriel sur son site de Fumay les 14 15 et 16 mars 2014. Organisé en partenariat avec Visiativ et Lynkoa, ce week-end a rassemblé 40 étudiants designers, 4 designers professionnels et de nombreuses personnalités. http://ftp.lynkoa.com/images/challenge_fab21_lynkoa.png Nous avons également retenu trois esquisses pour les présenter à la communauté Lynkoa sous forme de challenge. A cette occasion, Fab21 met en jeu 1 000 € par challenge pour récompenser les meilleurs dessins, et garantit des royalties au concepteur de chaque modèle CAO débouchant sur une industrialisation et une commercialisation. Tous les détails ici
-
Pour ceux qui lisent l'anglais, il y avait eu, sur TheSwamp, un challenge qui consistait, sur un fichier contenant 10000 points de relier entre eux par une ligne tous ceux qui étaient distants de 70 unités ou moins. Ce challenge m'avait montré l'importance de l'optimisation algorithmique par rapport à celle de code (while est-il plus rapide que foreach ? par exemple). Si on ne regarde que les implémentations en LISP (avec .NET ou ObjectARX/C++ il avait fallut assez vite passer à 100000 ou 1 million de points pour avoir des temps significatif), avec les premier jets, utilisant tous un algorithme naif commme celui décris ci-dessus, les temps d'exécution variaient entre 35 et 50 secondes suivant les optimisations des codes. Puis qjchen et ElpanovEvgeniy on commencé à optimiser les algorithmes d'abord en triant les points sur la coordonnées X, puis en X et Y et les temps d'exécutions sont descendus à 3 secondes puis 1.5 secondes pour finalement passer en dessous de la seconde.
-
Salut, La lecture de ce sujet m'a donné l'idée d'un petit challenge : implémenter une fonction similaire à vl-filename-base. (vl-filename-base "toto.dwg") -> "toto" (vl-filename-base "toto") ->"toto" (vl-filename-base "toto.1.0.dwg") -> "toto.1.0" (vl-filename-base "totodwg.dwg") -> "totodwg" mais aussi avec un chemin complet : (vl-filename-base "C:\\Dir\\toto.dwg") -> "toto" (vl-filename-base "C:\\Dir\\toto") ->"toto" (vl-filename-base "C:\\Dir\\toto.1.0.dwg") -> "toto.1.0" (vl-filename-base "C:\\Dir\\totodwg.dwg") -> "totodwg" (vl-filename-base "C:\\Dir\\") -> ""
-
comment avoir plusieurs programme dans un lisp?
VDH-Bruno a répondu à un(e) sujet de philsogood dans Débuter en LISP
Bonjour philsogood, Même si il n’y a rien à redire sur l’excellente explication de (gile), pour décortiquer ces lignes de codes une petite astuce consiste à substituer le defun par defun-q, cela te permet de définir les fonctions sous forme de liste. Et ainsi comprendre comment construire ta liste de définition en pas à pas. Pour obtenir la définition à construire dans la console Vlisp: _$ C:P8 (nil (COMMAND "_mline" "_j" "_z" "_st" "PVC" "_s" (DIAMSCALE 12))) A comparer avec la définition d’origine.. (defun-q c:p8 () (command "_mline" "_j" "_z" "_st" "PVC" "_s" (diamScale 12))) Ainsi tu visualise mieux que le nil symbolise l’absence d’arguments () dans la fonction définit en C: Pour des exemples commenté sur l’emploie de mapcar, il y eu un challenge sur son emploie ça peut aider. http://cadxp.com/topic/14868-challenge-special-debutants/ Sinon il y a toujours le post arguments et variables en entête du forum : http://cadxp.com/topic/28642-arguments-et-variables/page__view__findpost__p__156096 (Ps: Personnellement je pense que l’étude de ces lignes de codes apporte beaucoup dans la compréhension du Lisp.) Bon courage -
Bonjour, Très rapidement dans le même esprit que le code de Bryce, mais en donnant un tout autre sens au mot REUNIR… (Pour aller dans le sens de Steven) (defun C:REUNIE (/ ss i dxf p10 p11 ent deplacement lst) (if (setq ss (ssget '((0 . "LINE")))) (progn (repeat (setq i (sslength ss)) (setq dxf (entget (setq ent (ssname ss (setq i (1- i))))) p10 (cdr (assoc 10 dxf)) p11 (cdr (assoc 11 dxf)) ) (if (< (car p10) (car p11)) (setq lst (cons (list p10 p11 ent) lst)) (setq lst (cons (list p11 p10 ent) lst)) ) ) ; repeat (setq lst (vl-sort lst '(lambda (x1 x2) (< (caar x1) (caar x2))))) (setq deplacement '(0.0 0.0 0.0)) (repeat (length lst) (setq dxf (entget (caddar lst)) dxf (subst (cons 10 (mapcar '- (caar lst) deplacement)) (assoc 10 dxf) dxf) dxf (subst (cons 11 (mapcar '- (cadar lst) deplacement)) (assoc 11 dxf) dxf) lst (cdr lst) deplacement (mapcar '- (caar lst) (cdr (assoc 11 (entmod dxf)))) ) ) ) ) (princ) ) Nota: Pour celui qui veut aller plus loin, je pense qu’il y des idées à piocher dans le chalenge n°8… http://cadxp.com/index.php?/topic/14961-challenge-8-ou-le-jeu-des-dominos/ A+
-
Comme dit Maxence, les performances dépendent de ce que tu fais et j'ajouterais : surtout de la manière dont tu le fais (algorithmie). Je me souviens d'un challenge sur TheSwamp (traitement de dizaines voire centaines de points) où les réponses les plus performantes étaient plus de 30 fois plus rapides que les plus "naives". Les tests faits par les chasseurs de millisecondes ont montré, qu'en général, command est toujours plus lent mais qu'AutoLISP (avec les fonctions entmake, entmod) est aussi rapide que Visual LISP.
-
Salut, Un défi m'a été lancé sur TheSwamp dans un sujet à propos du ruban de Moebius : modéliser une bouteille de Klein. Je propose ce petit challenge à ceux que ça intéresse. Ci dessous ma réponse, je donnerais la procédure que j'ai suivi plus tard... Le dwg avec uniquement la surface.
-
CHALLENGE AUTOCAD/COVADIS/PROGRAMMATION
La Lozère a répondu à un(e) sujet de lili2006 dans AutoCAD 2013
Salut Lilian, Ta méthode est pas mal, mais tu as un décalage, car tu fais le calcul pour chaque ligne. Pour calculer la distance il faut utiliser 2 coordonnées, soit 2 lignes. Du coup, ta formule doit sauter une ligne sur deux. Pour fair ceci, sélectionne tes cellules F6 et F7, et après tu tires vers le bas. Du coup ton calcul sera bien aligné, une ligne sur deux. Dans ton cas ça calcul en biai une fois sur deux.... Et on ne sais pas dans quel sens. Pour simplifier la chose, il faudrait faire commencer les polylignes exactement au même X, ainsi pas de décalage au départ, soit moins de sources d'erreurs, et tri plus lisible. Chose à faire attention quand même, si tu es en courbe, au bout d'un moment il pourrait y avoir un décalage supérieur à tes 6m de la commande "diviser". Mais bon pour la demande, avec 20 voir 50m, le risque est quasiment nul sur une autoroute. Du coup.... A voir si il y a pas une simplification de la feuille excel en utilisant 2 blocs différents pour chaque polyligne. Sympa le challenge... Affaire à suivre. A plus. -
CHALLENGE AUTOCAD/COVADIS/PROGRAMMATION
lovecraft a répondu à un(e) sujet de lili2006 dans AutoCAD 2013
Bonsoir Lilian, C'est un petit challenge. Pour moi la solution la plus rapide pour ce genre de projet (il ne faut pas oublier que nous sommes sur une autoroute et ce qui intéressant dans ce genre de projet ce de connaitre la largeur de BAU aux Pk (point kilométrique précis). Voici ma solution: 1 - Créer un axe sur la bande blanche (39-13) ou au milieu du TPC (prise en charge du PK) 2 - Le profil en long peut etre fictif ou on prends le TN 3- Profil type avec des point codés 4- Listing des points codés 5- Exploitation sous excel avec largeur de BAU au droit de chaque PK C'est la même technique avec Mensura C'est aussi la technique qu'on utilise en BE Merci de vos remarque Cordialement, Laurent -
Bonjour à toutes et tous, Une demande intéressante d'un ancien étudiant => Sans prog, je propose l'utilisation de la commande diviser avec un bloc + attribut champ "position planimétrique", export et calcul de la distance entre points depuis Excel. D'autres idées ? Merci d'avance, PS: J'ai répondu à cet étudiant en vidéo, si ça vous intéresse,... => 1er PARTIE : http://screencast.com/t/k4oWuC9rM => 2nd PARTIE : http://screencast.com/t/eqFJqBrNS => 3e PARTIE : http://screencast.com/t/1fImoHwBK => 4e PARTIE : http://screencast.com/t/3sz4r80h
-
Salut, A cette occasion j’ai également découvert que la règle soustractive IV, IX etc… N’a pas toujours été la norme, cela c’est (entre autre) également noté IIII, VIIII etc… D’ailleurs Cet usage fut repris en horlogerie, où le chiffre 4 s'écrit IIII, essentiellement pour des raisons de lisibilité sur un cadran rond, surtout quand les bières (gravures chiffrées) y sont inclinées. Cela m’a beaucoup amusé de porter un autre regard sur le quadrant de mon horloge :(rires forts): , dire qu’il m’a fallu 40 ans et ce challenge pour observer et réfléchir à ce détail… :blink: Amicalement (Ps : Patrick_35 bien vu pour ta ligne de code, je dois avouer que je n’avais pas poussé plus loin la généralisation de l’usage de vl-string->list, merci car explodestr est une routine appelé dans d’autres fonctions bibliothèques).
-
Bonsoir, En tombant sur ce challenge un peu par hasard, l’idée m’a plu, et je mis suis attelé dans la soirée histoire de voir si il restait encore de la place pour d’autres propositions : Pour les fonctions de conversions : Décimal en Romain : Je n’ai rien pondu de neuf qui puisse détrôner les codes proposés précédemment. Romain en Décimal: une variante qui devrait avoir sa place parmi celles de Patrick_35 et de (gile) ;; Conversion de chiffre Romain en Décimal ;; Exemple: (roman2arabic "MMXII") -> 2012 (defun roman2arabic (str / lst) (cond ((setq lst (assoc (substr str 1 2) '(("IV" . 4) ("IX" . 9) ("XL" . 40) ("XC" . 90) ("CD" . 400) ("CM" . 900)))) (+ (cdr lst) (roman2arabic (substr str 3))) ) ((setq lst (assoc (substr str 1 1) '(("I" . 1) ("V" . 5) ("X" . 10) ("L" . 50) ("C" . 100) ("D" . 500) ("M" . 1000)))) (+ (cdr lst) (roman2arabic (substr str 2))) ) ((= str "") 0) ) ) (Ps : Au passage sur cette version si on sort de la plage de caractère la fonction renvoie une erreur, plutôt qu'un résultat erroné) Pour la fonction d'incrémentation : Ma solution premiere ;; VDH-Bruno Explose un string (fonction symétrique à strcat) ;; Exemple: (explodestr "string") -> ("s" "t" "r" "i" "n" "g") (defun explodestr (str) (if (/= str "") (cons (substr str 1 1) (explodestr (substr str 2))))) (defun I+ (s / foo) (defun foo (n l r) (cond ((and r (= n (car l) (cadr l) (caddr l))) (if (= (cadddr l) (car r)) (cons (cadr r) (cons n (cddddr l))) (cons (car r) (cddr l)) ) ) ((and (/= (car l) (cadr l)) (= n (cadr l))) (foo (car l) (cddr l) (cddr r)) ) (T (cons n l)) ) ) (apply 'strcat (reverse (foo "I" (reverse (explodestr s)) '("V" "X" "L" "C" "D" "M") ) ) ) ) Puis une seconde version sur le même algorithme, mais cette fois reprenant l’idée qui consiste à transformer la chaine en liste de caractère codé. (defun I+ (s / foo) (defun foo (n l r) (cond ((and r (= n (car l) (cadr l) (caddr l))) (if (= (cadddr l) (car r)) (cons (cadr r) (cons n (cddddr l))) (cons (car r) (cddr l)) ) ) ((and (/= (car l) (cadr l)) (= n (cadr l))) (foo (car l) (cddr l) (cddr r)) ) (T (cons n l)) ) ) (vl-list->string (reverse (foo 73 (reverse (vl-string->list s)) '(86 88 76 67 68 77)) ) ) ) A+
-
Bonjour à tous et merci de vos nombreuses contributions qui m'aident souvent dans mon utilisation quotidienne d'Autocad, moi qui suis un autodidacte. Je vous écris aujourd'hui pour vous soumettre ce qui me semble un challenge, si toutefois c'est possible à faire... Alors, 1°)- je voudrais savoir s'il est possible de créer une macro (VBA, ou LISP) qui permette de ne pas se "taper" les huit pages de préparation du tableau lors d'une extraction de données. En effet,j'ai environ 4500 blocs, représentant des tentes (montants, pattes de fixation, boulons, écous, toilage, porte, bloc secours, etc., etc.), toutes comportant d'autres blocs représentant des éléments communs mais aussi des éléments distincs, dont je dois faire le décompte. En utilisant l'extraction de données j'y arrive mais je dois tout refaire [je parle là des 8 pages de préparation même avec un modèle .dxe pré-enregistré] à chaque fois; et en plus je dois sélectionner mes tentes une par une. En effet: 2°)- Sur chaque plan j'ai plusieurs tentes différentes et je ne peux pas les sélectionner une par une ce serait trop long, or lorsque je fais une sélection globale, l'extracteur réunis tous les éléments identiques sans les regrouper tente par tente. Ya t'il selon vous un moyen de regrouper les extractions d'éléments de composition des tentes, tente par tente; sachant que ces dernières sont elles aussi des blocs ?... Si toutefois ma question vous appaissait par trop absconse, voici mon adresse mail pour plus ample informé, le cas échéant... cremieux.henry@gmail.com
-
Evolution dans le metier de dessinateur/concepteur mecanique ?
Guillaume MASSART a répondu à un(e) sujet de CAD-xp dans Emploi, monde du travail
Eh oui , la stagnation... Ce qui être intéressant c'est de tabler sur des entreprises à l'internationale, comme ça même si l'aspect technique n'est pas évolué, tu auras l'aspect international et là par contre tu ouvres des portes supplémentaires (c'est mon cas aujourd'hui, la technicité n'est pas exceptionnelle mais la gestion de projet avec des clients de tout horizon est un réel challenge parfois) N'hésite pas à t'autoformer, rencontrer des fabricants, des ateliers d'usinage de tôlerie etc. pour apprendre des gens qui maitrisent l'oeuvre et non la conception, c'est comme ça qu'on progresse. L'utilisation d'un logiciel c'est du vent, si tu ne sais pas concevoir, tu auras beau être un dieu d'inventor ou Solidworks, tu feras des conceptions mauvaises. -
Bonjour, Suite à une demande sur le forum Autodesk, je me suis amusé à essayé d'écrire une fonction pour réaliser cela. Si celle-ci fonctionne bien (quelque soit le SCU) sur des textes simples, j'aurais trouvé intéressant de l'étendre aux textes multi-lignes. Mais je ne vois pas comment appréhender ceux-ci..., un challenge ? Voici déjà le code pour les textes simples (vl-load-com) (defun transpts (apt matrix / ) (list (+ (* (car (nth 0 matrix)) (car apt)) (* (car (nth 1 matrix)) (cadr apt)) (* (car (nth 2 matrix)) (caddr apt)) (cadddr (nth 0 matrix)) ) (+ (* (cadr (nth 0 matrix)) (car apt)) (* (cadr (nth 1 matrix)) (cadr apt)) (* (cadr (nth 2 matrix)) (caddr apt)) (cadddr (nth 1 matrix)) ) (+ (* (caddr (nth 0 matrix)) (car apt)) (* (caddr (nth 1 matrix)) (cadr apt)) (* (caddr (nth 2 matrix)) (caddr apt)) (cadddr (nth 2 matrix)) ) ) ) (defun c:stabilo ( / js dxf_ent dxf_210 dxf_10 dxf_50 txt_box mat entline PathObj EndDist StartPoint EndPoint tmp tmp0 e_last dxf_last) (setq js (ssget "_+.:E:S" '((0 . "TEXT")))) (cond (js (setq dxf_ent (entget (ssname js 0)) dxf_210 (cdr (assoc 210 dxf_ent)) dxf_10 (trans (cdr (assoc 10 dxf_ent)) dxf_210 0) dxf_50 (cdr (assoc 50 dxf_ent)) txt_box (textbox dxf_ent) mat (mapcar '(lambda (n x d / ) (append n (list x) (list d)) ) (mapcar '(lambda (v) (trans v dxf_210 0)) '((1 0 0) (0 1 0) (0 0 1))) dxf_10 '(0 0 0 1) ) ) (entmake (list '(0 . "LINE") '(100 . "AcDbEntity") (assoc 67 dxf_ent) (assoc 410 dxf_ent) (assoc 8 dxf_ent) '(100 . "AcDbLine") (cons 10 (transpts (car txt_box) mat)) (cons 11 (transpts (polar (car txt_box) dxf_50 (- (caadr txt_box) (caar txt_box))) mat)) '(39 . 0) '(60 . 1) (assoc 210 dxf_ent) ) ) (setq entline (entlast) PathObj (vlax-ename->vla-object entline) EndDist (vlax-curve-getDistAtParam PathObj (vlax-curve-getEndParam PathObj)) StartPoint nil EndPoint nil ) (princ "\nDonnez le debut du surlignage du texte") (while (= 5 (car (setq tmp (grread t 5 1)))) (cond ((= 5 (car tmp)) (if StartPoint (grdraw (trans StartPoint 0 1) (trans tmp0 0 1) -1)) (setq StartPoint (vlax-curve-getClosestPointTo PathObj (trans (cadr tmp) 1 0)) tmp0 (polar (trans StartPoint 0 dxf_210) (+ (* 0.5 pi) dxf_50) (- (cadadr txt_box) (cadar txt_box))) ) (grdraw (trans StartPoint 0 1) (trans tmp0 dxf_210 1) -1) ) (T (princ "\nArrêt anormal de la commande ")) ) ) (entmake (list '(0 . "SOLID") '(100 . "AcDbEntity") (assoc 67 dxf_ent) (assoc 410 dxf_ent) (assoc 8 dxf_ent) '(62 . 2) '(100 . "AcDbTrace") (cons 10 (trans StartPoint 0 dxf_210)) (cons 11 (trans StartPoint 0 dxf_210)) (cons 12 tmp0) (cons 13 tmp0) '(39 . 0) (assoc 210 dxf_ent) ) ) (setq e_last (entlast) dxf_last (entget e_last) ) (princ "\nDonnez la fin du sulignage du texte") (while (= 5 (car (setq tmp (grread t 5 1)))) (cond ((= 5 (car tmp)) (setq EndPoint (vlax-curve-getClosestPointTo PathObj (trans (cadr tmp) 1 0)) tmp0 (polar (trans EndPoint 0 dxf_210) (+ (* 0.5 pi) dxf_50) (- (cadadr txt_box) (cadar txt_box))) ) (setq dxf_last (subst (cons 11 (trans EndPoint 0 dxf_210)) (assoc 11 dxf_last) dxf_last) dxf_last (subst (cons 13 tmp0) (assoc 13 dxf_last) dxf_last) ) (entmod dxf_last) ) (T (princ "\nArrêt anormal de la commande ")) ) ) (entdel entline) (sssetfirst nil js) (ai_draworder "_front") ) ) (prin1) )
-
Bonjour Mister Lecrabe, Tu remarqueras que ma réponse vidéo est tout de même différentes de ta réponse texte (toi tu passes par la connexion FDO puis un enregistrement DWG) et moi directement par le gabarit d'annotation. Donc deux approche différentes. Autrement le challenge... on dira que c'est ma façon de participer à la vie du forum. ;) C'est aussi pour te montrer mes compétences dans ce domaine ;) qui sait... j'ai vu que vous cherchiez du monde chez Géomap ;) Sinon pour la communauté , tu peux diffuser les vidéos sur géorézo ( il est vrai que je n'y participe pas vraiment) Cordialement, Laurent
-
Hello Laurent Alors chaque fois que je fais une reponse "TEXTE", tu fais une reponse "VIDEO" c un challenge interessant ! Et la prochaine fois, si je fais une reponse video ? Merci pour la communaute, Le Decapode (lecrabe)
-
Tutoriel boite de dialogue
Invité a répondu à un(e) sujet de (gile) dans ObjectARX/DBX, C++, .NET, RealDWG
C'est vrai que d'être célibataire ça aide! (pour le .NET j'veux dire) Mais bon, cette boutade reflète quand même une réalité. Apprendre le .NET demande beaucoup de temps. Combien de temps? Je vous le dirais si un jour j'arrive au bout, sous réserve qu'il y ait un bout... :huh: Alors voilà, je fais partie du club de "Ceux qui veulent apprendre le .NET", à moitié par obligation (merci Microsoft) et à moitié parce que c'est très intéressant et que c'est un challenge! Après la phase initiale très décourageante, je suis dans la phase où je m'y suis mis en suivant des tutoriaux, dont celui auquel on fait référence dans cette discussion. Mon sentiment est celui-ci: certes apprendre le .NET (et les langages qui vont avec, moi c'est le C#) est une tâche immense, ne croyez pas ceux qui vont diront le contraire, il faut voir ça comme un gigantesque puzzle, vous ne verrez pas au début l’intégralité du puzzle, vous assemblerez les choses pièces par pièces et tant que vous n'aurez pas une vision globale de la chose vous serez déçu. En gros, vous êtes le mec qui fabrique les différentes pièces de la tour Eiffel, vous n'êtes ni l'architecte ni le touriste qui s'émerveille devant le résultat. Mais soyez assurez qu'il y a bien une tour Eiffel au bout du chemin. Au bout de deux semaines, vous aurez l'impression de n'être pas arrivé à grand chose, mais aurez aussi la sensation que certaines pièces du puzzle se mettent en place et ceci devrait vous encourager à persévérer. Le .NET pour moi est difficile à cause de l'environnement, pas à cause des langages, comme dit Gilles, les langages, c'est juste une question de syntaxe. (du moins il me semble bien qu'il a dit ça...) -
Bonsoir, Voilà en corrigeant une coquille dans une de mes routines, j’ai pensé que la routine en question pourrait faire l’objet d’un petit challenge pas trop compliqué de début d’année. Il s’agit simplement d’émuler un peu la fonction subst de façon à ce que cette nouvelle version ne travaille plus sur un seul élément à remplacer, mais sur un ensemble d’éléments fourni sous forme de liste. Syntaxe (lsubst lst-nouv-élemt lst-anc-élemt lst) Arguments lst-nouv-élemt: Liste des nouveaux éléments lst-anc-élemt : Liste des anciens éléments lst : Liste de réference Valeur en retour Une liste modifié ou les nouveaux éléments remplacent les anciens, la liste est inchangée pour les éléments introuvablent Quelques exemples de résultats attendus: (lsubst '(x y z) '(a c e) '(a b c d c)) retourne (X B Y D Y) (lsubst '(b c nil) '(c b a) '(a b c d c)) retourne (nil C B D B) (lsubst '(b c) '(c b a) '(a b c d c)) retourne (A C B D B) (lsubst '(b c d) '(c B) '(a b c d c)) retourne (A C B D B) (lsubst '(z y w) '(a b c) '(a b c d c)) retourne (Z Y W D W) (lsubst '(b c a) '(a b c) '(a b c d c)) retourne (B C A D A) En espérant avoir été suffisamment explicite, sinon ne pas hésiter à demander un complément d’information. A+
-
INFORMATIONS UTILES A RENSEIGNER
Olivier Eckmann a répondu à un(e) sujet de lili2006 dans Autodesk Map
Bonjour, la saisie des données graphiques sous AutoCAD est une bonne solution, par contre les requêtes et la stylisation des cartes sous AutoCAD MAP à partir d'objets DWG (polyligne ou polygone) n'est pas super intuitive et l'interface date d'AutoCAD 14 alors c'est difficile à mettre entre toutes les mains. Par conséquent il serait intéressant de passer le plus tôt possible à un export en SHP, SDF ou SQLite pour utiliser la connexion FDO à cette source de données. La stylisation est très visuelle et les requêtes sont simples et disposent d'un outil très bien fait. En plus tout le travail de stylisation peut être exporté/repris sous Mapguide si on envisage d'externaliser le SIG avec des postes de consultation distant. Après si on a des licences AutoCAD MAP 3D2012, on peut envisager ça sous l'angle des modules métiers de MAP (ex topobase). La partie requête / recherche / publication semble très importante dans ce genre d'appli. Et avec les outils métiers de MAP on a tout ce qu'il faut pour concevoir des écrans de saisie, recherche et rapport très détaillé (très proche de ce que l'on fait avec un MsAccess). De plus on peut créer/développer des règles et process précis pour le type de saisie de l'utilisateur. L'inconvénient c'est que c'est pas simple à mettre en oeuvre et dans le cadre de PFE de BTS ça nécessite un investissement important du prof pour créer tout ce qui est nécessaire (gabarit, table, champ, règles...) afin que les étudiants ne se perdent pas dans les méandres de la config et se concentrent sur les données et les requêtes. Mais c'est un super challenge avec cette techno. Olivier -
fichier index.mnu et instance de famille
hoppla a répondu à un(e) sujet de Projeteur08 dans Creo (ex. Pro/Engineer)
L'utilitaire pour la création des fichiers .mnu ne propose pas cette option mais c'est vrai que ce serait pratique. Voilà un super challenge pour fhugues, s'il s'ennuie pendant ses vacances de Noël ;-)
