diff6( this, 'x', 'y', 'z', 4, ( this.Parent.Th < 0 ), ( this.Parent.Fi >= 180 ), pp ); diff6( this, 'x', 'z', 'y', 5, ( this.Parent.Fi >= 180 ), ( this.Parent.Th < 0 ), pp ); diff6( this, 'y', 'x', 'z', 2, ( this.Parent.Th < 0 ), ( ( this.Parent.Fi < 90 ) || ( this.Parent.Fi >= 270 ) ), pp ); diff6( this, 'y', 'z', 'x', 3, ( ( this.Parent.Fi < 90 ) || ( this.Parent.Fi >= 270 ),), ( this.Parent.Th < 0 ), pp ); diff6( this, 'z', 'x', 'y', 0, ( this.Parent.Fi >= 180 ), ( ( this.Parent.Fi < 90 ) || ( this.Parent.Fi >= 270 ) ), pp ); diff6( this, 'z', 'y', 'x', 1, ( ( this.Parent.Fi < 90 ) || ( this.Parent.Fi >= 270 ) ), ( this.Parent.Fi >= 180 ), pp ); function diff6( me, plane, primary, secondary, idx, cond1, cond2, pp ) { var gg = _GetGrid( me.Min[primary] / me.Parent.Zoom[primary], me.Max[primary] / me.Parent.Zoom[primary], me.Scale[primary] ); var uu = 0; if( me.GridDelta[primary] != 0 ) gg[1] = me.GridDelta[primary]; var ii = 0; for( var jj = gg[2]; jj >= gg[0]; jj -= gg[1] ) { pp[primary] = jj * me.Parent.Zoom[primary]; pp[secondary] = me.Min[secondary]; var vv = me.Parent.ScreenPos( pp ); fromOV( me.Line[idx][ii], vv.x, vv.y ); var xx = vv.x, yy = vv.y; pp[secondary] = me.Max[secondary]; vv = me.Parent.ScreenPos( pp ); toOV( me.Line[idx][ii], vv.x, vv.y ); _OAV( me.Line[idx][ii], "stroke", me.StrokeColor ); _OAV( me.Line[idx][ii], "visibility", "visible" ); if( cond1 ) { _OAV( me.Text[idx][ii], "x", Math.floor( xx + ( vv.x - xx ) * 1.06 ) - 50 * uu ); _OAV( me.Text[idx][ii], "y", Math.floor( yy + ( vv.y - yy ) * 1.06 ) - 7 * uu ); } else { _OAV( me.Text[idx][ii], "x", Math.floor( vv.x + ( xx - vv.x ) * 1.06 ) - 50 * uu ); _OAV( me.Text[idx][ii], "y", Math.floor( vv.y + ( yy - vv.y ) * 1.06 ) - 7 * uu ); } colorOV( me.Text[idx][ii], me.StrokeColor ); _OAV( me.Text[idx][ii], "visibility", "visible" ); if( ( ii == 1 ) && ( me.Label[primary] ) ) innerTextOV( me.Text[idx][ii], me.Label[primary] ); else { if( isNaN( me.Scale[primary] ) ) { if( me.Scale[primary].substr( 0,9 ) == "function " ) { ff = eval( "window." + me.Scale[primary].substr( 9 ) ); if( ff ) innerTextOV( me.Text[idx][ii], ff( _ScaleString( jj, gg[1] ) ) ); } else innerTextOV( me.Text[idx][ii], _ScaleString( jj, gg[1] ) + me.Scale[primary] ); } else { if( me.Scale[primary] < 1 ) innerTextOV( me.Text[idx][ii], "" ); if( me.Scale[primary] == 1 ) innerTextOV( me.Text[idx][ii], _ScaleString( jj, gg[1] ) ); if( me.Scale[primary] > 1 ) innerTextOV( me.Text[idx][ii], _DateFormat( jj, gg[1], me.Scale[primary] ) ); } } ii++; } if( me.Min[primary] < me.Max[primary] ) { if( cond2 ) { if( me.Min[primary] / me.Parent.Zoom[primary] > gg[0] - gg[1] / 3 ) innerTextOV( me.Text[idx][ii-1], "" ); } else { if( me.Max[primary] / me.Parent.Zoom[primary] < gg[2] + gg[1] / 3 ) innerTextOV( me.Text[idx][0], "" ); } } while( ii < 11 ) { _OAV( me.Line[idx][ii], "visibility", "hidden" ); _OAV( me.Text[idx][ii], "visibility", "hidden" ); ii++; } }