njProject2
任意の投影面に透視投影を行います。

### 書　式

      #include <Ninja.h>

      void njProject2(*m, *pl, *v, *p)
      NJS_MATRIX *m
      NJS_PLANE *pl
      NJS_POINT3 *v
      NJS_POINT3 *p

### 引　数

NJS_MATRIX *m
  被演算マトリクス
NJS_PLANE *pl
  投影面
NJS_POINT3 *v
  投影を行う視点
NJS_POINT3 *p
  投影するオブジェクトの中心点

### 返　値

  なし

### 機　能

  任意の平面 pl に視点 p から透視投影を行います。
  引数 m が NULL の場合はカレントマトリクスを対象とします。

### 用　例

  原点を通り、ベクトル(0, 1, 1)を持つ平面に点v(0, 100, 100)から透視投影を行います。(オブジェクトの中心点 p(0, 10, 10))

      NJS_MATRIX stack[10];
      NJS_VIEW view;
      NJS_PLANE pl;
      NJS_POINT3 v, p;

      pl.px = 0.f;
      pl.py = 0.f;
      pl.pz = 0.f;
      pl.vx = 0.f;
      pl.vy = 1.f;
      pl.vz = 1.f;
      v.x = 0.f;
      v.y = 100.f;
      v.z = 100.f;
      p.x = 0.f;
      p.y = 10.f;
      p.z = 10.f;

      njInitMatrix(stack, 10);
      njInitView(&view);
      njSetView(&view);
      njClearMatrix();
      njPushMatrix(NULL);
      njProject2(NULL, &pl, &v, &p);
      njPopMatrix(1);

### 備　考

### 関　連

njProject2 |