private void listBoxSeries_SelectedIndexChanged(object sender, EventArgs e) { if (listBoxSeries.SelectedItems.Count == 0) { if (_mode == Modes.AUTOMATIC) { textBoxKinematicFilename.Text = ""; textBoxImageFile.Text = ""; } return; } if (_mode == Modes.MANUAL) { return; //all automatic below } _seriesKey = (string)listBoxSeries.SelectedItem; _seriesNumber = Int32.Parse(_seriesKey.Substring(0, 2)); _side = (_seriesKey.Substring(2, 1).ToUpper().Equals("L")) ? WristFilesystem.Sides.LEFT : WristFilesystem.Sides.RIGHT; //update kinematics file textBoxKinematicFilename.Text = generateKinematicsFileName(textBoxSubjectDirectory.Text, _seriesKey, _kinematicFileType); //set crop values: if (_cvParser != null && _cvParser.hasPosition(_seriesKey)) { setCropValueFields(_cvParser.getCropData(_seriesKey)); } else { clearCropValueFields(); } //update image file textBoxImageFile.Text = Path.Combine(Path.Combine(textBoxSubjectDirectory.Text, "CTScans"), String.Format("{0}_{1:00}", _subject, _seriesNumber)); if (!File.Exists(textBoxImageFile.Text) && !Directory.Exists(textBoxImageFile.Text)) { textBoxImageFile.Text = textBoxImageFile.Text + (_side == WristFilesystem.Sides.LEFT ? "L" : "R"); } //try and find stackFile Directory string neutralSeriesDir = String.Format("S15{0}", _seriesKey.Substring(2, 1)); _stackSeriesKey = neutralSeriesDir.Substring(1, 3); string stackPath1 = Path.Combine(textBoxSubjectDirectory.Text, neutralSeriesDir); string stackPath2 = Path.Combine(stackPath1, "Stack.files"); if (canLocateRadiusStackFileInDirectory(stackPath2)) //try Stack.files directory first { textBoxStackFileDirectory.Text = stackPath2; } else if (canLocateRadiusStackFileInDirectory(stackPath1)) { textBoxStackFileDirectory.Text = stackPath1; } else //error, can't locate, lets just default to Stack.files path { textBoxStackFileDirectory.Text = stackPath2; } }
private void ReadInJobFromOption() { PreliminaryValidation(_options); _side = WristFilesystem.GetSideFromString(_options.SideString); _wrist = new WristFilesystem(WristFilesystem.findRadius(_options.Subject, _side)); _fullWrist = new FullWrist(_wrist); _refBoneIndex = _options.GetReferenceBoneIndex(); _testBoneIndex = _options.GetTestBoneIndex(); //int fixedBoneIndex = options.GetFixedBoneIndex(); _positionList = GetPositionIndexes(_wrist, _options.GetPositionNames()); _cDistances = _options.GetCoutourDistances(); _cAreas = _options.GetTargetContourAreas(); }
private bool canLocateStackfileDirectory(WristFilesystem.Sides side) { string s = (side == WristFilesystem.Sides.LEFT) ? "L" : "R"; string neutralSeriesDir = "S15" + s; string stackPath1 = Path.Combine(textBoxSubjectDirectory.Text, neutralSeriesDir); string stackPath2 = Path.Combine(stackPath1, "Stack.files"); if (canLocateRadiusStackFileInDirectory(stackPath2, s)) //try Stack.files directory first { return(true); } else if (canLocateRadiusStackFileInDirectory(stackPath1, s)) { return(true); } else { return(false); } }
public CropValues getCropData(int series, WristFilesystem.Sides side) { return(getCropData(generatePositionKey(series, side))); }
public bool hasPosition(int series, WristFilesystem.Sides side) { return(hasPosition(generatePositionKey(series, side))); }
private string generatePositionKey(int series, WristFilesystem.Sides side) { return(String.Format("{0:00}{1}", series, side == WristFilesystem.Sides.LEFT ? "L" : "R")); }