N° | Fonction | Catégorie | Version |
---|---|---|---|
BIG 06 | BiG_PtInCadre | Fonction Géométrique | 1.0 - Janvier 2007 |
But | Teste si un point est dans un rectangle |
Prototype | (BiG_PtInCadre PtMin PtMax Pt2test) |
Argument | PtMin - Le point Bas Gauche du rectangle - Liste - PtMax - Le point Haut Droit du rectangle - Liste - Pt2test - Le point à tester - Liste - |
Retours | T ou nil |
Var. globales | Néant |
Description | Teste si un point se trouve placé à l'intérieur d'un cadre déterminé par les points Bas Gauche et Haut Droit. |
Notes | |
Exemples | Commande: (BiG_PtInCadre '(0 0) '(200 200) '(100 100)) retourne T Commande: (BiG_PtInCadre '(0 0) '(200 200) '(100 300)) retourne nil |
1- (defun BiG_PtInCadre (*PtMin *PtMax *Pt2test) 2- (and (or (> (car *Pt2test) (car *PtMin)) 3- (equal (car *Pt2test) (car *PtMin) 0.0001) 4- ) 5- (or (< (car *Pt2test) (car *PtMax)) 6- (equal (car *Pt2test) (car *PtMax) 0.0001) 7- ) 8- (or (> (cadr *Pt2test) (cadr *PtMin)) 9- (equal (cadr *Pt2test) (cadr *PtMin) 0.0001) 10- ) 11- (or (< (cadr *Pt2test) (cadr *PtMax)) 12- (equal (cadr *Pt2test) (cadr *PtMax) 0.0001) 13- ) 14- ) 15- )
Ligne 2 : Si, à la fois, Ligne 2 : - Le point à tester a une coordonnée en X supérieure au point *PtMin Ligne 3 : ou égale à 0.0001 unité près; Ligne 5 : - Le point à tester a une coordonnée en X inférieure au point *PtMax Ligne 6 : ou égale à 0.0001 unité près; Ligne 8 : - Le point à tester a une coordonnée en Y supérieure au point *PtMin Ligne 9 : ou égale à 0.0001 unité près; Ligne 11 : - Le point à tester a une coordonnée en Y inférieure au point *PtMax Ligne 12 : ou égale à 0.0001 unité près; Ligne 15 : Retourne T si ces conditions sont remplies.