Aller au contenu

ssget ??


Messages recommandés

Bonjour à tous,

 

J'utilise la fonction ssget pour retrouver un bloc (la suite de ce poste ici).

Mais de façon aléatoire et sans manipulation particulière la fonction ssget ne retouve pas mon bloc alors que celui ci est bien dans le fenetre de selection et qu'il répond bien aux critères du ssget.

J'ai fait dessiner la fenetre de selection préalablement grace au point "point_insertion_inf" "point_insertion_sup" comme ceci

 (setq point_insertion_sup (mapcar '(lambda (x) (+ x 0.1)) point_insertion)
         point_insertion_inf (mapcar '(lambda (x) (- x 0.1)) point_insertion))
   (setq essai (ssget "_C" point_insertion_inf point_insertion_sup  (list '(0 . "INSERT") '(2 . "annotation"))))
   (command "calque" "e" n "")
   (command "rectang" point_insertion_inf point_insertion_sup "")

Le bloc se retrouve bien dans le rectangle mais essai renvoie nil et donc provoque une erreur par la suite avec le "ssname".

 

Ce cas ne se présente pas toujours avec le même bloc c'est assez aléatoire!

 

Quelqu'un à t il une idée de ce qui pourait provoqué ceci? y a t il quelque chose que j'ai mal fait ?

 

Merci de l'aide, je suis à cours d'idée

 

("Quand les ordinateurs ne suive plus la logique, l'erreur est toujours du même coté de l'écran!")

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Ce cas ne se présente pas toujours avec le même bloc c'est assez aléatoire!

 

Toute les formes de (ssget) qui requiert des points de sélections peuvent avoir des retours de sélections aléatoires.

Comme c'est une forme graphique de sélection celle-ci est dépendante de l'affichage du mode d'accrochage, des paramètres de sélections. Si cela est possible il vaut mieux accentuer son filtre de sélection général que de faire des sélections graphiques individuelles. Si ce n'est pas possible (cela peut l'être), il te faut penser (si ce n'est déjà fait) à régler OSMODE APERTURE PICKBOX. Isoler le calque à traiter peu aider aussi a un meilleur comportement. Si le résultat n'est pas convainquant il faudra par exemple par une boucle avec un zoom objet (ceci pour faire la sélection a peu prés avec les mêmes conditions graphiques) avant de lancer ta ligne de sélection.

Les système de coordonnés (par exemple les Lambert topographique) peuvent être aussi un handicap pour les sélections par points.

 

En général, les sélections par points se révèlent souvent problématiques...

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

Lien vers le commentaire
Partager sur d’autres sites

Pour les variables, OSMODE je l'ai mis à 0 en revanche APERTURE PICKBOX je n'y ai pas toucher qu'elle valeur faut ils leur appliquer pour avoir un résultat sur SSGET.

 

Avec le zoom objet y faut séléctionner l'objet or c'est ce que je cherche à faire alors je vois pas comment je pourrais l'utiliser?

 

Merci

Lien vers le commentaire
Partager sur d’autres sites

Pour les variables, OSMODE je l'ai mis à 0 en revanche APERTURE PICKBOX je n'y ai pas toucher

 

Si tu utilise OSMODE à 0 alors APERTURE ne sera d'aucun utilité: c'est la taille de la cible d'accrochage.

PICKBOX est la taille de la cible de sélection, si tu la mets à 1 et que tu prends par exemple la commande "effacer", tu verra que ta cible est minuscule (la sélection devient plus difficile à la souris) mais à travers le lisp, cela peut éviter une sélection malencontreuse d'autres objets.

 

Avec le zoom objet y faut séléctionner l'objet or c'est ce que je cherche à faire

D'après ce que j'ai compris tu récupère un point_insertion, donc il provient bien d'un objet, c'est sur celui-ci qui faudrait zoomer pas sur celui que tu cherche à sélectionner (qui à l'air à proximité).

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

Lien vers le commentaire
Partager sur d’autres sites

Nn enfet mon point d'insertion c'est le point d'insertion du block donc l'objet que je cherche à séléctionner, or je ne pouvais pas le metre dans les critère de séléction car à cause des précisions de dessin il le retrouvais une fois sur 4 donc j'ai fait une fenetre de séléction. avec les points inf. et sup.

 

Mais du coup en rebondisant sur ton zoom objet j'ai fait un zoom fenetre sur le cadre que j'ai avec ces deux points (pt inf. et pt sup.)et pour l'instant ça fonctionne.

 

Merci pour les infos je pensais pas que SSGET était aussi capricieux!!

 

Merci Bonuscad

Lien vers le commentaire
Partager sur d’autres sites

La problème avec ssget et les fenêtres de sélection c'est que tout ce qui n'est pas visible à l'écran n'est pas sélectionné.

Et si tu fait un zoom étendu avant, avec des objets très éloigné, tu risques de sélectionner trop d'objets.

 

Pour en revenir à ton sujet initial, la dernière réponse donnée par VDH-Bruno est la bonne car elle ne dépend pas de l'affichage ni de l'accrochage aux objets.

Aide au téléchargement du cadastre dgfip-download-helper
Insertion de photos géolocalisées exif https://www.dropbox.com/s/gkf6o9ac2hxen97/exifscr.zip?dl=0
Script correction BUG SPDC V2, propriétaire département 21 et 22 : https://greasyfork.org/scripts/442400-spdcv2/code/SPDCV2.user.js

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

Nn enfet mon point d'insertion c'est le point d'insertion du block donc l'objet que je cherche à séléctionner, or je ne pouvais pas le metre dans les critère de séléction car à cause des précisions de dessin il le retrouvais une fois sur 4

 

A ce sujet , je crois que tu n’as pas creusé suffisamment (ou saisie totalement) l’exemple que je t’avais posté pour la construction de ton filtre de sélection sur le point d’insertion d’un bloc et des arrondies dans les coordonnées.

http://cadxp.com/index.php?/topic/37447-rechercher-un-bloc/page__view__findpost__p__205935

 

A+

(Edit: Ah, doublon avec vincentp010 désolé...)

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

oui j'avais déja fait avec la fenêtre de selection et je voyais seulement une alternative de ce que je faisait avec ton filtre de selection (mal vu :) ).

Mais les prochaine fois ou pour affiner ma routine je passerais par ce chemin car je trouve que ça fait un peu bidouille avec ma fenêtre de selection.

 

Merci à tous

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

 

Comment fais t on pour reselectionner une séléction que l'on à sauver sous une variable.

mais juste une routine qui la séléctionne et qui quitte en laissant les objets séléctionner.

command "select" ne marche pas ...

merci

 

Bonjour,

 

Avec sssetfirst si tu cherche à "gripper" une sélection contenue dans une variable ss.

 

_$ (setq ss (ssget))
<Selection set: 136>
_$ (sssetfirst nil ss)
(nil <Selection set: 136>)

 

A+

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

Re,

 

command "select" ne marche pas ...

Avec la commande select il n’y a pas de soucis...

Commande: (setq ss (ssget))

Choix des objets: Spécifiez le coin opposé: 263 trouvé(s)

Choix des objets:

<Selection set: 15a>

Commande: select

Choix des objets: !ss

<Selection set: 15a>

263 trouvé(s)

Choix des objets:

 

Sauf que pour visualiser la sélection, il faut le faire avec l’option precedent, dans une commande AutoCAD.

Commande: dp

DEPLACER

Choix des objets: p

263 trouvé(s)

 

Et dans ce cas il est plus simple d’appeler directement la variable contenant le jeu de sélection sauvegardé à l’invite de la commande AutoCAD.

Commande: dp

DEPLACER

Choix des objets: !ss

<Selection set: 15a>

263 trouvé(s)

 

A+

Apprendre => Prendre => Rendre

Lien vers le commentaire
Partager sur d’autres sites

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é