PHILPHIL Posté(e) le 15 février 2023 Posté(e) le 15 février 2023 hello. je cherche une méthode ou un bout de lisp permettant de vérifier si les coordonnées d'un point ou de points est a l'intérieur ou sur une polyligne rectangle. je vais en avoir quelque millier ( de points ) je pense a vérifier par rapport a des centaines de polylignes. j'avais pensé a cette méthode la : récupérer les coordonnées des points de mon rectangle. les "x" et "y" inférieurs, les "x" et "y" supérieurs. a vérifier si le "x" du point etait a la fois supérieur aux "x" inférieurs du rectangle et inférieur aux "x" supérieurs du rectangle. pareil pour les "y", si le cas le point est dans le rectangle. mais ca doit faire beaucoup de calcul ca. j'ai trouvé ca aussi comme méthode de Maxence qui doit etre sur le forum de tps en tps. http://maxence.delannoy.pagesperso-orange.fr/pt_poly.htm avez vous une méthodes plus rapide et efficace ? merci Phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
(gile) Posté(e) le 15 février 2023 Posté(e) le 15 février 2023 Salut, Vérifier si les coordonnées x et y du point sont dans un intervalle est bien ce qui demande le moins de calculs. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
didier Posté(e) le 15 février 2023 Posté(e) le 15 février 2023 Bonjour Comme le dit @(gile) les calculs ne sont pas bien compliqués, pour ne pas dire simplistes. Et qui plus est dans un rectangle ! Le cas du rectangle donc un côté est parallèle au SCU c'est une différence de coordonnées. Dans l'autre cas, un petit calcul est nécessaire, mais pas impossible. Peut-on voir ton code dans l'état actuel d'avancement ? Tu vas finir par passer plus de temps en recherche sur le net qu'en essais par toi-même. Amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
PHILPHIL Posté(e) le 15 février 2023 Auteur Posté(e) le 15 février 2023 hello il n'y a pas de code encore, mais si vous en aviez un bout ou la méthode. c'est surtout pour pas que j'écrive une usine a gaz quoi. sinon je fais la méthode que j'ai décris plus haut. Phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
(gile) Posté(e) le 15 février 2023 Posté(e) le 15 février 2023 (defun isInside (pt lowerLeft upperRight) (and (<= (car lowerLeft) (car pt) (car upperRight)) (<= (cadr lowerLeft) (cadr pt) (cadr upperRight)) ) ) Qu'on peut aussi écrire : (defun isInside (pt lowerLeft upperRight) (vl-every '<= lowerLeft pt upperRight) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
PHILPHIL Posté(e) le 15 février 2023 Auteur Posté(e) le 15 février 2023 Hello Gile mercii je suppose que pt, lowerleft, upperright sont des coordonnées ( 0,0,0) ( 2.0223,123.52,0) c'est bien ce que je me disais, j'aurais ecris 20 lignes d'usine a gaz Merci Phil FREELANCE Autodesk Architecture 2025 sous windows 11 64 REVIT 24 pouces vertical + 30 pouces horizontal + 27 pouces horizontal
didier Posté(e) le 15 février 2023 Posté(e) le 15 février 2023 Bonjour @PHILPHIL Ce n'est en rien déshonorant décrire des "usines à gaz" (surtout en ce moment avec les problèmes gaziers). Il eût été bien plus préférable que tu écrives de ta propre main vingt ou trente lignes de code, ça t'aurait aidé à comprendre et aidé à faire plus court ensuite. Apprendre à marche puis apprendre à courir Certes, en copier cinq est plus facile, mais bien moins formateur. L'esprit initial qui était la ligne directrice de ce site, l'apprentissage, a bel et bien disparu, l'ère du copier-coller devient la norme et je le regrette infiniment. Amicalement Éternel débutant... Mon site perso : Programmer dans AutoCAD
DenisHen Posté(e) le 3 mai 2023 Posté(e) le 3 mai 2023 Bonjour à la communauté. Juste une remarque (c'est plus une question) qu'en est-il si le rectangle est "oblique", pas aligné avec l'axe des X et des Y ? Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
Curlygoth Posté(e) le 3 mai 2023 Posté(e) le 3 mai 2023 ça marche pareil. apres je te conseil la loi des cosinus si tu veux quelque chose de plus "pro" Mon site Web (en cours de construction) : Site DA-CODE de @didier
DenisHen Posté(e) le 3 mai 2023 Posté(e) le 3 mai 2023 Alors c'est quel coordonnées pour le lowerLeft et pour le upperRight ? Car je n'ai pas de point en bas à droite ni en haut à gauche... Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
(gile) Posté(e) le 3 mai 2023 Posté(e) le 3 mai 2023 Il y a 3 heures, DenisHen a dit : Alors c'est quel coordonnées pour le lowerLeft et pour le upperRight ? Car je n'ai pas de point en bas à droite ni en haut à gauche... Ce n'est plus le même problème que la question initiale. Si tu veux qu'on t'aide à résoudre un problème différent, il faut que tu précises de quoi tu pars. Par exemple, s'il s'agit d'entités AutoCAD (polyligne et point nodal), tu peux définit un SCU Objet sur la polyligne avant de récupérer les lowerLeft et upperRight Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
DenisHen Posté(e) le 3 mai 2023 Posté(e) le 3 mai 2023 Désolé, je n'ai pas de "problème" sur ce sujet, je posais juste une question. Mais vu que dans le sujet initial, il n'était pas précisé l'orientation du rectangle, j'ai juste fais une petite observation. Pour faire avancer le Schmilblick. Effectivement, j'avais aussi pensé à un "SCU local". Windows 11 / AutoCAD 2024 Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net). Davantage d'avantages, avantagent davantage (Bobby Lapointe). La connaissance s'accroît quand on la partage (Socrate). Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)
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