Re: Détecter un point dans un quadrilatère

トップ ページ

このメッセージに返信
著者: Frédéric
日付:  
To: Guilde
題目: Re: Détecter un point dans un quadrilatère
Le vendredi 20 juin 2025, Raphaël a écrit :

> Chaque segent du bord de ton quadrilatère d'indice i peut être modèlisé comme
> une équation :
>
> A[i]*x +B[i] * y + C[i] =0
>
> Quand tu évalues l'équation sur un point (x,y), le signe de la partie gauche
> de l'équation indique de quel "coté" de la droite tu te trouves.
>
> Donc, il faut que les 4 évaluations des équation du quadrilatère aient le même
> signe avec la même paire (x,y), le point considéré.


Ok, vu. Il faut que j'oriente correctement mes segments, du coup...

> Il va falloir implémenter/récupérer la multiplication 8x8 => 16 bits, en
> supposant que ton écran a une résolution inférieure à 256x256. Algo de
> multiplication "du paysan Russe".


La résolution réelle totale de l'écran est de 320x200, mais mes images ne
font que 288x200. Comme je voulais stocker les coordonnées des zones
(rectangulaire, pour le moment) sur 8 bits, j'ai divisé par 2 la
coordonnée X des zones.

Du coup, je peux faire ce que tu préconises. Des routines de
multiplication en Z80, c'est pas ce qui manque ;o)

Merci !

PS : j'ai omis de préciser qu'une partie du code Z80 est généré par des
macros écrites en Lua. En particulier pour définir ces zones. J'ai donc la
possibilité de faire du pré-traitement assez complexe, et de manière assez
rapide, puisque c'est exécuté sur le PC qui cross-assemble.

-- 
    Frédéric