2929using System . Collections . Generic ;
3030using System . IO ;
3131using System . Linq ;
32+ using System . Threading . Tasks ;
3233namespace BH . Adapter . MidasCivil
3334{
3435 public partial class MidasCivilAdapter
@@ -40,27 +41,38 @@ public partial class MidasCivilAdapter
4041
4142 public IEnumerable < IResult > ReadResults ( MeshResultRequest request , ActionConfig actionConfig )
4243 {
43- List < IResult > results ;
44+ List < IResult > results = new List < IResult > ( ) ;
4445 List < int > objectIds = GetObjectIDs ( request ) ;
45- List < string > loadCases = GetLoadcaseIDs ( request ) ;
46-
47- switch ( request . ResultType )
46+ switch ( m_midasCivilVersion )
4847 {
49- case MeshResultType . Displacements :
50- results = ExtractMeshDisplacement ( objectIds , loadCases ) . ToList ( ) ;
51- break ;
52- case MeshResultType . Forces :
53- results = ExtractMeshForce ( objectIds , loadCases ) . ToList ( ) ;
54- break ;
55- case MeshResultType . Stresses :
56- results = ExtractMeshStress ( objectIds , loadCases , request . Layer ) . ToList ( ) ;
57- break ;
58- case MeshResultType . VonMises :
59- results = ExtractMeshVonMises ( objectIds , loadCases , request . Layer ) . ToList ( ) ;
48+ case "9.5.0.nx" :
49+ case "9.5.5.nx" :
50+ List < string > loadCasesNX = Task . Run ( ( ) => AppendCaseTypes ( request ) ) . Result ;
51+ if ( loadCasesNX != null )
52+ results = Task . Run ( ( ) => ReadResult ( request . ResultType . ToString ( ) , objectIds , loadCasesNX , "" , request ) ) . Result . ToList ( ) ;
6053 break ;
6154 default :
62- Engine . Base . Compute . RecordError ( $ "Result of type { request . ResultType } is not yet supported in the MidasCivil_Toolkit.") ;
63- results = new List < IResult > ( ) ;
55+ List < string > loadCases = GetLoadcaseIDs ( request ) ;
56+
57+ switch ( request . ResultType )
58+ {
59+ case MeshResultType . Displacements :
60+ results = ExtractMeshDisplacement ( objectIds , loadCases ) . ToList ( ) ;
61+ break ;
62+ case MeshResultType . Forces :
63+ results = ExtractMeshForce ( objectIds , loadCases ) . ToList ( ) ;
64+ break ;
65+ case MeshResultType . Stresses :
66+ results = ExtractMeshStress ( objectIds , loadCases , request . Layer ) . ToList ( ) ;
67+ break ;
68+ case MeshResultType . VonMises :
69+ results = ExtractMeshVonMises ( objectIds , loadCases , request . Layer ) . ToList ( ) ;
70+ break ;
71+ default :
72+ Engine . Base . Compute . RecordError ( $ "Result of type { request . ResultType } is not yet supported in the MidasCivil_Toolkit.") ;
73+ results = new List < IResult > ( ) ;
74+ break ;
75+ }
6476 break ;
6577 }
6678 results . Sort ( ) ;
0 commit comments