honeybee-openstudio 2.28.1 → 2.28.2
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1c3f02cf48f4c9d6c3b519513a9602452d044c24287ba8b3ad9d9317e2cb869b
|
4
|
+
data.tar.gz: 5a08ac81d335c8ca9862dbf84a2e918480b594cf4e2e2cc495ef78d26b3e6256
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8b94674ad176a8846d1a2b10bfc11f3da312ff7e9adb186eac9c93a4bbc66d87d76bc1b41e730d49d9f93cd1d409e6f38b1256e9a5fb5dd4bdb08e077bb4b482
|
7
|
+
data.tar.gz: 30daf7224ae75f43219a0e9566146a045d5d86f074079ee29157455373804967b639a820f328777e71b69982a0392bbc4f97c0a24fdef55d2bff0c8a04ef5a46
|
data/honeybee-openstudio.gemspec
CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = 'honeybee-openstudio'
|
7
|
-
spec.version = '2.28.
|
7
|
+
spec.version = '2.28.2'
|
8
8
|
spec.authors = ['Tanushree Charan', 'Dan Macumber', 'Chris Mackey', 'Mostapha Sadeghipour Roudsari']
|
9
9
|
spec.email = ['tanushree.charan@nrel.gov', 'chris@ladybug.tools']
|
10
10
|
|
@@ -48,14 +48,13 @@ module Honeybee
|
|
48
48
|
@hash[:geometry][:boundary].each do |vertex|
|
49
49
|
os_vertices << OpenStudio::Point3d.new(vertex[0], vertex[1], vertex[2])
|
50
50
|
end
|
51
|
-
reordered_vertices = OpenStudio.reorderULC(os_vertices)
|
52
51
|
|
53
52
|
# triangulate subsurface if neccesary
|
54
53
|
triangulated = false
|
55
54
|
final_vertices_list = []
|
56
55
|
matching_os_subsurfaces = []
|
57
56
|
matching_os_subsurface_indices = []
|
58
|
-
if
|
57
|
+
if os_vertices.size > 4
|
59
58
|
|
60
59
|
# if this apeture has a matched apeture, see if the other one has already been created
|
61
60
|
# the matched apeture should have been converted to multiple subsurfaces
|
@@ -75,9 +74,9 @@ module Honeybee
|
|
75
74
|
if final_vertices_list.empty?
|
76
75
|
|
77
76
|
# transform to face coordinates
|
78
|
-
t = OpenStudio::Transformation::alignFace(
|
77
|
+
t = OpenStudio::Transformation::alignFace(os_vertices)
|
79
78
|
tInv = t.inverse
|
80
|
-
face_vertices = OpenStudio::reverse(tInv*
|
79
|
+
face_vertices = OpenStudio::reverse(tInv*os_vertices)
|
81
80
|
|
82
81
|
# no holes in the subsurface
|
83
82
|
holes = OpenStudio::Point3dVectorVector.new
|
@@ -85,7 +84,7 @@ module Honeybee
|
|
85
84
|
# triangulate surface
|
86
85
|
triangles = OpenStudio::computeTriangulation(face_vertices, holes)
|
87
86
|
if triangles.empty?
|
88
|
-
raise "Failed to triangulate aperture #{@hash[:identifier]} with #{
|
87
|
+
raise "Failed to triangulate aperture #{@hash[:identifier]} with #{os_vertices.size} vertices"
|
89
88
|
end
|
90
89
|
|
91
90
|
# create new list of surfaces
|
@@ -98,13 +97,13 @@ module Honeybee
|
|
98
97
|
end
|
99
98
|
|
100
99
|
else
|
101
|
-
#
|
102
|
-
final_vertices_list <<
|
100
|
+
# os_vertices are good as is
|
101
|
+
final_vertices_list << os_vertices
|
103
102
|
end
|
104
103
|
|
105
104
|
result = []
|
106
|
-
final_vertices_list.each_with_index do |
|
107
|
-
os_subsurface = OpenStudio::Model::SubSurface.new(
|
105
|
+
final_vertices_list.each_with_index do |os_vertices, index|
|
106
|
+
os_subsurface = OpenStudio::Model::SubSurface.new(os_vertices, openstudio_model)
|
108
107
|
|
109
108
|
if !matching_os_subsurfaces.empty?
|
110
109
|
os_subsurface.setName(@hash[:identifier] + "..#{matching_os_subsurface_indices[index]}")
|
@@ -174,9 +173,8 @@ module Honeybee
|
|
174
173
|
hb_verts.each do |vertex|
|
175
174
|
os_vertices << OpenStudio::Point3d.new(vertex[0], vertex[1], vertex[2])
|
176
175
|
end
|
177
|
-
reordered_vertices = OpenStudio.reorderULC(os_vertices)
|
178
176
|
|
179
|
-
os_shading_surface = OpenStudio::Model::ShadingSurface.new(
|
177
|
+
os_shading_surface = OpenStudio::Model::ShadingSurface.new(os_vertices, openstudio_model)
|
180
178
|
os_shading_surface.setName(@hash[:identifier])
|
181
179
|
unless @hash[:display_name].nil?
|
182
180
|
os_shading_surface.setDisplayName(@hash[:display_name])
|
@@ -48,14 +48,13 @@ module Honeybee
|
|
48
48
|
@hash[:geometry][:boundary].each do |vertex|
|
49
49
|
os_vertices << OpenStudio::Point3d.new(vertex[0], vertex[1], vertex[2])
|
50
50
|
end
|
51
|
-
reordered_vertices = OpenStudio.reorderULC(os_vertices)
|
52
51
|
|
53
52
|
# triangulate subsurface if neccesary
|
54
53
|
triangulated = false
|
55
54
|
final_vertices_list = []
|
56
55
|
matching_os_subsurfaces = []
|
57
56
|
matching_os_subsurface_indices = []
|
58
|
-
if
|
57
|
+
if os_vertices.size > 4
|
59
58
|
|
60
59
|
# if this door has a matched door, see if the other one has already been created
|
61
60
|
# the matched door should have been converted to multiple subsurfaces
|
@@ -75,9 +74,9 @@ module Honeybee
|
|
75
74
|
if final_vertices_list.empty?
|
76
75
|
|
77
76
|
# transform to face coordinates
|
78
|
-
t = OpenStudio::Transformation::alignFace(
|
77
|
+
t = OpenStudio::Transformation::alignFace(os_vertices)
|
79
78
|
tInv = t.inverse
|
80
|
-
face_vertices = OpenStudio::reverse(tInv*
|
79
|
+
face_vertices = OpenStudio::reverse(tInv*os_vertices)
|
81
80
|
|
82
81
|
# no holes in the subsurface
|
83
82
|
holes = OpenStudio::Point3dVectorVector.new
|
@@ -85,7 +84,7 @@ module Honeybee
|
|
85
84
|
# triangulate surface
|
86
85
|
triangles = OpenStudio::computeTriangulation(face_vertices, holes)
|
87
86
|
if triangles.empty?
|
88
|
-
raise "Failed to triangulate door #{@hash[:identifier]} with #{
|
87
|
+
raise "Failed to triangulate door #{@hash[:identifier]} with #{os_vertices.size} vertices"
|
89
88
|
end
|
90
89
|
|
91
90
|
# create new list of surfaces
|
@@ -98,13 +97,13 @@ module Honeybee
|
|
98
97
|
end
|
99
98
|
|
100
99
|
else
|
101
|
-
#
|
102
|
-
final_vertices_list <<
|
100
|
+
# os_vertices are good as is
|
101
|
+
final_vertices_list << os_vertices
|
103
102
|
end
|
104
103
|
|
105
104
|
result = []
|
106
|
-
final_vertices_list.each_with_index do |
|
107
|
-
os_subsurface = OpenStudio::Model::SubSurface.new(
|
105
|
+
final_vertices_list.each_with_index do |os_vertices, index|
|
106
|
+
os_subsurface = OpenStudio::Model::SubSurface.new(os_vertices, openstudio_model)
|
108
107
|
|
109
108
|
if !matching_os_subsurfaces.empty?
|
110
109
|
os_subsurface.setName(@hash[:identifier] + "..#{matching_os_subsurface_indices[index]}")
|
@@ -168,9 +167,8 @@ module Honeybee
|
|
168
167
|
hb_verts.each do |vertex|
|
169
168
|
os_vertices << OpenStudio::Point3d.new(vertex[0], vertex[1], vertex[2])
|
170
169
|
end
|
171
|
-
reordered_vertices = OpenStudio.reorderULC(os_vertices)
|
172
170
|
|
173
|
-
os_shading_surface = OpenStudio::Model::ShadingSurface.new(
|
171
|
+
os_shading_surface = OpenStudio::Model::ShadingSurface.new(os_vertices, openstudio_model)
|
174
172
|
os_shading_surface.setName(@hash[:identifier])
|
175
173
|
unless @hash[:display_name].nil?
|
176
174
|
os_shading_surface.setDisplayName(@hash[:display_name])
|
@@ -55,10 +55,9 @@ module Honeybee
|
|
55
55
|
hb_verts.each do |vertex|
|
56
56
|
os_vertices << OpenStudio::Point3d.new(vertex[0], vertex[1], vertex[2])
|
57
57
|
end
|
58
|
-
reordered_vertices = OpenStudio.reorderULC(os_vertices)
|
59
58
|
|
60
59
|
# create the openstudio surface and assign the type
|
61
|
-
os_surface = OpenStudio::Model::Surface.new(
|
60
|
+
os_surface = OpenStudio::Model::Surface.new(os_vertices, openstudio_model)
|
62
61
|
os_surface.setName(@hash[:identifier])
|
63
62
|
unless @hash[:display_name].nil?
|
64
63
|
os_surface.setDisplayName(@hash[:display_name])
|
@@ -198,9 +197,8 @@ module Honeybee
|
|
198
197
|
hb_verts.each do |vertex|
|
199
198
|
os_vertices << OpenStudio::Point3d.new(vertex[0], vertex[1], vertex[2])
|
200
199
|
end
|
201
|
-
reordered_vertices = OpenStudio.reorderULC(os_vertices)
|
202
200
|
|
203
|
-
os_shading_surface = OpenStudio::Model::ShadingSurface.new(
|
201
|
+
os_shading_surface = OpenStudio::Model::ShadingSurface.new(os_vertices, openstudio_model)
|
204
202
|
os_shading_surface.setName(@hash[:identifier])
|
205
203
|
unless @hash[:display_name].nil?
|
206
204
|
os_shading_surface.setDisplayName(@hash[:display_name])
|
@@ -55,9 +55,8 @@ module Honeybee
|
|
55
55
|
hb_verts.each do |vertex|
|
56
56
|
os_vertices << OpenStudio::Point3d.new(vertex[0], vertex[1], vertex[2])
|
57
57
|
end
|
58
|
-
reordered_vertices = OpenStudio.reorderULC(os_vertices)
|
59
58
|
|
60
|
-
os_shading_surface = OpenStudio::Model::ShadingSurface.new(
|
59
|
+
os_shading_surface = OpenStudio::Model::ShadingSurface.new(os_vertices, openstudio_model)
|
61
60
|
os_shading_surface.setName(@hash[:identifier])
|
62
61
|
unless @hash[:display_name].nil?
|
63
62
|
os_shading_surface.setDisplayName(@hash[:display_name])
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: honeybee-openstudio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.28.
|
4
|
+
version: 2.28.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tanushree Charan
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: exe
|
13
13
|
cert_chain: []
|
14
|
-
date: 2021-12-
|
14
|
+
date: 2021-12-30 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: bundler
|