MCPcopy Create free account
hub / github.com/NatLabRockies/OpenStudio / isEnclosedVolume

Method isEnclosedVolume

src/model/Space.cpp:844–858  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

842 }
843
844 bool Space_Impl::isEnclosedVolume() const {
845 if (m_cachedIsEnclosed.has_value()) {
846 return m_cachedIsEnclosed.get();
847 }
848 auto volumePoly = this->polyhedron();
849 auto isVolEnclosed = volumePoly.isEnclosedVolume();
850 if (!isVolEnclosed) {
851 const auto edgesNot2 = volumePoly.edgesNotTwo();
852 LOG(Warn, briefDescription() << " is not enclosed, there are " << edgesNot2.size() << " edges that aren't used exactly twice");
853 for (const auto& edge : edgesNot2) {
854 LOG(Debug, edge);
855 }
856 }
857 return isVolEnclosed;
858 }
859
860 double Space_Impl::ceilingHeight() const {
861 boost::optional<double> value = getDouble(OS_SpaceFields::CeilingHeight, true);

Callers 4

updateUserDataFunction · 0.45
volumeMethod · 0.45
TEST_FFunction · 0.45

Calls 4

polyhedronMethod · 0.95
edgesNotTwoMethod · 0.80
getMethod · 0.45
sizeMethod · 0.45

Tested by 1

TEST_FFunction · 0.36