| 99 |
* <div>この関数は、次のコードと等価です。</div> |
* <div>この関数は、次のコードと等価です。</div> |
| 100 |
* <hr/> |
* <hr/> |
| 101 |
* :<br/> |
* :<br/> |
| 102 |
* PMatrix3D om=new PMatrix3D(((PGraphics3D)g).projection);<br/> |
* PMatrix3D om=new PMatrix3D(((PGrapPGraphicsOpenGLhics3D)g).projection);<br/> |
| 103 |
* setBackgroundOrtho(img.width,img.height)<br/> |
* setBackgroundOrtho(img.width,img.height)<br/> |
| 104 |
* pushMatrix();<br/> |
* pushMatrix();<br/> |
| 105 |
* resetMatrix();<br/> |
* resetMatrix();<br/> |
| 117 |
public void drawBackground(PImage i_img) |
public void drawBackground(PImage i_img) |
| 118 |
{ |
{ |
| 119 |
PApplet pa=this._ref_papplet; |
PApplet pa=this._ref_papplet; |
| 120 |
PMatrix3D om=new PMatrix3D(((PGraphics3D)pa.g).projection); |
PGraphicsOpenGL pgl=((PGraphicsOpenGL)pa.g); |
| 121 |
|
//行列の待避 |
| 122 |
|
pgl.pushProjection(); |
| 123 |
this.setBackgroundOrtho(i_img.width,i_img.height); |
this.setBackgroundOrtho(i_img.width,i_img.height); |
| 124 |
pa.pushMatrix(); |
pa.pushMatrix(); |
| 125 |
pa.setMatrix(this._ps_background_mv); |
pa.setMatrix(this._ps_background_mv); |
| 126 |
pa.image(i_img,-i_img.width/2,-i_img.height/2); |
pa.image(i_img,-i_img.width/2,-i_img.height/2); |
| 127 |
pa.popMatrix(); |
pa.popMatrix(); |
| 128 |
//行列の復帰 |
//行列の復帰 |
| 129 |
this.setPerspective(om); |
pgl.popProjection(); |
| 130 |
} |
} |
| 131 |
|
|
| 132 |
/** |
/** |
| 170 |
/** |
/** |
| 171 |
* この関数は、ARToolKit準拠のProjectionMatrixをProcessingにセットします。 |
* この関数は、ARToolKit準拠のProjectionMatrixをProcessingにセットします。 |
| 172 |
* 関数を実行すると、ProcessingのProjectionMatrixがARToolKitのカメラパラメータのものに変わり、映像にマッチした描画ができるようになります。 |
* 関数を実行すると、ProcessingのProjectionMatrixがARToolKitのカメラパラメータのものに変わり、映像にマッチした描画ができるようになります。 |
| 173 |
* ProcessingのデフォルトFrustumに戻すときは、{@link PGraphics3D#perspective()}を使います。 |
* ProcessingのデフォルトFrustumに戻すときは、{@link PGraphicsOpenGL#perspective()}を使います。 |
| 174 |
* Frustumの有効期間は、次に{@link PGraphics3D#perspective()}か{@link PGraphics3D#perspective()}をコールするまでです。 |
* Frustumの有効期間は、次に{@link PGraphicsOpenGL#perspective()}か{@link PGraphicsOpenGL#perspective()}をコールするまでです。 |
| 175 |
* <p> |
* <p> |
| 176 |
* Version 1.1.0より、古いprojection matrixを返さなくなりました。古いprojection matrixが必要な時は、{@link PGraphics3D#projection}を複製して保存して下さい。 |
* Version 1.1.0より、古いprojection matrixを返さなくなりました。古いprojection matrixが必要な時は、{@link PGraphicsOpenGL#projection}を複製して保存して下さい。 |
| 177 |
* </p> |
* </p> |
| 178 |
*/ |
*/ |
| 179 |
public void setARPerspective() |
public void setARPerspective() |
| 189 |
* 今は無理なので、frustum経由 |
* 今は無理なので、frustum経由 |
| 190 |
* </p> |
* </p> |
| 191 |
* <p> |
* <p> |
| 192 |
* Version 1.1.0より、古いprojection matrixを返さなくなりました。古いprojection matrixが必要な時は、{@link PGraphics3D#projection}を複製して保存して下さい。 |
* Version 1.1.0より、古いprojection matrixを返さなくなりました。古いprojection matrixが必要な時は、{@link PGraphicsOpenGL#projection}を複製して保存して下さい。 |
| 193 |
* </p> |
* </p> |
| 194 |
*/ |
*/ |
| 195 |
public void setPerspective(PMatrix3D i_projection) |
public void setPerspective(PMatrix3D i_projection) |