Dies ist ähnlich zu dem, was cletus gesagt, aber eine andere Art und Weise, es zu betrachten nehme ich an.
Ich gehe davon aus dem Dreieck Seite 1 ist.
Angenommen, Sie haben das Netz wie folgt:
y'
/
/__/__/__/__/__/__/
/__/__/__/__/__/__/
/__/__/__/__/__/__/____ x'
(0,0)
Wenn Sie das Gitter in einem Koordinatensystem betrachten, in dem die x und y-Achsen in einem Winkel von 60 Grad sind, ist ein Punkt, deren Koordinaten in dem abgewinkelten System (x ‚y‘) wird auf das Koordinaten entspricht in dem orthogonales System (mit gleichem Ursprung einer allgemeine Richtung der Achsen) bis (x, y).
In Ihrem Problem, Sie sind gegeben (x, y), müssen wir (x 'y') und dann herauszufinden, das Dreieck finden.
Wenn i der Einheitsvektor entlang der x und j die orthogonal entlang y ist, dann haben wir, dass
x'* i + y'( i/2 + sqrt(3) * j /2) = xi + yj.
(Grundsätzlich ist der Einheitsvektor entlang der Achse ‚angewinkelt‘ y i / 2 + sqrt (3) / 2 * j. Der Einheitsvektor entlang der x-Achse ist das gleiche wie die normalen x-Achse, dh i).
So
x' + y'/2 = x
y' * sqrt(3)/2 = y
Solving gibt:
y' = 2*y/sqrt(3)
x' = x - y/sqrt(3)
Nehmen wir für jetzt, dass x ‚und y‘ sind positiv.
Nun, wenn c = [x '], der ganzzahlige Teil von x'
und r = [y ‚] den ganzzahligen Teil von y‘
dann in den (Winkel-) Gittern, liegt der Punkt in der Spalte und die Cth rth Reihe. (Counting rechts und nach oben und beginnen bei 0 zu zählen).
So haben verengen wir Ihren Punkt zu einem Parallelogramm unten
____
/\ * /
/___\/
(c,r)
Nun, um herauszufinden, welches Dreieck ist es in Sie die Bruchteile von x betrachten können ‚und y‘.
{x} = x' - [x'] = x' - c.
{y} = y' - [y'] = y' - r.
Jetzt,
wenn {x} + {y} > 1, dann liegt der Punkt im Dreieck mit * gekennzeichnet. wenn {x} + {y} < 1, dann liegt der Punkt in dem anderen Dreieck. wenn {x} + {y} = 1, dann liegt der Punkt auf der Linie gemeinsam mit den beiden Dreiecken.
zu hoffen, das hilft.