-
Compteur de contenus
5 029 -
Inscription
-
Dernière visite
-
Jours gagnés
56
Type de contenu
Profils
Forums
Calendrier
Blogs
Tout ce qui a été posté par bonuscad
-
Bonjour, Bien que ce soit pour constituer des coupe de TN (profil en travers), tu peux essayer de détourner l'usage pour faire un profile long... Tu as coupe_tn.lsp sur ma page. Tu as alors 2 commandes dispo: "coupe_tn" et "choisir_coupe" Je te laisse découvrir les possibilités de ces commandes qui vont te coter automatiquement tes points de ligne TN et d'autres, si tu respecte ce code couleur pour les polyligne dessinées sur ta coupe. 1 "PROJET" 4 "ASSISE" 6 "FORME" 5 "BASE" Usage: Dessiner une ligne 2D déterminant la coupe que tu veux faire sur les 3Dfaces. NB: Le milieu de la ligne est censé représenter l'axe du profil en travers, pour avoir un profil en long, il serait mieux de déplacer la ligne par son milieu et de placer celui à l'origine du profil en long. Lancer la commande coupe_tn Choisir_coupe te re-côtera les sommets des polylignes de couleur trouvées, ou simplement si tu as modifié l'emplacement de sommets de n'importe quel polyligne. C'est une routine très ancienne, je ne pense plus retravailler dessus, donc si elle peut te convenir tant mieux, autrement chercher une autre solution...
-
Oui si tu as une machine et surtout une carte graphique adaptée et que tu ne travaille pas sur des fichiers extrêmement volumineux. Cette variable mise à 1 sollicite énormément la carte graphique, elle calcule en permanence pour t'afficher les arcs en mode lissé quelque soit le degré du zoom. Oui et elle est stockée dans le registre et pas dans le dessin, donc c'est un choix qui se répercute sur la manière dont Autocad se comporte graphiquement. Réglé à 1 d'une façon inadapté (matériel, taille de dessin conséquent), elle peut faire crasher Autocad. Donc pas sans surprise si on la change au petit bonheur la chance.
-
Bonjour, Si ton matériel graphique le permet, car pénalisant avec une carte graphique pas très bien adaptée, tu peut mettre WHIPARC à 1.
-
Et oui le (and) tout simplement, à part que ça rajoute encore une condition pour un test si simple. Ce truc m'a empêcher de voir l'évidence, je fatigue... En résumé: (> nil T) nil (rien/vide ne peut être supérieur à vrai) (< nil T) T (par contre rien/vide peut être inférieur à vrai) Vu comme ça (sans nombre finis), cela passe mieux ;)
-
Admettons,... Comment tu ferais ce test alors? Sachant que le nil est un retour possible d'évaluation (1ère expression). (> (vlax-curve-getDistAtPoint objet point) (vlax-curve-getDistAtPoint objet (vlax-curve-getEndPoint objet))) (< (vlax-curve-getDistAtPoint objet point) (vlax-curve-getDistAtPoint objet (vlax-curve-getStartPoint objet))) NB: Le point existe toujours, mais n'appartient pas forcément à l'objet traité.
-
Bonjour, En phase de test d'un code qui ne fonctionne pas bien, je viens de me rendre compte d'un truc (qui fait partie du B.A.BA) (> nil -1) nil (> nil 0) nil (> nil 1) nil Sur cela pas lézard cela me semble tout à fait logique..., mais pour (< nil -1) T (< nil 0) T (< nil 1) T Là je ne comprends plus ?!?! Je m'attendais à un résultat identique que pour > (supérieur) Rien/Vide ne peut être inférieur à 1 0 ou -1 ... PS: Identique avec >= et <=
-
Pour _EXPLODE 2 solutions: -Soit tu parcours ton jeu de sélection en décomposant tes insertions une par une dans une boucle (solution la plus propre) -Soit tu change l'état de variable QAFLAGS et tu appliques ton code (en explosant ton jeu de sélection), bien penser à remettre la variable non documentée à 0...
-
Je ne suis pas modo mais j'imagine fort bien la tâche qu'il en incombe pour les spams. En lisant cette discussion Vague de spam sur le forum sur le forum Ubuntu, je me demande si la solution qu'ils ont choisie ne pourrait pas être appliqué à CadXp. En gros après plusieurs essais de solutions, ils ont opté pour utiliser une liste mis à jour toute les heures et fournie par stopforumspam Lire la discussion pour plus d'infos. Si ça peut faire avancer le "Schmilblick", en sachant qu'il n'y a pas de solutions miracle!...
-
Sur cela je suis complètement d'accord. C'est cette affirmation qui me semble erronée. car c'est justement ce jeu de dégradé et d'ombre qui fausse notre perception des carrés concernés. Je pense que seule 4 possibilités d'échange sont possible, sur les autre cela rendrait justement le dégradé évident à l'oeil. En tout cas cela reste une très belle réalisation concrète. Certainement beaucoup moins facile qu'une représentation sur papier, écran.
-
Du même avis. Pour moi la diagonale claire à l'ombre du cylindre est en fait de couleur gris sombre. (4 carrés) Ce sont juste les diagonales sombres et claire dans l'ombre du cylindre (hormis la diagonale centrale) qui ont un gris dégradé. Si la source lumineuse était supprimée, vous verriez quand même l'effet (accentué en négatif) d'ombre sur les 4 diagonales concernées. [edit] Je joins une image pour illustrer la chose comme je le verrais sans source lumineuse (vite fait avec les gradients d'Autocad)
-
Ne sachant si cela pourrait résoudre ton problème, mais essayes de jouer avec la variable HPGAPTOL voir si elle aurait une incidence.
-
Trouver toutes les variables d'environnement
bonuscad a répondu à un(e) sujet de (gile) dans ObjectARX/DBX, C++, .NET, RealDWG
Une coquille: (getvar line) dans les 2codes au lieu de (getenv line) dans (envvars). -
Trouver toutes les variables d'environnement
bonuscad a répondu à un(e) sujet de (gile) dans ObjectARX/DBX, C++, .NET, RealDWG
Dire que j'avais fais ça manuellement (époque de la R14 avec un éditeur héxa) pour trouver les variables cachées dans le AutoCAD.exe Que dire de plus, tout simplement parfait. Pour MAP 2011 j'arrive à 834 variables système (comment voulez vous qu'on s'en sorte avec autant de variables?) et 572 variables d'environnement... Ta méthode avec le registre reste toujours valables pour celle qui seraient définies par l'utilisateur. Avec tout ça on est paré. Merci du temps passé! -
Trouver toutes les variables d'environnement
bonuscad a répondu à un(e) sujet de (gile) dans ObjectARX/DBX, C++, .NET, RealDWG
J'ai essayé certaines variables que j'ai donné dans l'autre fil. (la liste provient de Bruno Toniutti depuis une 2004) Et bien beaucoup sont encore valables mais ne figure pas dans ta liste, ce qui me laisse penser que des variables "se planquent" aussi ailleurs que dans la branche de registre indiquée. Aie!!! le registre est grand... -
Trouver toutes les variables d'environnement
bonuscad a répondu à un(e) sujet de (gile) dans ObjectARX/DBX, C++, .NET, RealDWG
Merci pour la redirection du lien, C'est parfait sous ma version MAP2011, la fonction me retourne 322 variables + 5 concernant un certain Patrick_35 ;) Franchement cela sera utile aux programmeurs qui voudront "traquer" les variables. Du coup on peut même virer les indésirables :(rires forts): :(rires forts): Mais non Patrick_35, je plaisante. Sincère remerciement pour ce partage et à ta vivacité de création. Même pas eu le temps de regarder si je pouvais faire quelque chose de moi-même en simple lisp avec la piste que tu m'avais donné. Mais je pense que le ferais quand même car je n'aime pas être attaché à des problèmes de version de DLL. -
Trouver toutes les variables d'environnement
bonuscad a répondu à un(e) sujet de (gile) dans ObjectARX/DBX, C++, .NET, RealDWG
:( Je suis pas enregistré sur "the swamp" (je consulte juste de temps en temps, mais ne participe pas.Bien que je me débrouille en anglais, cela ne reste pas mon fort), je ne peux donc retirer la pièce. Pour l'occasion, j'ai voulu le faire, mais la section registration est down pour le moment... Si quelqu'un peu me la proposer autrement, c'est bien volontier. Je pourrais ainsi la tester sous MAP 2011 -
Pour les variables c'est sur que tu peut récupérer la liste comme du l'énonce (avec le joker *).Encore que certaine variable cachée ne te seront pas retournées. Pour les variables d'environnement, rien n'existe de similaire. Bien que le but ne soit pas cela, c'est vrai que c'est similaire. Mais bon vu mon niveau, pour moi je serais juste capable de faire CA Si effectivement elles sont toutes à cet endroit, la solution deviendrait plus simple. J'essayerais d'explorer cette voie (à temps perdu...)
-
Ou alors c'est stocké dans les variables d'environnement... (getenv) (setenv) J'ai bien une liste, mais elle date des années 2002 environ, depuis il doit y en avoir une floppée qui se soient rajoutées. Je me demandais si une fonction récursive ne serait pas capable de faire une recherche de toutes les variables d'environnement valides dans Autocad (sachant que l'on peut créer ses propres variables et que celle ci sont sensible à la case) Je m'y suis essayé, mais pour l'instant, choux blanc! Je ne suis pas très doué pour appréhender ces fonctions récursives correctement.... Mon idée de départ était d'incrémenter avec (chr) dans une plage de 32 à 128 sur environ 32 ou 64 caractères et de vérifier par (getenv) leur validité afin de générer une liste pour la version (avec ses Add-On) sur laquelle on tourne.
-
Pour moi ce code n'est pas du tout compliqué, je dirais même que c'est du B.A.BA du lisp. Est-il necessaire? Je t'accorde que non, ta méthode à l'ancienne est tout à fait valable. Ça peut te sembler rapide, mais si tu en as une ribambelle à mettre en place, je pense que je serais plus rapide que toi. ;) De ton coté tu auras à procéder à des effacements de tes bases, puis à la modification de la longueur de ta pente résultante, soit par "ajuster", "prolonger" ou simplement modiflong. Si tu veux ta pente AVEC le plan XY, il va certainement falloir que tu fasse des SCU pour ta construction, tout ça fait quand même pas mal de manipulations à mon goût. NB: Dans mon code tu as la possibilité d'entrer simplement la longueur (lors de la demande du deuxième point) si l'élastique est orienté dans la bonne direction. La seule chose qui peut être perturbante est que seule les pentes dans le 1er et 3ème quadrant (pente opposée) peuvent être mis en place (pour une valeur de pente POSITIVE) Pour avoir les pentes dans les 2 autres quadrants, il faut donner une valeur NÉGATIVE au pourcentage. Mais bon, je propose, chacun est libre de l'utiliser ou non et de trouver ma proposition incongrue, inadaptée, usine à gaz (cocher l'option)
-
Je l'avais certainement déjà donné (un peu ancien), une procédure pour travailler avec des pentes, soit DANS le plan XY, soit AVEC le plan XY. (defun errlsp (ch) (cond ((eq ch "Function cancelled") nil) ((eq ch "quit / exit abort") nil) ((eq ch "console break") nil) (T (princ ch)) ) (setvar "cmdecho" v1) (setvar "orthomode" v2) (setvar "osmode" v3) (setvar "blipmode" v4) (setvar "snapang" v5) (setq *error* olderr) (princ) ) (defun C:PENTE ( / v1 v2 v3 v4 v5 d_pc flag p_o p_f dlt_x d olderr) (setq v1 (getvar "cmdecho") v2 (getvar "orthomode") v3 (getvar "osmode") v4 (getvar "blipmode") v5 (getvar "snapang") ) (setvar "cmdecho" 0) (setvar "orthomode" 0) (setvar "blipmode" 0) (setq olderr *error* *error* errlsp) (initget 1) (setq d_pc (getreal "\nEntrer la valeur de la pente (rampe) en % ?: ")) (initget 8) (setq p_o (getpoint "\nPoint de départ : ")) (if (eq p_o ()) (setq p_o (getvar "lastpoint"))) (initget "Dans Avec _In With") (if (eq (getkword "\nPente [Dans/Avec] le plan XY <Dans>: ") "With") (setq flag T) (progn (setvar "snapang" (atan (/ d_pc 100.0))) (setvar "orthomode" 1) (setq flag nil) ) ) (initget 41) (setq p_f (getpoint p_o "\nPoint final : ")) (setvar "osmode" (+ 16384 (rem (getvar "osmode") 16384))) (if flag (progn (setq dlt_x (sqrt (+ (* (- (car p_o) (car p_f)) (- (car p_o) (car p_f))) (* (- (cadr p_o) (cadr p_f)) (- (cadr p_o) (cadr p_f)))))) (setq d (* dlt_x (/ (sin (atan (/ d_pc 100.0))) (cos (atan (/ d_pc 100.0)))))) (setq p_f (list (car p_f) (cadr p_f) (+ (caddr p_o) d))) (command "_.line" p_o p_f "") ) (progn (setq dlt_x (- (car p_f) (car p_o))) (setq d (/ dlt_x (cos (atan (/ d_pc 100.0))))) (command "_.line" p_o (polar p_o (atan (/ d_pc 100.0)) d) "") ) ) (setvar "cmdecho" v1) (setvar "orthomode" v2) (setvar "osmode" v3) (setvar "blipmode" v4) (setvar "snapang" v5) (setq *error* olderr) (prin1) ) Pour l'interrogation d'une pente, tu peux utiliser ceci: (defun C:ID-PENTE ( / pt_o pt_f dxf_11 dev dev_z) (initget 8) (setq pt_o (getpoint "\nSpécifiez le point de départ: ")) (if (null pt_o) (setq pt_o (getvar "lastpoint"))) (cond (pt_o (initget 41) (setq pt_f (getpoint pt_o "\nChoix du point final: ")) (cond (pt_f (setq dxf_11 (trans (mapcar '(lambda (x / ) (/ x (distance (trans pt_o 1 0) (trans pt_f 1 0)))) (mapcar '- (trans pt_f 1 0) (trans pt_o 1 0))) 0 1 T) ) (if (zerop (car dxf_11)) (setq dev "infini") (setq dev (rtos (* (/ (cadr dxf_11) (car dxf_11)) 100.0) 2 4)) ) (if (= (caddr dxf_11) 1.0) (setq dev_z "infini") (if (zerop (caddr dxf_11)) (setq dev_z (rtos 0.0 2 4)) (setq dev_z (rtos (* (sqrt (/ 1.0 (- (/ 1.0 (* (caddr dxf_11) (caddr dxf_11))) 1.0))) 100.0) 2 4)) ) ) (prompt (strcat "\nPente dans le plan XY = " dev " % - Pente avec le plan XY = " dev_z " %")) (alert (strcat "Pente dans le plan XY = " dev " % - Pente avec le plan XY = " dev_z " %")) ) ) ) ) (prin1) )
-
Modifier les objets d'une XRef
bonuscad a répondu à un(e) sujet de krunch dans Pour aller plus loin en LISP
Si (nentselp) effectivement permet d'ACCEDER aux informations de définitions des sous-objets en aucun cas elle ne permet de les MODIFIER par (entmod) pour des Xrefs. Pour moi ce que tu veux faire n'est pas possible. La fonction la plus proche serait NCOPY des Exprestools, qui elle effectivement récupère les informations imbriquées MAIS recrée par (entmake) celle ci dans le dessin courant. On pourrait (mais je vois pas trop l'intérêt! car disparaîtrait au 1er rafraîchissement de l'écran) utiliser (grdraw) ou (grvecs) pour redessiner virtuellement ces sous-entités d'après les infos retourné, et éventuellement modifiées, de (nentsel) ou (nentselp) Voilà pour le distinguo... -
Salut, Je n 'en doute pas mais!... Ces points sont ils en 3D? Ton accroche objet est actif? Il n'est pas possible d'obtenir une surface avec des points non coplanaire, pour contourner cela tu peux verrouiller la variable OSNAPZ
-
Bonjour, Impressionnant, est-ce dût aux récents séismes en Chine? Des clichés [Edit] Le cliché de l'homme tenant la bouteille me semble retouché, j’émets donc des réserves sur la manipulation ou l'exagération du phénomène.
-
Bonjour,bonsoir, Je vais vous faire un retour de mon expérience. Gros fumeur (25c/j) depuis trop longtemps, mais j'aimais ça. Dernièrement pour palier aux hausses, je tubais mes cigarettes et mon budget s'établissait à environ une 30€/sem. Ce budget pour payer des taxes à l'état, qui trouvait encore le moyen de me culpabiliser avec mon addiction (alors que c'est lui qui m'a fortement incité: paquets de troupe pendant service militaire qui était pratiquement donnés) et que ces taxes ne sont certainement pas voué à la santé mais octroyé à je ne sais quoi. Je me suis alors laissé tenter par l'expérience de l' e-cig. Essentiellement dans le but de la maîtrise de mon budget, je le précise et non dans un souci de santé. Et bien je suis bluffé, j'ai lâché la clope du jour au lendemain sans aucune difficulté et ce depuis 2 mois et demi. Depuis que je m'y suis mis, j'ai du fumer une dizaine de clope. Plus ça va, moins celle-ci me tentent, je les trouvent de plus en plus dégueulasse. Alors bien sur le prolylène glycol laisse un doute, mais personnellement je crois avoir fais mon choix. Je quitte ma première addiction pour une autre, mais je pense que cette seconde peu me conduire vers un arrêt pratiquement définitif (si je le désire...) avec beaucoup moins de difficulté. Pour l'instant que du "benef", je retrouve du souffle, de l'odorat, du goût et des euros en plus dans mon porte-monnaie. Bien sur, je ne recommande l'expérience qu'à des fumeurs confirmés, car cela reste une sale habitude (bien que cette dernière sois plus sympa) Par contre le choix reste difficile devant l'explosion des modèles proposés, si cela intéresse quelqu'un je pourrais donner mon cheminement pour l'acquisition du matériel, autant ne pas se "planter" car ce matériel a quand même un coût! Quelqu'un dans ce forum a-t-il fait aussi ce saut? qu'en pense t-il? Pour la santé, le budget! A mon stade, je pense maintenant à viser ma santé en baissant la nicotine et tendre à zéro, après on verra... pour la gestuelle!
-
Récupérer les coordonnées de l’affichage actif
bonuscad a répondu à un(e) sujet de VDH-Bruno dans Pour aller plus loin en LISP
Bonjour, Pour la variable VIEWTWIST, celle-ci est en corrélation avec la commande VUEDYN (_DVIEW) et l'option "Basculer" ("_Twist"), l'aide ne t'en dira guère plus... Personnellement je me suis servi rarement de cette variable sauf pour faire basculer une vue dans une fenêtre depuis l'espace papier (passer de portrait à paysage par exemple) un peu à la façon de MVSetup après avoir mis beaucoup d'option.
