usegomme Posté(e) le 6 août 2008 Posté(e) le 6 août 2008 Point de vue 3d avec concervation de l'echelle du dernier zoom .Après RP2 de Didier http:// http://www.cadxp.com/sujetXForum-20020.htmj'ai eu envie d'appliquer ce principe de concervation du zoom au lisp PDV de (gile) http://www.cadxp.com/sujetXForum-16919.htm Hormis le fait que je n'ai pas su reprendre le style de (gile) , je me suis rendu compte queles points de vue non iso ne permettent pas de concerver le point central de la vue ( la cible),et que si on était éloigné du point d'origine du SCU , la vue se décalait vers celui-ci. Pour contourner le problème j'ai pris pour cible une sélection d'objet(s) et j'utilise le zoom objet pour faire un recadrage avant de rétablir l'echelle de zoom. Croyant que l'affaire était dans le sac car en style visuel 2D tout marché bien , voila que je m'aperçois qu'en style visuel 3D mon lisp "perturbe" le fonctionnement de PDV de (gile). J'ai fini par comprendre (autocad2008) qu'en style visuel 3D la commande point de vue se cale sur le dernier zoom objet s'il y en a eu un. Et je n'ai pas trouvé de solution ! Cette propriété me permettrait toutefois de ne pas répéter inutilement le zoom objet sauf que je n'ai pas trouvé non plus comment savoir dans quel style visuel est ma vue. En espérant avoir des infos pour l'améliorer voici le lisp en question. Code obsolète supprimé voir plus bas [Edité le 13/8/2008 par usegomme]
didier Posté(e) le 7 août 2008 Posté(e) le 7 août 2008 coucou ravi de savoir que jai servi de base,c'est déjà ça !! mais comme tu le vois, il n'y a pas de commentaire ...quand j'ai lancé RP2, personne n'en voyait l'utilité non plus,et pourtant je ne peux m'en passer. étrange amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
usegomme Posté(e) le 7 août 2008 Auteur Posté(e) le 7 août 2008 Recoucou Merci pour le petit mot , tu as bien mérité les paroles de cette chanson de Brassens http://www.paroles.net/chanson/12642.1 mais je ne m'en fais pas , peut être bien que mon bricolage n'apporte rien ou pas grand chose . Mais ton RP2 est bien sympa (ainsi que PDV d'ailleurs), plutôt que se tordre le cou mieux vaut redresser la vue.Amicalement
lili2006 Posté(e) le 7 août 2008 Posté(e) le 7 août 2008 Bonsoir à toutes et tous, Est-ce que cette routine à un rapport avec ce travail de (gile) dans l'utilisation ? Merci d'avance, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
usegomme Posté(e) le 7 août 2008 Auteur Posté(e) le 7 août 2008 Oui, tout à fait ,sauf bien sûr la qualité d'écriture que je suis incapable de reproduire.J' ai doublé la frappe c'est à dire 77 au lieu de 7 par ex. pour ne pas empêcher le lisp de (gile) de fonctionner , mais quand j'ai commencé je ne savais pas qu'en mode d'affichage 3d , si un zoom objet a été fait dans la cession , la cde point de vue et donc par conséquent le lisp de (gile) fait un cadrage serré sur l'objet en question , chose qui ne se produit pas si on est en filaire 2d même si on est en vue 3D en tout cas sur la 2008 , à moins qu'il y ait un paramètre quelque part mais que j'ignore.
lili2006 Posté(e) le 7 août 2008 Posté(e) le 7 août 2008 Re, Merci de ta réponse usegomme, Je profite d'une période de vacance pour bosser un peu la 3D est suis donc à "l'affût" de tout ce qui peux aider à travailler en 3D et surtout la visualisation ou j'ai encore énormément de mal, donc ce genre d'outil est le bienvenue,... ;) Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
usegomme Posté(e) le 13 août 2008 Auteur Posté(e) le 13 août 2008 Malgré le peu de succés de mon bricolage je persiste à essayer de vendre mon point de vue. Voici deux nouvelles versions qui ont un petit intérêt me semble-t-il, dans le fait que l'origine du scu n'est pas perdue lors d'un pt de vue non iso contrairement à la cde autocad. PDVZO.lsp avec centrage sur objet(s) PDVZS.LSP avec centrage sur origine scu. POINT DE VUE SUR OBJET ; usegomme 13-08-08 ; point de vue 3 D avec conservation du zoom par présélectionner objet(s) ; pour définir ou redéfinir la cible ; et concervation de l'origine de SCU. ; nota: quand l'origine semble perdue, elle est en fait hors zone ecran. ; dix nouvelles commandes sont créées taper : ; 00 puis Enter -> bas ; 11 puis Enter -> isométrique sud ouest ; 22 puis Enter -> avant ; 33 puis Enter -> isométrique sud est ; 44 puis Enter -> gauche ; 55 puis Enter -> haut ; 66 puis Enter -> droite ; 77 puis Enter -> isométrique nord ouest ; 88 puis Enter -> arrière ; 99 puis Enter -> isométrique nord est (defun pointdevue-z (v / or h ce) ; permet de définir ou redéfinir la cible par ;;présélection (objet/action) (if (ssget "_i")(setq obj-cibl (ssget))) ; si pas de cible définie (if (not obj-cibl)(setq obj-cibl (ssget))) (setvar "cmdecho" 0) (setq or (getvar "ucsorg")) (setq h (getvar "viewsize")) ;;nouveau point de vue (command "_.view" v) ;; les points de vue non iso modifient le SCU , ;; les lignes ci-dessous permettent de recupérer ;; l'origine du SCU précédent (if (or (= v "_left")(= v "_front")(= v "_right") (= v "_back")(= v "_bottom")(= v "_top") ) (command "_ucs" "_o" "_none" (trans or 0 1)) ) ;;restoration du zoom (command "_zoom" "_o" obj-cibl "") (setq ce (trans (getvar "viewctr") 1 0)) (command "_zoom" "_c" (trans ce 0 1) h) (setvar "cmdecho" 1) (princ) ) (defun c:00 () (pointdevue-z "_bottom")) (defun c:11 () (pointdevue-z "_swiso")) (defun c:22 () (pointdevue-z "_front")) (defun c:33 () (pointdevue-z "_seiso")) (defun c:44 () (pointdevue-z "_left")) (defun c:55 () (pointdevue-z "_top")) (defun c:66 () (pointdevue-z "_right")) (defun c:77 () (pointdevue-z "_nwiso")) (defun c:88 () (pointdevue-z "_back")) (defun c:99 () (pointdevue-z "_neiso")) POINT DE VUE ORIGINE SCU ; usegomme 13-08-08 ; point de vue 3 D avec conservation du zoom ; et concervation de l'origine de SCU qui est la cible ; dix nouvelles commandes sont créées taper : ; 0+ puis Enter -> bas ; 1+ puis Enter -> isométrique sud ouest ; 2+ puis Enter -> avant ; 3+ puis Enter -> isométrique sud est ; 4+ puis Enter -> gauche ; 5+ puis Enter -> haut ; 6+ puis Enter -> droite ; 7+ puis Enter -> isométrique nord ouest ; 8+ puis Enter -> arrière ; 9+ puis Enter -> isométrique nord est (defun pointdevue-zs (v / or h ce) (setq ce '(0.0 0.0 0.0)) (if (equal ce (getvar "ucsorg")) (progn (prompt "\n Définir le SCU") (command "_ucs") (while (not (zerop (getvar "cmdactive")))(command pause)) ) ) (setvar "cmdecho" 0) (setq or (getvar "ucsorg")) (setq h (getvar "viewsize")) ;;nouveau point de vue (command "_.view" v) ;; les points de vue non iso modifient le SCU , ;; les lignes ci-dessous permettent de recupérer ;; l'origine du SCU précédent (if (or (= v "_left")(= v "_front")(= v "_right") (= v "_back")(= v "_bottom")(= v "_top") ) (command "_ucs" "_o" "_none" (trans or 0 1)) ) ;;restoration du zoom (command "_zoom" "_c" ce h) (setvar "cmdecho" 1) (princ) ) (defun c:0+ () (pointdevue-zs "_bottom")) (defun c:1+ () (pointdevue-zs "_swiso")) (defun c:2+ () (pointdevue-zs "_front")) (defun c:3+ () (pointdevue-zs "_seiso")) (defun c:4+ () (pointdevue-zs "_left")) (defun c:5+ () (pointdevue-zs "_top")) (defun c:6+ () (pointdevue-zs "_right")) (defun c:7+ () (pointdevue-zs "_nwiso")) (defun c:8+ () (pointdevue-zs "_back")) (defun c:9+ () (pointdevue-zs "_neiso")) [Edité le 25/8/2008 par usegomme]
usegomme Posté(e) le 25 août 2008 Auteur Posté(e) le 25 août 2008 Retour au grand classique pas si mal , mais en conservant l'origine du SCU et possibilité de pré-sélection pour faire un zoom objet .(bon j'espère que je ne pollue pas trop le site avec mes tergiversations. ; point de vue 3 D ; avec conservation de l'origine de SCU ; + zoom objet si présélection ; dix nouvelles commandes sont créées taper : ; 0 puis Enter -> bas ; 1 puis Enter -> isométrique sud ouest ; 2 puis Enter -> avant ; 3 puis Enter -> isométrique sud est ; 4 puis Enter -> gauche ; 5 puis Enter -> haut ; 6 puis Enter -> droite ; 7 puis Enter -> isométrique nord ouest ; 8 puis Enter -> arrière ; 9 puis Enter -> isométrique nord est (defun pointdevue (v / or obj) (setvar "cmdecho" 0) (setq or (getvar "ucsorg")) ;; obj-cibl est pour accord avec PDVO.lsp (if (ssget "_i")(setq obj-cibl (setq obj (ssget)))) ;;nouveau point de vue (command "_.view" v) ;; les points de vue non iso modifient le SCU , ;; les lignes ci-dessous permettent de recupérer ;; l'origine du SCU précédent sans empêcher le pivotement. (if (or (= v "_left")(= v "_front")(= v "_right") (= v "_back")(= v "_bottom")(= v "_top") ) (command "_ucs" "_o" "_none" (trans or 0 1)) ) (if obj (command "_zoom" "_o" obj "")) ;;(if obj-cibl (command "_zoom" "_o" obj-cibl "")) (setvar "cmdecho" 1) (princ) ) (defun c:0 () (pointdevue "_bottom")) (defun c:1 () (pointdevue "_swiso")) (defun c:2 () (pointdevue "_front")) (defun c:3 () (pointdevue "_seiso")) (defun c:4 () (pointdevue "_left")) (defun c:5 () (pointdevue "_top")) (defun c:6 () (pointdevue "_right")) (defun c:7 () (pointdevue "_nwiso")) (defun c:8 () (pointdevue "_back")) (defun c:9 () (pointdevue "_neiso"))
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant