public SquareGrid(OpenGL gl, int directionLineCount, float stepSize) { _directionLineCount = directionLineCount; _stepSize = stepSize; RecalculateShape(); _gridLines = new LinesBase(gl, _lines); Material = new Material(); Material.Ambient = new ColorF(255, 146, 134, 188); // Purple. Material.Shininess = 1f; }
//public void Render(OpenGL gl, ShaderManagerS1 shader) //{ // ValidateBeforeRender(); // shader.Material = MaterialX; // shader.ApplyChangedProperties(gl); // _lineX.Render(gl, shader); // shader.Material = MaterialY; // shader.ApplyChangedProperties(gl); // _lineY.Render(gl, shader); // shader.Material = MaterialZ; // shader.ApplyChangedProperties(gl); // _lineZ.Render(gl, shader); //} /// <summary> /// Calculates the lines using the current axis properties. /// </summary> public virtual void RecalculateShape(OpenGL gl) { var riseAxisValue = 0f;// .0001f; / var lineX = new List<Tuple<vec3, vec3>>(); var lineY = new List<Tuple<vec3, vec3>>(); var lineZ = new List<Tuple<vec3, vec3>>(); lineX.Add( new Tuple<vec3, vec3>( new vec3(0, riseAxisValue, 0), new vec3(_axisLength, riseAxisValue, 0)) ); lineY.Add( new Tuple<vec3, vec3>( new vec3(0, riseAxisValue, 0), new vec3(0, _axisLength, 0)) ); lineZ.Add( new Tuple<vec3, vec3>( new vec3(0, riseAxisValue, 0), new vec3(0, riseAxisValue, _axisLength)) ); LineX = new LinesBase(gl, lineX, null); LineY = new LinesBase(gl, lineY, null); LineZ = new LinesBase(gl, lineZ, null); }