BRDFSlices.Vector3.Set C# (CSharp) Метод

Set() публичный Метод

public Set ( double _x, double _y, double _z ) : void
_x double
_y double
_z double
Результат void
        public void Set( double _x, double _y, double _z )
        {
            x = _x; y = _y; z = _z;
        }

Usage Example

Пример #1
0
        protected void WarpSlice( int _ThetaHIndex, int _ThetaDIndex, double _Warp, ref Vector3 _Result )
        {
            double	ThetaH = Math.PI * _ThetaHIndex / 180.0;
            double	ThetaD = Math.PI * _ThetaDIndex / 180.0;
            double	PhiD = Math.PI * _Warp / 180.0;
            if ( PhiD > 0.5 * Math.PI )
                PhiD = Math.PI - PhiD;

            double	Scale = ComputeScaleFactor( ThetaH, ThetaD, PhiD );

            double	ScaledThetaH = ThetaH / Scale;
            double	ScaledThetaD = ThetaD / Scale;

            // 			int		ScaledThetaHIndex = (int) Math.Min( 89, 89 * Math.Sqrt( 2.0 * ScaledThetaH / Math.PI ) );
            // 			int		ScaledThetaDIndex = (int) Math.Min( 89, 180 * ScaledThetaD / Math.PI );
            int		ScaledThetaHIndex = (int) (89 * Math.Sqrt( 2.0 * ScaledThetaH / Math.PI ));
            int		ScaledThetaDIndex = (int) (180 * ScaledThetaD / Math.PI);
            if ( ScaledThetaHIndex > 89 || ScaledThetaDIndex > 89 )
            {	// Out of range!
                _Result.Set( 0, 0, 0 );
                return;
            }

            _Result = m_BRDF[ScaledThetaHIndex,ScaledThetaDIndex,90];

            // int	U = _ThetaHIndex * INTERSECTIONS_TABLE_SIZE / 90;
            // int	V = _ThetaDIndex * INTERSECTIONS_TABLE_SIZE / 90;
            // double	C = m_Intersections[U,V];
            // _Result.Set( C, C, C );
        }
All Usage Examples Of BRDFSlices.Vector3::Set