点と直線のパズル
Y.MIKI 様 「点と直線のパズル①」
https://www.geogebra.org/m/j9gagzmh#material/htszsvaz
を、自分なりの方法で作成してみました。
構造の概説
前提オブジェクト
自由な点オブジェクトA,B,C,D,E
青い折れ線f : PolyLine[{A, B, C, D, E}]
9つの赤い点(リスト)list : {(0, 0), (1, 0), (2, 0), (0, 1), (1, 1), (2, 1), (0, 2), (1, 2), (2, 2)}
正解の判定
check : Product[Zip[α ≟ ClosestPoint[f, α], α, list]]
listの各要素の点について、f上にあるか否かをブーリアンで取得する。得られたブーリアンのリストに対して、Productコマンドを実行することで、1(すべてがtrueの場合)または0(1つでもfalseがある場合)を得る。
checkが1の場合が、正解となる。