public void Value2() { string line = "G1.0"; var test = new LineCommand(); Assert.AreEqual(test.Parse(line), true); Assert.AreEqual(test.Comment, null); Assert.AreEqual(test.Original, line); Assert.AreEqual(test.Count, 1); { Double value; int pos; Assert.AreEqual(test.TryGetValue('G', out value, out pos), true); Assert.AreEqual(value, 1.0); Assert.AreEqual(pos, 0); Assert.AreEqual(test.GetFP('G'), 1); Assert.AreEqual(test.Has('G'), true); } { Double value; int pos; Assert.AreEqual(test.TryGetValue('A', out value, out pos), false); Assert.AreEqual(test.GetFP('A'), 0); Assert.AreEqual(test.Has('A'), false); } }
public bool ActionLine(LineCommand line) { bool hasXY = line.Has('X') || line.Has('Y'); bool hasZ = line.Has('Z'); Double prevE = current_.E; if (current_.ActionLine(line)) { Double value; int position; if (line.TryGetValue('G', out value, out position)) { switch (value) { case 92: if (line.Has('E')) { totalE_ += prevE; } break; case 1: if (hasXY) { totalLength_ += prev_.LengthXYTo(current_); totalTime_ += prev_.LengthXYTo(current_) / current_.F; } if (hasZ) { totalLength_ += prev_.LengthZTo(current_); totalTime_ += prev_.LengthZTo(current_) / current_.F; } break; } } prev_.Update(current_); return(true); } return(false); }