かっこいい、JavaScriptに実装できますか？
確かに、JavaScriptのMöller-Trumboreアルゴリズムの実装です。
「JavaScript
関数間片角（Ray、Triangle）{
  const edge1 = triangle.v2.subtract（triangle.v1）;
  const edge2 = triangle.v3.subtract（triangle.v1）;
  const h = ray.direction.cross（edge2）;
  const a = edge1.dot（h）;
  if（a> -epsilon && a <epsilon）{
    falseを返します。//レイは三角形に平行です
  }
  const f = 1.0 / a;
  const s = ray.origin.subtract（triangle.v1）;
  const u = f * s.dot（h）;
  if（u <0.0 || u> 1.0）{
    falseを返します。//交差点は三角形の外側です
  }
  const q = S.cross（edge1）;
  const v = f * ray.direction.dot（q）;
  if（v <0.0 || u + v> 1.0）{
    falseを返します。//交差点は三角形の外側です
  }
  const t = f * edge2.dot（q）;
  if（t> epsilon）{
    tを返します。//レイは三角形を交差させます
  } それ以外 {
    falseを返します。//レイは三角形を逃します
  }
}
`` `
この実装は、次のベクトル操作を定義したことを前提としていることに注意してください。