@@ -1121,20 +1121,26 @@ PYBIND11_MODULE(wincalcbindings, m) {
1121
1121
.value (" HALF" , SingleLayerOptics::BSDFBasis::Half)
1122
1122
.value (" FULL" , SingleLayerOptics::BSDFBasis::Full);
1123
1123
1124
+ py::class_<SingleLayerOptics::BSDFDefinition>(m, " BSDFDefinition" )
1125
+ .def (py::init<double , size_t >(),
1126
+ py::arg (" theta" ), py::arg (" number_of_phis" ))
1127
+ .def (" theta" , &SingleLayerOptics::BSDFDefinition::theta)
1128
+ .def (" num_of_phis" , &SingleLayerOptics::BSDFDefinition::numOfPhis);
1129
+
1124
1130
py::class_<SingleLayerOptics::BSDFHemisphere>(m, " BSDFHemisphere" )
1125
1131
.def_static (" create" ,
1126
1132
py::overload_cast<SingleLayerOptics::BSDFBasis>(
1127
1133
&SingleLayerOptics::BSDFHemisphere::create),
1128
1134
py::arg (" bsdf_basis" ))
1135
+ .def_static (" create" ,
1136
+ py::overload_cast<std::vector<SingleLayerOptics::BSDFDefinition> const &>(
1137
+ &SingleLayerOptics::BSDFHemisphere::create),
1138
+ py::arg (" bsdf_definitions" ))
1129
1139
.def (" get_directions" , &SingleLayerOptics::BSDFHemisphere::getDirections);
1130
1140
1131
1141
py::enum_<Tarcog::ISO15099::System>(m, " TarcogSystemType" , py::arithmetic ())
1132
1142
.value (" U" , Tarcog::ISO15099::System::Uvalue)
1133
1143
.value (" SHGC" , Tarcog::ISO15099::System::SHGC);
1134
-
1135
- py::enum_<Tarcog::ISO15099::Environment>(m, " TarcogEnvironmentType" , py::arithmetic ())
1136
- .value (" Indoor" , Tarcog::ISO15099::Environment::Indoor)
1137
- .value (" Outdoor" , Tarcog::ISO15099::Environment::Outdoor);
1138
1144
1139
1145
py::enum_<wincalc::Spectal_Data_Wavelength_Range_Method>(
1140
1146
m, " SpectalDataWavelengthRangeMethodType" , py::arithmetic ())
@@ -1250,15 +1256,6 @@ PYBIND11_MODULE(wincalcbindings, m) {
1250
1256
py::arg (" system_type" ), py::arg (" theta" ) = 0 , py::arg (" phi" ) = 0 )
1251
1257
.def (" relative_heat_gain" , &wincalc::Glazing_System::relative_heat_gain,
1252
1258
py::arg (" theta" ) = 0 , py::arg (" phi" ) = 0 )
1253
- .def (" heat_flow" ,
1254
- &wincalc::Glazing_System::heat_flow,
1255
- py::arg (" system_type" ), py::arg (" environment_type" ), py::arg (" theta" ) = 0 , py::arg (" phi" ) = 0 )
1256
- .def (" h" ,
1257
- &wincalc::Glazing_System::h,
1258
- py::arg (" system_type" ), py::arg (" environment_type" ), py::arg (" theta" ) = 0 , py::arg (" phi" ) = 0 )
1259
- .def (" radiosities" ,
1260
- &wincalc::Glazing_System::radiosities,
1261
- py::arg (" system_type" ), py::arg (" theta" ) = 0 , py::arg (" phi" ) = 0 )
1262
1259
.def (" environments" ,
1263
1260
py::overload_cast<wincalc::Environments const &>(
1264
1261
&wincalc::Glazing_System::environments),
@@ -1733,8 +1730,9 @@ PYBIND11_MODULE(wincalcbindings, m) {
1733
1730
1734
1731
py::class_<SingleLayerOptics::BSDFDirections>(m, " BSDFDirections" )
1735
1732
.def (py::init<>())
1736
- .def (py::init<std::vector<SingleLayerOptics::BSDFDefinition> const &>(),
1737
- py::arg (" definitions" ))
1733
+ .def (py::init<std::vector<SingleLayerOptics::BSDFDefinition> const &,
1734
+ SingleLayerOptics::BSDFDirection>(),
1735
+ py::arg (" definitions" ), py::arg (" side" ))
1738
1736
.def (" lambda_vector" , &SingleLayerOptics::BSDFDirections::lambdaVector)
1739
1737
.def (" profile_angles" , &SingleLayerOptics::BSDFDirections::profileAngles)
1740
1738
.def (" lambda_matrix" , &SingleLayerOptics::BSDFDirections::lambdaMatrix)
0 commit comments