Files
DP44/DataPRO/Modules/Reports/PedestrianAndHeadReports/Classes/LWRLegFlexReport.cs

97 lines
6.1 KiB
C#
Raw Normal View History

2026-04-17 14:55:32 -04:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DTS.Slice.PedestrianAndHeadReports
{
public class LWRLegFlexReport : ReportBase
{
public LWRLegFlexReport(PedestrianAndHeadTest parent) : base(parent) { }
public override ReportBase.ReportTypes GetReportType()
{
return ReportTypes.LWRLegFlex;
}
public const string FEMUR1_ID = "FLEX_FEMUR1";
public const string FEMUR2_ID = "FLEX_FEMUR2";
public const string FEMUR3_ID = "FLEX_FEMUR3";
public const string LCL_ID = "FLEX_LCL";
public const string MCL_ID = "FLEX_MCL";
public const string ACL_ID = "FLEX_ACL";
public const string PCL_ID = "FLEX_PCL";
public const string TIBIA1_ID = "FLEX_TIBIA1";
public const string TIBIA2_ID = "FLEX_TIBIA2";
public const string TIBIA3_ID = "FLEX_TIBIA3";
public const string TIBIA4_ID = "FLEX_TIBIA4";
private string[] _calTypes = new string[] { "Penduram", "Inverse" };
public string TestType
{
get { return GetValue("FlexType"); }
set { SetValue("FlexType", value); }
}
public string[] GetPossibleTestTypes()
{
return GetPossibleValues("FlexType");
}
protected override void InitializeGraphs()
{
base.InitializeGraphs();
AddGraph(new ReportGraph(KnownGraphs.FLEX_TIBIA.ToString(), "Tibia", new MeasurementUnit[] {
MeasurementUnitList.GetMeasurementUnit("Nm") }, new GraphChannel[]{
new GraphChannel(TIBIA1_ID, "Tibia-1", "TIBIA1"),
new GraphChannel(TIBIA2_ID, "Tibia-2", "TIBIA2"),
new GraphChannel(TIBIA3_ID, "Tibia-3", "TIBIA3"),
new GraphChannel(TIBIA4_ID, "Tibia-4", "TIBIA4")
},Properties.Settings.Default.PROTECTIONREPORT_FLEXTIBITHRESHOLD));
AddGraph(new ReportGraph(KnownGraphs.FLEX_MCL.ToString(), "MCL", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("mm") }, new GraphChannel[] {
new GraphChannel(MCL_ID, "MCL(膝内側側副靱帯)", "MCL")
}, Properties.Settings.Default.SAFETYREPORT_FLEXMCLThreshold));
AddGraph(new ReportGraph(KnownGraphs.FLEX_ACLPCL.ToString(), "ACL PCL", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("mm") }, new GraphChannel[] {
new GraphChannel(ACL_ID, "ACL後十字靱帯", "ACL"),
new GraphChannel(PCL_ID, "PCL前十字靱帯", "PCL")
}, Properties.Settings.Default.PROTECTIONREPORT_FLEXACLPCLThreshold));
AddGraph(new ReportGraph(KnownGraphs.FLEX_FEMUR.ToString(), "Femur", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("Nm") }, new GraphChannel[]{
new GraphChannel(FEMUR1_ID, "Femur-1", "FEMUR1"),
new GraphChannel(FEMUR2_ID, "Femur-2", "FEMUR2"),
new GraphChannel(FEMUR3_ID, "Femur-3", "FEMUR3")
}, Properties.Settings.Default.PROTECTIONREPORT_FLEXFEMURThreshold));
AddGraph(new ReportGraph(KnownGraphs.FLEX_LCL.ToString(), "LCL", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("mm") }, new GraphChannel[] {
new GraphChannel(LCL_ID, "LCL", "LCL")
}, Properties.Settings.Default.PROTECTIONREPORT_FLEXLCLThreshold));
AddGraph(new ReportGraph(KnownGraphs.FLEX_CALTibia1.ToString(), "Tibia1(Cal)", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("Nm") }, new GraphChannel[]{
new GraphChannel(TIBIA1_ID, "Tibia-1", "TIBIA1")}, ""));
AddGraph(new ReportGraph(KnownGraphs.FLEX_CALTibia2.ToString(), "Tibia2(Cal)", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("Nm") }, new GraphChannel[]{
new GraphChannel(TIBIA2_ID, "Tibia-2", "TIBIA2")}, ""));
AddGraph(new ReportGraph(KnownGraphs.FLEX_CALTibia3.ToString(), "Tibia3(Cal)", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("Nm") }, new GraphChannel[]{
new GraphChannel(TIBIA3_ID, "Tibia-3", "TIBIA3")}, ""));
AddGraph(new ReportGraph(KnownGraphs.FLEX_CALTibia4.ToString(), "Tibia4(Cal)", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("Nm") }, new GraphChannel[]{
new GraphChannel(TIBIA4_ID, "Tibia-4", "TIBIA4")}, ""));
AddGraph(new ReportGraph(KnownGraphs.FLEX_CALACL.ToString(), "ACL(Cal)", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("mm") }, new GraphChannel[] {
new GraphChannel(ACL_ID, "ACL", "ACL")}, ""));
AddGraph(new ReportGraph(KnownGraphs.FLEX_CALMCL.ToString(), "MCL(Cal)", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("mm") }, new GraphChannel[] {
new GraphChannel(MCL_ID, "MCL", "MCL")}, ""));
AddGraph(new ReportGraph(KnownGraphs.FLEX_CALPCL.ToString(), "PCL(Cal)", new MeasurementUnit[] { MeasurementUnitList.GetMeasurementUnit("mm") }, new GraphChannel[] {
new GraphChannel(PCL_ID, "PCL", "PCL")}, ""));
}
/*private string _impactorWeight;
public string ImpactorWeight
{
get { return _impactorWeight; }
set { SetProperty(ref _impactorWeight, value, "ImpactorWeight"); }
}*/
protected override void InitializeProperties()
{
base.InitializeProperties();
SetPossibleValues(PedestrianAndHeadTest.Fields.ImpactorType.ToString(), new string[] { "FLEX" });
SetValue(PedestrianAndHeadTest.Fields.FrequencyClass.ToString(), (new SensorDB.FilterClass(DTS.SensorDB.FilterClass.FilterClassType.CFC180)).ToString());
AddProperty(new ReportProperty("FlexType", "FlexType", _calTypes, typeof(string)));
//AddProperty(new ReportProperty(PedestrianAndHeadTest.Fields.ImpactorWeight.ToString(), PedestrianAndHeadTest.Fields.ImpactorWeight.ToString(), null, typeof(string)));
TestType = _calTypes[0];
}
}
}