提交 2e8db19f 编写于 作者: M Mr.doob

Small tweaks to CanvasRenderer, SVGRenderer and SoftwareRenderer.

上级 c16b26c6
......@@ -14108,11 +14108,7 @@ THREE.CanvasRenderer = function ( parameters ) {
}
if ( this.autoClear === true ) {
this.clear();
}
if ( this.autoClear === true ) this.clear();
_context.setTransform( 1, 0, 0, - 1, _canvasWidthHalf, _canvasHeightHalf );
......@@ -14154,7 +14150,10 @@ THREE.CanvasRenderer = function ( parameters ) {
_v1.positionScreen.x *= _canvasWidthHalf; _v1.positionScreen.y *= _canvasHeightHalf;
_v2.positionScreen.x *= _canvasWidthHalf; _v2.positionScreen.y *= _canvasHeightHalf;
_elemBox.setFromPoints( [ _v1.positionScreen, _v2.positionScreen ] );
_elemBox.setFromPoints( [
_v1.positionScreen,
_v2.positionScreen
] );
if ( _clipBox.isIntersectionBox( _elemBox ) === true ) {
......@@ -14182,9 +14181,17 @@ THREE.CanvasRenderer = function ( parameters ) {
}
_elemBox.setFromPoints( [ _v1.positionScreen, _v2.positionScreen, _v3.positionScreen ] );
_elemBox.setFromPoints( [
_v1.positionScreen,
_v2.positionScreen,
_v3.positionScreen
] );
renderFace3( _v1, _v2, _v3, 0, 1, 2, element, material );
if ( _clipBox.isIntersectionBox( _elemBox ) === true ) {
renderFace3( _v1, _v2, _v3, 0, 1, 2, element, material );
}
} else if ( element instanceof THREE.RenderableFace4 ) {
......@@ -14214,9 +14221,18 @@ THREE.CanvasRenderer = function ( parameters ) {
}
_elemBox.setFromPoints( [ _v1.positionScreen, _v2.positionScreen, _v3.positionScreen, _v4.positionScreen ] );
_elemBox.setFromPoints( [
_v1.positionScreen,
_v2.positionScreen,
_v3.positionScreen,
_v4.positionScreen
] );
if ( _clipBox.isIntersectionBox( _elemBox ) === true ) {
renderFace4( _v1, _v2, _v3, _v4, _v5, _v6, element, material, scene );
renderFace4( _v1, _v2, _v3, _v4, _v5, _v6, element, material );
}
}
......@@ -14340,6 +14356,7 @@ THREE.CanvasRenderer = function ( parameters ) {
if ( _clipBox.isIntersectionBox( _elemBox ) === false ) {
_elemBox.makeEmpty();
return;
}
......@@ -14372,6 +14389,7 @@ THREE.CanvasRenderer = function ( parameters ) {
if ( _clipBox.isIntersectionBox( _elemBox ) === false ) {
_elemBox.makeEmpty();
return;
}
......@@ -14407,6 +14425,7 @@ THREE.CanvasRenderer = function ( parameters ) {
if ( _clipBox.isIntersectionBox( _elemBox ) === false ) {
_elemBox.makeEmpty();
return;
}
......
此差异已折叠。
......@@ -160,9 +160,17 @@ THREE.SVGRenderer = function () {
_v2.positionScreen.x *= _svgWidthHalf; _v2.positionScreen.y *= - _svgHeightHalf;
_v3.positionScreen.x *= _svgWidthHalf; _v3.positionScreen.y *= - _svgHeightHalf;
_elemBox.setFromPoints( [ _v1.positionScreen, _v2.positionScreen, _v3.positionScreen ] );
_elemBox.setFromPoints( [
_v1.positionScreen,
_v2.positionScreen,
_v3.positionScreen
] );
renderFace3( _v1, _v2, _v3, element, material );
if ( _clipBox.isIntersectionBox( _elemBox ) === true ) {
renderFace3( _v1, _v2, _v3, element, material );
}
} else if ( element instanceof THREE.RenderableFace4 ) {
......@@ -178,9 +186,18 @@ THREE.SVGRenderer = function () {
_v3.positionScreen.x *= _svgWidthHalf; _v3.positionScreen.y *= -_svgHeightHalf;
_v4.positionScreen.x *= _svgWidthHalf; _v4.positionScreen.y *= -_svgHeightHalf;
_elemBox.setFromPoints( [ _v1.positionScreen, _v2.positionScreen, _v3.positionScreen, _v4.positionScreen ] );
_elemBox.setFromPoints( [
_v1.positionScreen,
_v2.positionScreen,
_v3.positionScreen,
_v4.positionScreen
] );
renderFace4( _v1, _v2, _v3, _v4, element, material );
if ( _clipBox.isIntersectionBox( _elemBox ) === true ) {
renderFace4( _v1, _v2, _v3, _v4, element, material );
}
}
......
......@@ -114,7 +114,7 @@ THREE.SoftwareRenderer = function () {
rectx2 = 0;
recty2 = 0;
if ( this.autoClear ) this.clear();
if ( this.autoClear === true ) this.clear();
var renderData = projector.projectScene( scene, camera );
var elements = renderData.elements;
......
......@@ -250,11 +250,7 @@ THREE.CanvasRenderer = function ( parameters ) {
}
if ( this.autoClear === true ) {
this.clear();
}
if ( this.autoClear === true ) this.clear();
_context.setTransform( 1, 0, 0, - 1, _canvasWidthHalf, _canvasHeightHalf );
......@@ -296,7 +292,10 @@ THREE.CanvasRenderer = function ( parameters ) {
_v1.positionScreen.x *= _canvasWidthHalf; _v1.positionScreen.y *= _canvasHeightHalf;
_v2.positionScreen.x *= _canvasWidthHalf; _v2.positionScreen.y *= _canvasHeightHalf;
_elemBox.setFromPoints( [ _v1.positionScreen, _v2.positionScreen ] );
_elemBox.setFromPoints( [
_v1.positionScreen,
_v2.positionScreen
] );
if ( _clipBox.isIntersectionBox( _elemBox ) === true ) {
......@@ -324,9 +323,17 @@ THREE.CanvasRenderer = function ( parameters ) {
}
_elemBox.setFromPoints( [ _v1.positionScreen, _v2.positionScreen, _v3.positionScreen ] );
_elemBox.setFromPoints( [
_v1.positionScreen,
_v2.positionScreen,
_v3.positionScreen
] );
renderFace3( _v1, _v2, _v3, 0, 1, 2, element, material );
if ( _clipBox.isIntersectionBox( _elemBox ) === true ) {
renderFace3( _v1, _v2, _v3, 0, 1, 2, element, material );
}
} else if ( element instanceof THREE.RenderableFace4 ) {
......@@ -356,9 +363,18 @@ THREE.CanvasRenderer = function ( parameters ) {
}
_elemBox.setFromPoints( [ _v1.positionScreen, _v2.positionScreen, _v3.positionScreen, _v4.positionScreen ] );
_elemBox.setFromPoints( [
_v1.positionScreen,
_v2.positionScreen,
_v3.positionScreen,
_v4.positionScreen
] );
if ( _clipBox.isIntersectionBox( _elemBox ) === true ) {
renderFace4( _v1, _v2, _v3, _v4, _v5, _v6, element, material, scene );
renderFace4( _v1, _v2, _v3, _v4, _v5, _v6, element, material );
}
}
......@@ -482,6 +498,7 @@ THREE.CanvasRenderer = function ( parameters ) {
if ( _clipBox.isIntersectionBox( _elemBox ) === false ) {
_elemBox.makeEmpty();
return;
}
......@@ -514,6 +531,7 @@ THREE.CanvasRenderer = function ( parameters ) {
if ( _clipBox.isIntersectionBox( _elemBox ) === false ) {
_elemBox.makeEmpty();
return;
}
......@@ -549,6 +567,7 @@ THREE.CanvasRenderer = function ( parameters ) {
if ( _clipBox.isIntersectionBox( _elemBox ) === false ) {
_elemBox.makeEmpty();
return;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册