UrmSampleRoi.cs 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. //using Vinno.DataManager.Infrastructure;
  2. //using Vinno.Infrastructure.Collections;
  3. //using Vinno.Models.Adorners.RoiLayers;
  4. //using Vinno.Models.Adorners.Rois;
  5. //using Vinno.Models.Adorners.Rois.MovementController;
  6. //using Vinno.Models.Adorners.Rois.RoiBoundaryGenerators;
  7. //using Vinno.Models.Adorners.Rois.RoiComponent;
  8. //using Vinno.Models.Adorners.Rois.TissueRoi;
  9. //using Vinno.Models.Base.Modes;
  10. //using Vinno.Models.Base.Parameters;
  11. //using Vinno.Models.Base.Visuals;
  12. //using Vinno.Models.SpecificImpl.Probes;
  13. //namespace Vinno.Models.AdditionalFeatures.Functions.URM
  14. //{
  15. // public class UrmSampleLinearRoi : LinearRoi
  16. // {
  17. // public UrmSampleLinearRoi(IVisual visual, IComponentRegistry tokens) : base(visual, tokens)
  18. // {
  19. // }
  20. // }
  21. // public class UrmSampleConvexRoi : ConvexRoi
  22. // {
  23. // public UrmSampleConvexRoi(IVisual visual, IComponentRegistry componentRegistry) : base(visual, componentRegistry, false)
  24. // {
  25. // }
  26. // }
  27. // #region Linear
  28. // public class UrmSampleLinearRoiRegistry : ComponentRegistry
  29. // {
  30. // public UrmSampleLinearRoiRegistry(IVisual visual) : base(visual)
  31. // {
  32. // }
  33. // protected override void RegisterImpl()
  34. // {
  35. // DataAccessor = Factory.RegisterInstance(new UrmSampleLinearRoiDataAccessor());
  36. // MovementController = Factory.RegisterInstance(new LinearRoiMovementController(Visual, false));
  37. // BoundaryGenerator = Factory.RegisterInstance(new LinearRoiBoundaryGenerator());
  38. // }
  39. // }
  40. // public class UrmSampleLinearRoiDataAccessor : LinearTissueRoiDataAccessor
  41. // {
  42. // public override string TypeId => "UrmSampleLinearRoiDataAccessor";
  43. // public override IReadableList<FloatParameter> GetRoiParameters(IAdorner roi)
  44. // {
  45. // return RoiParameterHost.GetUrmRoiParameters((Roi)roi, true);
  46. // }
  47. // public override void Initialize(IAdorner roi)
  48. // {
  49. // InitializeRoiData(roi);
  50. // }
  51. // public override bool Download(IAdorner roi)
  52. // {
  53. // InitializeRoiData(roi);
  54. // return true;
  55. // }
  56. // private void InitializeRoiData(IAdorner roi)
  57. // {
  58. // var linearRoi = (UrmSampleLinearRoi)roi;
  59. // if (linearRoi.Visual.Tissue is IMode mode &&
  60. // linearRoi.Visual.Probe is LinearProbe linearProbe)
  61. // {
  62. // float depthEnd = mode.Parameters.GetItem<FloatParameter>(RecordParams.ScanMaxDepth).Value;
  63. // float depthStart = mode.Parameters.GetItem<FloatParameter>(RecordParams.ScanMinDepth).Value;
  64. // linearRoi.LinearData.RoiCenter = (depthStart + depthEnd) / 2;
  65. // linearRoi.LinearData.RoiSpan = (depthEnd - depthStart) * 0.2;
  66. // linearRoi.LinearData.BeamPosition = 0;
  67. // linearRoi.LinearData.Width = 0.2;
  68. // linearRoi.LinearData.ImageWidth = linearProbe.ProbeWidth;
  69. // }
  70. // }
  71. // }
  72. // #endregion
  73. // #region Convex
  74. // public class UrmSampleConvexRoiRegistry : ComponentRegistry
  75. // {
  76. // public UrmSampleConvexRoiRegistry(IVisual visual) : base(visual)
  77. // {
  78. // }
  79. // protected override void RegisterImpl()
  80. // {
  81. // DataAccessor = Factory.RegisterInstance(new UrmSampleConvexRoiDataAccessor());
  82. // MovementController = Factory.RegisterInstance(new ConvexRoiMovementController(Visual, false));
  83. // BoundaryGenerator = Factory.RegisterInstance(new ConvexRoiBoundaryGenerator(false));
  84. // }
  85. // }
  86. // public class UrmSampleConvexRoiDataAccessor : ConvexTissueRoiDataAccessor
  87. // {
  88. // public override string TypeId => "UrmSampleConvexRoiDataAccessor";
  89. // public override IReadableList<FloatParameter> GetRoiParameters(IAdorner roi)
  90. // {
  91. // return RoiParameterHost.GetUrmRoiParameters((Roi)roi, false);
  92. // }
  93. // public override void Initialize(IAdorner roi)
  94. // {
  95. // InitializeRoiData(roi);
  96. // }
  97. // public override bool Download(IAdorner roi)
  98. // {
  99. // InitializeRoiData(roi);
  100. // return true;
  101. // }
  102. // private void InitializeRoiData(IAdorner roi)
  103. // {
  104. // var convexRoi = (UrmSampleConvexRoi)roi;
  105. // if (convexRoi.Visual.Tissue is IMode mode)
  106. // {
  107. // float depthEnd = mode.Parameters.GetItem<FloatParameter>(RecordParams.ScanMaxDepth).Value;
  108. // float depthStart = mode.Parameters.GetItem<FloatParameter>(RecordParams.ScanMinDepth).Value;
  109. // convexRoi.ConvexData.RoiCenter = (depthStart + depthEnd) / 2;
  110. // convexRoi.ConvexData.RoiSpan = (depthEnd - depthStart) * 0.2;
  111. // convexRoi.ConvexData.BeamPosition = 0;
  112. // convexRoi.ConvexData.Width = 10;
  113. // }
  114. // }
  115. // }
  116. // #endregion
  117. //}