faceCellTurn関数
リファレンスの説明と例は英語です。見出しと目次は日本語です。
The turn that brings the cell round to face the viewer (see facingOf for around), by the shortest way, and then rolls it so that a side of the cell lies level (the cell's own first side, to the nearest of the turns that put one of its sides level).
インポート
import { faceCellTurn } from "@johnmorrisdotca/meikyuu/3d";
定義
function faceCellTurn(grid: SolidGrid, q: Quat, cell: number, around?: boolean): Quat
引数
| 名前 | 型 | 説明 |
|---|---|---|
grid | SolidGrid | The valid native flat or surface cell graph. |
q | Quat | The current normalized rotation quaternion. |
cell | number | A zero-based native cell index. |
around (省略可) | boolean | Whether to turn about the cell’s own surface normal. |
戻り値
Quat
The turn that brings the cell round to face the viewer (see facingOf for around), by the shortest way, and then rolls it so that a side of the cell lies level (the cell's own first side, to the nearest of the turns that put one of its sides level).
例
import type { MazeRecipe } from "@johnmorrisdotca/meikyuu";
import { buildMaze } from "@johnmorrisdotca/meikyuu";
import type { Quat, SolidRecipe } from "@johnmorrisdotca/meikyuu/3d";
import { buildSolidMaze, faceCellTurn } from "@johnmorrisdotca/meikyuu/3d";
const recipe: MazeRecipe = {shape:"square",w:5,h:5,algorithm:"backtracker",mode:"to-goal",seed:42};
const maze = buildMaze(recipe);
const grid = maze.grid;
const solidRecipe: SolidRecipe = {kind:"cube",n:2,algorithm:"backtracker",seed:42};
const solid = buildSolidMaze(solidRecipe);
const solidGrid = solid.grid;
const q: Quat = [0,0,0,1];
console.log(faceCellTurn(solidGrid,q,solid.start));[ 0, 0.7071067811865475, 0, 0.7071067811865475 ]出力(このページを作ったときに実行した結果)
この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。