Aller au contenu

Le truc du point d\'accrochage... ?


Messages recommandés

Posté(e)

Bonjour,

 

Je suis en train d'essayer de corriger l'erreur d'une routine concernant le problème du point d'accrochage actif....

 

comme

(initget 1)
 ;(setq pA (getpoint "\nSpécifiez le point de base : "))

ne fonctionnait pas (ça m'accrochait un point nodal (accro actif) trop pret de mon centre (accro "temporaire")) .... et je ne veux surtout pas annuler au moment de ma commande l'accrochage actif (le nod est prioritaire)..... donc, je pensais faire ça en vl...

 

J'ai repiqué ça ("chez" (gile)) et transformé :

(setq AcDoc (vla-get-ActiveDocument (vlax-get-acad-object))
      Util (vla-get-Utility AcDoc))
 (setq pA (vla-getPoint Util nil "\nSpécifiez le point de base : "))
 
 (initget 1)
 (setq pA (vlax-safearray->list (vlax-variant-value pA)))

 

.... et bien ça ne fonctionne toujour pas !!!!.... parceque je crois :

 

.... c'est que si je fait un (Princ PA), mon pA est le bon, par contre, quand je lance la suite

(command "_copy" sel "" pA ".yz" "@" pause)

....Le point selectionné n'est plus bon.....

ce qui veut donc dire que c'est le "_copy" qui me fait l'erreur..... donc je pourrait désactiver l'accrochage actif juste avant le copy.....mais j'ai besoin de mon accrochage actif dans le "pause" !!!!!!

 

... je suis assez dégouté ....

Je ne comprend pas qu'Autocad prime l'accro actif au coordonnée d'un point....

 

.... y aurait t'il une solution ??? ....

 

merci

 

 

 

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

C'est pour les (command ...) qu'il faut désactiver les accrochages...

 

On peut le faire en accrochage temporaire : "_non" pour "aucun"

 

(command "_copy" sel "" [surligneur]"_non"[/surligneur] pA ".yz" "@" pause)

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Merci mais.... non... par pour ça on dirait.....

 

- Fait un cercle de diam 0.1 en 0 , 0 , 0

 

- Insert un point (setvar "PDMODE" 34)(setvar "PDSIZE" 0.15) au point 0 , 0.02 , 0

 

- Accrochage Nodal uniquement (setvar "OSMODE" 8)

 

puis :

 

 (princ "\n selec cercle :")
 (setq sel (ssget))
 (setq pA '(0 0 0) pB '(1 0 0))
 (command "_copy" sel "" "_non" pA ".yz" "@" pB)

 

.... et bien chez moi, la copie du cercle n'est pas en 1 , 0 , 0 mais en 1 , 0.02 , 0 ....

 

c'est tordu.... où il y a queqlque chose qui m'échappe ???

 

hop là, j'édite : (setvar "APERTURE" 20) ...

 

 

[Edité le 5/10/2006 par Bred]

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

... ? .... j'ai testé sur 2007, je viens de la faire sur 2006.... moi j'ai toujours la même erreur....

J'ai l'impression que ça vient de l"@" ....

 

.... quelqu'un d'autre pourrait tester le test en réponse 2 svp ???....

 

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

Posté(e)

J'ai l'impression que ça vient de l"@" ....

 

Tout à fait, essayes plutôt ceci

(command "_.copy" sel "" "_none" pA ".yz" "_none" "@" pB)

 

Le "Aucun" avant "@" évitera l'accroche au dernier point saisi (qui, si on suit dans ton ordre proposé est le point, ce qui explique ton résultat précédent)

 

 

Il est vrai que logiquement le dernier point saisi devrait être pA, mais en fait "LASTPOINT" contient encore le point car la commande copie n'est pas terminé. (j'ai déjà renconter ce problème avec des macros en diesel ou "LASTPOINT" ne contenait pas la valeur du dernier point saisi)

 

 

 

 

 

 

 

 

[Edité le 6/10/2006 par bonuscad]

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Posté(e)

Super! ça a l'air d'être ça !!!... mais ça m'échappe un peu en fait

 

donc, ce qui marche :

 (defun c:cop ()
(setvar "APERTURE" 20)
(setvar "OSMODE" 8)
(command "_point" '(0 0.02 0))
(command "_circle" "_none"'(0 0 0) 0.05)
(setq sel (ssget "L"))
(setq pA '(0 0 0) pB '(1 0 0))
(command "_copy" sel "" "_none" pA ".yz" "_none" "@" pB) 
)

 

... merci !!!

------------------------------

j'édite

Et bien merci pour l'explication, maintenant je comprend... (presque ;) )

 

[Edité le 6/10/2006 par Bred]

Si vous êtes persuadés de tout savoir sur un sujet, c''est que vous en ignorez quelque chose...

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 compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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é