1
私はここ数週間fabricjsで働いており、私が抱えている問題の解決策を見つけることができません。 私はオブジェクトを持っており、その周りの領域が "空"(オブジェクトがない)かどうかをプログラムで判断したいので、そこにオブジェクトを追加すると交差しません。ファブリック上で、オブジェクトが特定の座標にすでに存在するかどうかをどのように判断できますか?
私はcanvas.findTargetとさまざまな "仮想"オブジェクトで遊んでいましたが、何もできません。
これは私が見つけた解決策である:
var targetPoint = new fabric.Point(target.left + offset + 1, target.top + 1);
if (obj.containsPoint(targetPoint)) {
objectOnRight = obj;
}
敬具、 アレックスは
こんにちはTimと返信いただきありがとうございます。私が正しく理解していれば、このコードは既存の要素と重ならないコンテキストメニューを表示しますか?私はキャンバスオブジェクトを反復して同様のアプローチを試みていますが、あなたのコードで見たものに基づいた解決策があれば、私はあなたに戻ってきます。ありがとう! –
あなたは正しいですが、心配はありません。コードを消化したら、私に連絡してください。私はうまくいっても助けてくれるでしょう。 –
こんにちは、ティム!私はあなたが提示したものに基づいて解決策を見つけました。追加するオブジェクトに相対的な点を作成し、キャンバスオブジェクトのいずれかにその点が含まれているかどうかを確認します。元の投稿にサンプルコードを追加しました。 –