Fix #104510: X3D & BVH import error with Python 3.11
[blender-addons.git] / archimesh / achm_door_maker.py
bloba5473a7e724499a49cbabaa8682a1d903ffd86de
1 # SPDX-License-Identifier: GPL-2.0-or-later
3 # ----------------------------------------------------------
4 # Author: Antonio Vazquez (antonioya)
6 # ----------------------------------------------------------
7 # noinspection PyUnresolvedReferences
8 import bpy
9 import math
10 # noinspection PyUnresolvedReferences
11 from bpy.types import Operator, PropertyGroup, Object, Panel
12 from bpy.props import FloatProperty, BoolProperty, EnumProperty, FloatVectorProperty, CollectionProperty
13 from .achm_tools import *
16 # ------------------------------------------------------------------
17 # Define operator class to create object
18 # ------------------------------------------------------------------
19 class ARCHIMESH_OT_Door(Operator):
20 bl_idname = "mesh.archimesh_door"
21 bl_label = "Door"
22 bl_description = "Door"
23 bl_category = 'View'
24 bl_options = {'REGISTER', 'UNDO'}
26 # -----------------------------------------------------
27 # Draw (create UI interface)
28 # -----------------------------------------------------
29 # noinspection PyUnusedLocal
30 def draw(self, context):
31 layout = self.layout
32 row = layout.row()
33 row.label(text="Use Properties panel (N) to define parms", icon='INFO')
35 # -----------------------------------------------------
36 # Execute
37 # -----------------------------------------------------
38 def execute(self, context):
39 if bpy.context.mode == "OBJECT":
40 create_object(self, context)
41 return {'FINISHED'}
42 else:
43 self.report({'WARNING'}, "Archimesh: Option only valid in Object mode")
44 return {'CANCELLED'}
47 # ------------------------------------------------------------------------------
49 # Create main object. The other objects will be children of this.
51 # ------------------------------------------------------------------------------
52 # noinspection PyUnusedLocal
53 def create_object(self, context):
54 # deselect all objects
55 for o in bpy.data.objects:
56 o.select_set(False)
58 # we create main object and mesh
59 mainmesh = bpy.data.meshes.new("DoorFrane")
60 mainobject = bpy.data.objects.new("DoorFrame", mainmesh)
61 mainobject.location = bpy.context.scene.cursor.location
62 bpy.context.collection.objects.link(mainobject)
63 mainobject.DoorObjectGenerator.add()
65 # we shape the main object and create other objects as children
66 shape_mesh(mainobject, mainmesh)
67 shape_children(mainobject)
69 # we select, and activate, main object
70 mainobject.select_set(True)
71 bpy.context.view_layer.objects.active = mainobject
74 # ------------------------------------------------------------------------------
76 # Update main mesh and children objects
78 # ------------------------------------------------------------------------------
79 # noinspection PyUnusedLocal
80 def update_object(self, context):
81 # When we update, the active object is the main object
82 o = bpy.context.active_object
83 oldmesh = o.data
84 oldname = o.data.name
85 # Now we deselect that object to not delete it.
86 o.select_set(False)
87 # and we create a new mesh
88 tmp_mesh = bpy.data.meshes.new("temp")
89 # deselect all objects
90 for obj in bpy.data.objects:
91 obj.select_set(False)
93 # ---------------------------------
94 # Clear Parent objects (autohole)
95 # ---------------------------------
96 myparent = o.parent
97 if myparent is not None:
98 ploc = myparent.location
99 o.parent = None
100 o.location = ploc
101 # remove_children(parent)
102 for child in myparent.children:
103 # noinspection PyBroadException
104 try:
105 # clear child data
106 child.hide_viewport = False # must be visible to avoid bug
107 child.hide_render = False # must be visible to avoid bug
108 old = child.data
109 child.select_set(True)
110 bpy.ops.object.delete()
111 bpy.data.meshes.remove(old)
112 except:
113 dummy = -1
115 myparent.select_set(True)
116 bpy.ops.object.delete()
118 # -----------------------
119 # remove all children
120 # -----------------------
121 # first granchild
122 for child in o.children:
123 remove_children(child)
124 # now children of main object
125 remove_children(o)
127 # Finally we create all that again (except main object),
128 shape_mesh(o, tmp_mesh, True)
129 o.data = tmp_mesh
130 shape_children(o, True)
131 # Remove data (mesh of active object),
132 bpy.data.meshes.remove(oldmesh)
133 tmp_mesh.name = oldname
134 # and select, and activate, the main object
135 o.select_set(True)
136 bpy.context.view_layer.objects.active = o
139 # ------------------------------------------------------------------------------
140 # Generate all objects
141 # For main, it only shapes mesh and creates modifiers (the modifier, only the first time).
142 # And, for the others, it creates object and mesh.
143 # ------------------------------------------------------------------------------
144 # noinspection PyUnusedLocal
145 def shape_mesh(mainobject, tmp_mesh, update=False):
146 mp = mainobject.DoorObjectGenerator[0]
147 # Create only mesh, because the object is created before
148 create_doorframe(mp, tmp_mesh)
150 remove_doubles(mainobject)
151 set_normals(mainobject)
153 # saves OpenGL data
154 mp.glpoint_a = (-mp.frame_width / 2, 0, 0)
155 mp.glpoint_b = (-mp.frame_width / 2, 0, mp.frame_height)
156 mp.glpoint_c = (mp.frame_width / 2, 0, mp.frame_height)
157 mp.glpoint_d = (-mp.frame_width / 2 + mp.frame_size, 0, mp.frame_height - mp.frame_size - 0.01)
158 mp.glpoint_e = (mp.frame_width / 2 - mp.frame_size, 0, mp.frame_height - mp.frame_size - 0.01)
160 # Lock
161 mainobject.lock_location = (True, True, True)
162 mainobject.lock_rotation = (True, True, True)
164 return
166 # ------------------------------------------------------------------------------
167 # Generate all Children
169 # ------------------------------------------------------------------------------
170 # noinspection PyUnusedLocal
173 def shape_children(mainobject, update=False):
174 mp = mainobject.DoorObjectGenerator[0]
176 if mp.openside != "3":
177 make_one_door(mp, mainobject, mp.frame_width, mp.openside)
178 else:
179 w = mp.frame_width
180 widthl = (w * mp.factor)
181 widthr = w - widthl
183 # left door
184 mydoor = make_one_door(mp, mainobject, widthl + mp.frame_size, "2")
185 mydoor.location.x = -mp.frame_width / 2 + mp.frame_size
186 # right door (pending width)
187 mydoor = make_one_door(mp, mainobject, widthr + mp.frame_size, "1")
188 mydoor.location.x = mp.frame_width / 2 - mp.frame_size
190 if mp.crt_mat and bpy.context.scene.render.engine in {'CYCLES', 'BLENDER_EEVEE'}:
191 mat = create_diffuse_material("Door_material", False, 0.8, 0.8, 0.8)
192 set_material(mainobject, mat)
194 # -------------------------
195 # Create empty and parent
196 # -------------------------
197 bpy.ops.object.empty_add(type='PLAIN_AXES')
198 myempty = bpy.data.objects[bpy.context.active_object.name]
199 myempty.location = mainobject.location
201 myempty.name = "Door_Group"
202 parentobject(myempty, mainobject)
203 mainobject["archimesh.hole_enable"] = True
204 # Rotate Empty
205 myempty.rotation_euler.z = math.radians(mp.r)
206 # Create control box to open wall holes
207 gap = 0.002
208 myctrl = create_control_box("CTRL_Hole",
209 mp.frame_width, mp.frame_thick * 3, mp.frame_height)
210 # Add custom property to detect Controller
211 myctrl["archimesh.ctrl_hole"] = True
213 set_normals(myctrl)
214 myctrl.parent = myempty
215 myctrl.location.x = 0
216 myctrl.location.y = -((mp.frame_thick * 3) / 2)
217 myctrl.location.z = -gap
218 myctrl.display_type = 'BOUNDS'
219 myctrl.hide_viewport = False
220 myctrl.hide_render = True
221 if bpy.context.scene.render.engine in {'CYCLES', 'BLENDER_EEVEE'}:
222 myctrl.visible_camera = False
223 myctrl.visible_diffuse = False
224 myctrl.visible_glossy = False
225 myctrl.visible_transmission = False
226 myctrl.visible_shadow = False
228 # Create control box for baseboard
229 myctrlbase = create_control_box("CTRL_Baseboard",
230 mp.frame_width, 0.40, 0.40,
231 False)
232 # Add custom property to detect Controller
233 myctrlbase["archimesh.ctrl_base"] = True
235 set_normals(myctrlbase)
236 myctrlbase.parent = myempty
237 myctrlbase.location.x = 0
238 myctrlbase.location.y = -0.15 - (mp.frame_thick / 3)
239 myctrlbase.location.z = -0.10
240 myctrlbase.display_type = 'BOUNDS'
241 myctrlbase.hide_viewport = False
242 myctrlbase.hide_render = True
243 if bpy.context.scene.render.engine in {'CYCLES', 'BLENDER_EEVEE'}:
244 myctrlbase.visible_camera = False
245 myctrlbase.visible_diffuse = False
246 myctrlbase.visible_glossy = False
247 myctrlbase.visible_transmission = False
248 myctrlbase.visible_shadow = False
250 mat = create_transparent_material("hidden_material", False)
251 set_material(myctrl, mat)
252 set_material(myctrlbase, mat)
254 # deactivate others
255 for o in bpy.data.objects:
256 if o.select_get() is True and o.name != mainobject.name:
257 o.select_set(False)
260 # ------------------------------------------------------------------
261 # Define property group class to create or modify
262 # ------------------------------------------------------------------
263 class ObjectProperties(PropertyGroup):
264 frame_width: FloatProperty(
265 name='Frame width',
266 min=0.25, max=10,
267 default=1, precision=2,
268 description='Doorframe width', update=update_object,
270 frame_height: FloatProperty(
271 name='Frame height',
272 min=0.25, max=10,
273 default=2.1, precision=2,
274 description='Doorframe height', update=update_object,
276 frame_thick: FloatProperty(
277 name='Frame thickness',
278 min=0.05, max=0.50,
279 default=0.08, precision=2,
280 description='Doorframe thickness', update=update_object,
282 frame_size: FloatProperty(
283 name='Frame size',
284 min=0.05, max=0.25,
285 default=0.08, precision=2,
286 description='Doorframe size', update=update_object,
288 crt_mat: BoolProperty(
289 name="Create default Cycles materials",
290 description="Create default materials for Cycles render",
291 default=True,
292 update=update_object,
294 factor: FloatProperty(
295 name='',
296 min=0.2, max=1,
297 default=0.5, precision=3, description='Door ratio',
298 update=update_object,
300 r: FloatProperty(
301 name='Rotation', min=0, max=360,
302 default=0, precision=1,
303 description='Door rotation', update=update_object,
306 openside: EnumProperty(
307 name="Open side",
308 items=(
309 ('1', "Right open", ""),
310 ('2', "Left open", ""),
311 ('3', "Both sides", ""),
313 description="Defines the direction for opening the door",
314 update=update_object,
317 model: EnumProperty(
318 name="Model",
319 items=(
320 ('1', "Model 01", ""),
321 ('2', "Model 02", ""),
322 ('3', "Model 03", ""),
323 ('4', "Model 04", ""),
324 ('5', "Model 05", "Glass"),
325 ('6', "Model 06", "Glass"),
327 description="Door model",
328 update=update_object,
331 handle: EnumProperty(
332 name="Handle",
333 items=(
334 ('1', "Handle 01", ""),
335 ('2', "Handle 02", ""),
336 ('3', "Handle 03", ""),
337 ('4', "Handle 04", ""),
338 ('0', "None", ""),
340 description="Handle model",
341 update=update_object,
344 # opengl internal data
345 glpoint_a: FloatVectorProperty(
346 name="glpointa",
347 description="Hidden property for opengl",
348 default=(0, 0, 0),
350 glpoint_b: FloatVectorProperty(
351 name="glpointb",
352 description="Hidden property for opengl",
353 default=(0, 0, 0),
355 glpoint_c: FloatVectorProperty(
356 name="glpointc",
357 description="Hidden property for opengl",
358 default=(0, 0, 0),
360 glpoint_d: FloatVectorProperty(
361 name="glpointc",
362 description="Hidden property for opengl",
363 default=(0, 0, 0),
365 glpoint_e: FloatVectorProperty(
366 name="glpointc",
367 description="Hidden property for opengl",
368 default=(0, 0, 0),
371 # Register
372 bpy.utils.register_class(ObjectProperties)
373 Object.DoorObjectGenerator= CollectionProperty(type=ObjectProperties)
376 # ------------------------------------------------------------------
377 # Define panel class to modify object
378 # ------------------------------------------------------------------
379 class ARCHIMESH_PT_DoorObjectgenerator(Panel):
380 bl_idname = "OBJECT_PT_door_generator"
381 bl_label = "Door"
382 bl_space_type = 'VIEW_3D'
383 bl_region_type = 'UI'
384 bl_category = 'Create'
386 # -----------------------------------------------------
387 # Verify if visible
388 # -----------------------------------------------------
389 @classmethod
390 def poll(cls, context):
391 o = context.object
392 if o is None:
393 return False
394 if 'DoorObjectGenerator' not in o:
395 return False
396 else:
397 return True
399 # -----------------------------------------------------
400 # Draw (create UI interface)
401 # -----------------------------------------------------
402 def draw(self, context):
403 o = context.object
404 # noinspection PyBroadException
405 try:
406 if 'DoorObjectGenerator' not in o:
407 return
408 except:
409 return
411 layout = self.layout
412 if bpy.context.mode == 'EDIT_MESH':
413 layout.label(text='Warning: Operator does not work in edit mode.', icon='ERROR')
414 else:
415 myobjdat = o.DoorObjectGenerator[0]
416 space = bpy.context.space_data
417 if not space.local_view:
418 # Imperial units warning
419 if bpy.context.scene.unit_settings.system == "IMPERIAL":
420 row = layout.row()
421 row.label(text="Warning: Imperial units not supported", icon='COLOR_RED')
422 box = layout.box()
423 row = box.row()
424 row.prop(myobjdat, 'frame_width')
425 row.prop(myobjdat, 'frame_height')
426 row = box.row()
427 row.prop(myobjdat, 'frame_thick')
428 row.prop(myobjdat, 'frame_size')
429 row = box.row()
430 row.prop(myobjdat, 'r')
432 box = layout.box()
433 row = box.row()
434 row.prop(myobjdat, 'openside')
435 if myobjdat.openside == "3":
436 row.prop(myobjdat, "factor")
438 layout.prop(myobjdat, 'model')
439 layout.prop(myobjdat, 'handle')
441 box = layout.box()
442 if not context.scene.render.engine in {'CYCLES', 'BLENDER_EEVEE'}:
443 box.enabled = False
444 box.prop(myobjdat, 'crt_mat')
445 else:
446 row = layout.row()
447 row.label(text="Warning: Operator does not work in local view mode", icon='ERROR')
450 # ------------------------------------------------------------------------------
451 # Create Doorframe
452 # ------------------------------------------------------------------------------
453 def create_doorframe(mp, mymesh):
454 tf = mp.frame_thick / 3
455 sf = mp.frame_size
456 wf = (mp.frame_width / 2) - sf
457 hf = mp.frame_height - sf
458 gap = 0.02
459 deep = mp.frame_thick * 0.50
461 verts = [(-wf - sf, -tf, 0),
462 (-wf - sf, tf * 2, 0),
463 (-wf, tf * 2, 0),
464 (-wf - sf, -tf, hf + sf),
465 (-wf - sf, tf * 2, hf + sf),
466 (wf + sf, tf * 2, hf + sf),
467 (wf + sf, -tf, hf + sf),
468 (wf, -tf, hf),
469 (-wf, tf * 2, hf),
470 (wf, -tf, 0),
471 (wf + sf, -tf, 0),
472 (wf + sf, tf * 2, 0),
473 (wf, -tf + deep, hf),
474 (-wf, -tf + deep, hf),
475 (-wf, -tf + deep, 0),
476 (-wf + gap, -tf + deep, hf),
477 (-wf + gap, -tf + deep, 0),
478 (-wf + gap, tf * 2, hf),
479 (-wf + gap, tf * 2, 0),
480 (wf, -tf + deep, 0),
481 (-wf, -tf, hf),
482 (-wf, -tf, 0),
483 (wf, tf * 2, hf),
484 (wf, tf * 2, 0),
485 (wf - gap, tf * 2, 0),
486 (wf - gap, -tf + deep, 0),
487 (wf - gap, tf * 2, hf),
488 (wf - gap, -tf + deep, hf - gap),
489 (wf - gap, -tf + deep, hf),
490 (-wf + gap, tf * 2, hf - gap),
491 (-wf + gap, -tf + deep, hf - gap),
492 (wf - gap, tf * 2, hf - gap)]
494 faces = [(3, 4, 1, 0), (7, 12, 19, 9), (4, 3, 6, 5), (10, 11, 5, 6), (13, 20, 21, 14), (17, 15, 16, 18),
495 (11, 23, 22, 5),
496 (20, 13, 12, 7), (20, 3, 0, 21), (9, 10, 6, 7), (13, 14, 16, 15), (4, 8, 2, 1), (29, 30, 27, 31),
497 (7, 6, 3, 20),
498 (8, 4, 5, 22), (14, 2, 18, 16), (17, 18, 2, 8), (28, 25, 19, 12), (28, 26, 24, 25), (25, 24, 23, 19),
499 (22, 23, 24, 26),
500 (29, 31, 26, 17), (15, 28, 27, 30), (8, 22, 26)]
502 mymesh.from_pydata(verts, [], faces)
503 mymesh.update(calc_edges=True)
505 return
508 # ------------------------------------------------------------------------------
509 # Make one door
511 # ------------------------------------------------------------------------------
512 def make_one_door(self, myframe, width, openside):
513 mydoor = create_door_data(self, myframe, width, openside)
514 handle1 = None
515 handle2 = None
516 if self.handle != "0":
517 handle1 = create_handle(self, mydoor, "Front", width, openside)
518 handle1.select_set(True)
519 bpy.context.view_layer.objects.active = handle1
520 set_smooth(handle1)
521 set_modifier_subsurf(handle1)
522 handle2 = create_handle(self, mydoor, "Back", width, openside)
523 set_smooth(handle2)
524 set_modifier_subsurf(handle2)
525 # Create materials
526 if self.crt_mat and bpy.context.scene.render.engine in {'CYCLES', 'BLENDER_EEVEE'}:
527 # Door material
528 mat = create_diffuse_material("Door_material", False, 0.8, 0.8, 0.8)
529 set_material(mydoor, mat)
530 # Handle material
531 if self.handle != "0":
532 mat = create_glossy_material("Handle_material", False, 0.733, 0.779, 0.8)
533 set_material(handle1, mat)
534 set_material(handle2, mat)
535 if self.model == "5" or self.model == "6":
536 mat = create_glass_material("DoorGlass_material", False)
537 mydoor.data.materials.append(mat)
538 if self.model == "5":
539 select_faces(mydoor, 20, True)
540 select_faces(mydoor, 41, False)
541 if self.model == "6":
542 select_faces(mydoor, 37, True)
543 select_faces(mydoor, 76, False)
544 set_material_faces(mydoor, 1)
546 set_normals(mydoor)
548 return mydoor
551 # ------------------------------------------------------------------------------
552 # Create Door
553 # All custom values are passed using self container (self.myvariable)
554 # ------------------------------------------------------------------------------
555 def create_door_data(self, myframe, width, openside):
556 # Retry mesh data
557 if self.model == "1":
558 mydata = door_model_01(self.frame_size, width, self.frame_height, self.frame_thick, openside)
559 elif self.model == "2":
560 mydata = door_model_02(self.frame_size, width, self.frame_height, self.frame_thick, openside)
561 elif self.model == "3":
562 mydata = door_model_03(self.frame_size, width, self.frame_height, self.frame_thick, openside)
563 elif self.model == "4":
564 mydata = door_model_04(self.frame_size, width, self.frame_height, self.frame_thick, openside)
565 elif self.model == "5":
566 mydata = door_model_04(self.frame_size, width, self.frame_height, self.frame_thick,
567 openside) # uses the same mesh
568 elif self.model == "6":
569 mydata = door_model_02(self.frame_size, width, self.frame_height, self.frame_thick,
570 openside) # uses the same mesh
571 else:
572 mydata = door_model_01(self.frame_size, width, self.frame_height, self.frame_thick, openside) # default model
574 # move data
575 verts = mydata[0]
576 faces = mydata[1]
577 wf = mydata[2]
578 deep = mydata[3]
579 side = mydata[4]
581 mymesh = bpy.data.meshes.new("Door")
582 myobject = bpy.data.objects.new("Door", mymesh)
584 myobject.location = bpy.context.scene.cursor.location
585 bpy.context.collection.objects.link(myobject)
587 mymesh.from_pydata(verts, [], faces)
588 mymesh.update(calc_edges=True)
590 # Translate to doorframe and parent
591 myobject.parent = myframe
592 myobject.lock_rotation = (True, True, False)
593 myobject.lock_location = (True, True, True)
595 myobject.location.x = ((wf / 2) * side)
596 myobject.location.y = -(deep * 0.65)
597 myobject.location.z = self.frame_height / 2
599 return myobject
602 # ------------------------------------------------------------------------------
603 # Create Handles
604 # All custom values are passed using self container (self.myvariable)
605 # ------------------------------------------------------------------------------
606 def create_handle(self, mydoor, pos, frame_width, openside):
607 # Retry mesh data
608 if self.handle == "1":
609 mydata = handle_model_01()
610 elif self.handle == "2":
611 mydata = handle_model_02()
612 elif self.handle == "3":
613 mydata = handle_model_03()
614 elif self.handle == "4":
615 mydata = handle_model_04()
616 else:
617 mydata = handle_model_01() # default model
619 # move data
620 verts = mydata[0]
621 faces = mydata[1]
623 gap = 0.002
624 sf = self.frame_size
625 wf = frame_width - (sf * 2) - (gap * 2)
626 deep = (self.frame_thick * 0.50) - (gap * 3)
627 # Open to right or left
628 if openside == "1":
629 side = -1
630 else:
631 side = 1
633 mymesh = bpy.data.meshes.new("Handle_" + pos)
634 myobject = bpy.data.objects.new("Handle_" + pos, mymesh)
636 myobject.location = bpy.context.scene.cursor.location
637 bpy.context.collection.objects.link(myobject)
639 mymesh.from_pydata(verts, [], faces)
640 mymesh.update(calc_edges=True)
641 # Rotate if pos is front
642 xrot = 0.0
643 yrot = 0.0
644 if self.handle == "1":
645 if openside != "1":
646 yrot = math.pi
647 else:
648 yrot = 0.0
650 if pos == "Front":
651 xrot = math.pi
653 myobject.rotation_euler = (xrot, yrot, 0.0) # radians PI=180
655 # Translate to door and parent (depend of model of door)
656 if self.model == "1":
657 myobject.location.x = (wf * side) + (0.072 * side * -1)
658 if pos == "Front":
659 myobject.location.y = deep - 0.005
660 else:
661 myobject.location.y = 0.005
663 if self.model == "2" or self.model == "6":
664 myobject.location.x = (wf * side) + (0.060 * side * -1)
665 if pos == "Front":
666 myobject.location.y = deep - 0.011
667 else:
668 myobject.location.y = 0.00665
670 if self.model == "3":
671 myobject.location.x = (wf * side) + (0.060 * side * -1)
672 if pos == "Front":
673 myobject.location.y = deep - 0.011
674 else:
675 myobject.location.y = 0.00665
677 if self.model == "4" or self.model == "5":
678 myobject.location.x = (wf * side) + (0.060 * side * -1)
679 if pos == "Front":
680 myobject.location.y = deep - 0.011
681 else:
682 myobject.location.y = 0.00665
684 myobject.location.z = 0
685 myobject.parent = mydoor
686 myobject.lock_rotation = (True, False, True)
688 return myobject
691 # ----------------------------------------------
692 # Door model 01
693 # ----------------------------------------------
694 def door_model_01(frame_size, frame_width, frame_height, frame_thick, openside):
695 # ------------------------------------
696 # Mesh data
697 # ------------------------------------
698 gap = 0.002
699 sf = frame_size
700 wf = frame_width - (sf * 2) - (gap * 2)
701 hf = (frame_height / 2) - (gap * 2)
702 deep = (frame_thick * 0.50) - (gap * 3)
703 # Open to right or left
704 if openside == "1":
705 side = 1
706 minx = wf * -1
707 maxx = 0.0
708 else:
709 side = -1
710 minx = 0.0
711 maxx = wf
713 miny = 0.0 # locked
714 maxy = deep
715 minz = -hf
716 maxz = hf - sf - gap
718 # Vertex
719 myvertex = [(minx, miny, minz),
720 (minx, maxy, minz),
721 (maxx, maxy, minz),
722 (maxx, miny, minz),
723 (minx, miny, maxz),
724 (minx, maxy, maxz),
725 (maxx, maxy, maxz),
726 (maxx, miny, maxz)]
728 # Faces
729 myfaces = [(4, 5, 1, 0), (5, 6, 2, 1), (6, 7, 3, 2), (7, 4, 0, 3), (0, 1, 2, 3),
730 (7, 6, 5, 4)]
732 return myvertex, myfaces, wf, deep, side
735 # ----------------------------------------------
736 # Door model 02
737 # ----------------------------------------------
738 def door_model_02(frame_size, frame_width, frame_height, frame_thick, openside):
739 gap = 0.002
740 sf = frame_size
741 wf = frame_width - (sf * 2) - (gap * 2)
742 hf = (frame_height / 2) - (gap * 2)
743 deep = (frame_thick * 0.50)
745 # ------------------------------------
746 # Mesh data
747 # ------------------------------------
748 # Open to right or left
749 if openside == "1":
750 side = 1
751 minx = wf * -1
752 maxx = 0.0
753 else:
754 side = -1
755 minx = 0.0
756 maxx = wf
758 maxy = deep
759 minz = -hf
760 maxz = hf - sf - gap
762 # Vertex
763 myvertex = [(minx, -1.57160684466362e-08, minz + 2.384185791015625e-06),
764 (maxx, -1.5599653124809265e-08, minz),
765 (minx, -1.5599653124809265e-08, maxz),
766 (minx, -1.5599653124809265e-08, maxz - 0.12999999523162842),
767 (minx, -1.57160684466362e-08, minz + 0.2500007152557373),
768 (maxx, -1.5599653124809265e-08, minz + 0.25000011920928955),
769 (maxx, -1.5599653124809265e-08, maxz),
770 (maxx, -1.5599653124809265e-08, maxz - 0.12999999523162842),
771 (maxx - 0.11609852313995361, -1.5599653124809265e-08, maxz),
772 (maxx - 0.12357193231582642, -1.5599653124809265e-08, minz),
773 (maxx - 0.11658430099487305, -1.5599653124809265e-08, maxz - 0.12999999523162842),
774 (maxx - 0.12263774871826172, -1.5599653124809265e-08, minz + 0.25000011920928955),
775 (minx, -1.57160684466362e-08, minz + 0.8700000941753387),
776 (maxx, -1.5599653124809265e-08, minz + 0.8700000941753387),
777 (maxx - 0.12076938152313232, -1.5599653124809265e-08, minz + 0.7500001192092896),
778 (minx + 0.11735659837722778, -1.57160684466362e-08, minz + 0.25000011920928955),
779 (minx + 0.12341010570526123, -1.5599653124809265e-08, maxz - 0.12999999523162842),
780 (minx + 0.11642247438430786, -1.57160684466362e-08, minz),
781 (minx + 0.11967337131500244, -1.57160684466362e-08, minz + 0.8700000941753387),
782 (minx, -1.57160684466362e-08, minz + 0.7500001192092896),
783 (maxx - 0.12032097578048706, -1.5599653124809265e-08, minz + 0.8700000941753387),
784 (minx + 0.12389582395553589, -1.5599653124809265e-08, maxz),
785 (maxx, -1.5599653124809265e-08, minz + 0.7500001192092896),
786 (minx + 0.11922496557235718, -1.57160684466362e-08, minz + 0.7500001192092896),
787 (minx + 0.11922496557235718, -0.010000014677643776, minz + 0.7500001192092896),
788 (minx + 0.12341010570526123, -0.010000014677643776, maxz - 0.12999999523162842),
789 (maxx - 0.12032097578048706, -0.010000014677643776, minz + 0.8700000941753387),
790 (minx + 0.11735659837722778, -0.010000014677643776, minz + 0.25000011920928955),
791 (maxx - 0.11658430099487305, -0.010000014677643776, maxz - 0.12999999523162842),
792 (maxx - 0.12263774871826172, -0.010000014677643776, minz + 0.25000011920928955),
793 (minx + 0.11967337131500244, -0.010000014677643776, minz + 0.8700000941753387),
794 (maxx - 0.12076938152313232, -0.010000014677643776, minz + 0.7500001192092896),
795 (minx + 0.13388586044311523, -0.010000014677643776, minz + 0.7375001013278961),
796 (minx + 0.1321108341217041, -0.010000014677643776, minz + 0.2625001072883606),
797 (maxx - 0.1372986137866974, -0.010000014677643776, minz + 0.2625001072883606),
798 (maxx - 0.13552364706993103, -0.010000014677643776, minz + 0.7375001013278961),
799 (minx + 0.13802427053451538, -0.010000014677643776, maxz - 0.14747536182403564),
800 (maxx - 0.13493508100509644, -0.010000014677643776, minz + 0.8866067305207253),
801 (maxx - 0.13138526678085327, -0.010000014677643776, maxz - 0.14747536182403564),
802 (minx + 0.13447439670562744, -0.010000014677643776, minz + 0.8866067305207253),
803 (minx + 0.13388586044311523, -0.008776669390499592, minz + 0.7375001013278961),
804 (minx + 0.1321108341217041, -0.008776669390499592, minz + 0.2625001072883606),
805 (maxx - 0.1372986137866974, -0.008776669390499592, minz + 0.2625001072883606),
806 (maxx - 0.13552364706993103, -0.008776669390499592, minz + 0.7375001013278961),
807 (minx + 0.13802427053451538, -0.008776669390499592, maxz - 0.14747536182403564),
808 (maxx - 0.13493508100509644, -0.008776669390499592, minz + 0.8866067305207253),
809 (maxx - 0.13138526678085327, -0.008776669390499592, maxz - 0.14747536182403564),
810 (minx + 0.13447439670562744, -0.008776669390499592, minz + 0.8866067305207253),
811 (minx, maxy - 0.009999999776482582, minz + 2.384185791015625e-06),
812 (maxx, maxy - 0.009999999776482582, minz),
813 (minx, maxy - 0.009999999776482582, maxz),
814 (minx, maxy - 0.009999999776482582, maxz - 0.12999999523162842),
815 (minx, maxy - 0.009999999776482582, minz + 0.2500007152557373),
816 (maxx, maxy - 0.009999999776482582, minz + 0.25000011920928955),
817 (maxx, maxy - 0.009999999776482582, maxz),
818 (maxx, maxy - 0.009999999776482582, maxz - 0.12999999523162842),
819 (maxx - 0.11609852313995361, maxy - 0.009999999776482582, maxz),
820 (maxx - 0.12357193231582642, maxy - 0.009999999776482582, minz),
821 (maxx - 0.11658430099487305, maxy - 0.009999999776482582, maxz - 0.12999999523162842),
822 (maxx - 0.12263774871826172, maxy - 0.009999999776482582, minz + 0.25000011920928955),
823 (minx, maxy - 0.009999999776482582, minz + 0.8700000941753387),
824 (maxx, maxy - 0.009999999776482582, minz + 0.8700000941753387),
825 (maxx - 0.12076938152313232, maxy - 0.009999999776482582, minz + 0.7500001192092896),
826 (minx + 0.11735659837722778, maxy - 0.009999999776482582, minz + 0.25000011920928955),
827 (minx + 0.12341010570526123, maxy - 0.009999999776482582, maxz - 0.12999999523162842),
828 (minx + 0.11642247438430786, maxy - 0.009999999776482582, minz),
829 (minx + 0.11967337131500244, maxy - 0.009999999776482582, minz + 0.8700000941753387),
830 (minx, maxy - 0.009999999776482582, minz + 0.7500001192092896),
831 (maxx - 0.12032097578048706, maxy - 0.009999999776482582, minz + 0.8700000941753387),
832 (minx + 0.12389582395553589, maxy - 0.009999999776482582, maxz),
833 (maxx, maxy - 0.009999999776482582, minz + 0.7500001192092896),
834 (minx + 0.11922496557235718, maxy - 0.009999999776482582, minz + 0.7500001192092896),
835 (minx + 0.11922496557235718, maxy, minz + 0.7500001192092896),
836 (minx + 0.12341010570526123, maxy, maxz - 0.12999999523162842),
837 (maxx - 0.12032097578048706, maxy, minz + 0.8700000941753387),
838 (minx + 0.11735659837722778, maxy, minz + 0.25000011920928955),
839 (maxx - 0.11658430099487305, maxy, maxz - 0.12999999523162842),
840 (maxx - 0.12263774871826172, maxy, minz + 0.25000011920928955),
841 (minx + 0.11967337131500244, maxy, minz + 0.8700000941753387),
842 (maxx - 0.12076938152313232, maxy, minz + 0.7500001192092896),
843 (minx + 0.13388586044311523, maxy, minz + 0.7375001013278961),
844 (minx + 0.1321108341217041, maxy, minz + 0.2625001072883606),
845 (maxx - 0.1372986137866974, maxy, minz + 0.2625001072883606),
846 (maxx - 0.13552364706993103, maxy, minz + 0.7375001013278961),
847 (minx + 0.13802427053451538, maxy, maxz - 0.14747536182403564),
848 (maxx - 0.13493508100509644, maxy, minz + 0.8866067305207253),
849 (maxx - 0.13138526678085327, maxy, maxz - 0.14747536182403564),
850 (minx + 0.13447439670562744, maxy, minz + 0.8866067305207253),
851 (minx + 0.13388586044311523, maxy - 0.0012233443558216095, minz + 0.7375001013278961),
852 (minx + 0.1321108341217041, maxy - 0.0012233443558216095, minz + 0.2625001072883606),
853 (maxx - 0.1372986137866974, maxy - 0.0012233443558216095, minz + 0.2625001072883606),
854 (maxx - 0.13552364706993103, maxy - 0.0012233443558216095, minz + 0.7375001013278961),
855 (minx + 0.13802427053451538, maxy - 0.0012233443558216095, maxz - 0.14747536182403564),
856 (maxx - 0.13493508100509644, maxy - 0.0012233443558216095, minz + 0.8866067305207253),
857 (maxx - 0.13138526678085327, maxy - 0.0012233443558216095, maxz - 0.14747536182403564),
858 (minx + 0.13447439670562744, maxy - 0.0012233443558216095, minz + 0.8866067305207253)]
860 # Faces
861 myfaces = [(15, 4, 0, 17), (21, 2, 3, 16), (23, 19, 4, 15), (6, 8, 10, 7), (8, 21, 16, 10),
862 (16, 3, 12, 18), (11, 15, 17, 9), (20, 18, 23, 14), (18, 12, 19, 23), (5, 11, 9, 1),
863 (22, 14, 11, 5), (7, 10, 20, 13), (13, 20, 14, 22), (20, 10, 28, 26), (10, 16, 25, 28),
864 (16, 18, 30, 25), (18, 20, 26, 30), (15, 11, 29, 27), (14, 23, 24, 31), (23, 15, 27, 24),
865 (11, 14, 31, 29), (31, 24, 32, 35), (24, 27, 33, 32), (27, 29, 34, 33), (29, 31, 35, 34),
866 (26, 28, 38, 37), (30, 26, 37, 39), (28, 25, 36, 38), (25, 30, 39, 36), (33, 34, 42, 41),
867 (36, 39, 47, 44), (34, 35, 43, 42), (37, 38, 46, 45), (32, 33, 41, 40), (38, 36, 44, 46),
868 (35, 32, 40, 43), (39, 37, 45, 47), (18, 20, 10, 16), (14, 23, 15, 11), (63, 52, 48, 65),
869 (69, 50, 51, 64), (71, 67, 52, 63), (54, 56, 58, 55), (56, 69, 64, 58), (64, 51, 60, 66),
870 (59, 63, 65, 57), (68, 66, 71, 62), (66, 60, 67, 71), (53, 59, 57, 49), (70, 62, 59, 53),
871 (55, 58, 68, 61), (61, 68, 62, 70), (68, 58, 76, 74), (58, 64, 73, 76), (64, 66, 78, 73),
872 (66, 68, 74, 78), (63, 59, 77, 75), (62, 71, 72, 79), (71, 63, 75, 72), (59, 62, 79, 77),
873 (79, 72, 80, 83), (72, 75, 81, 80), (75, 77, 82, 81), (77, 79, 83, 82), (74, 76, 86, 85),
874 (78, 74, 85, 87), (76, 73, 84, 86), (73, 78, 87, 84), (81, 82, 90, 89), (84, 87, 95, 92),
875 (82, 83, 91, 90), (85, 86, 94, 93), (80, 81, 89, 88), (86, 84, 92, 94), (83, 80, 88, 91),
876 (87, 85, 93, 95), (66, 68, 58, 64), (62, 71, 63, 59), (50, 2, 21, 69), (8, 56, 69, 21),
877 (6, 54, 56, 8), (54, 6, 7, 55), (55, 7, 13, 61), (61, 13, 22, 70), (5, 53, 70, 22),
878 (1, 49, 53, 5), (49, 1, 9, 57), (57, 9, 17, 65), (0, 48, 65, 17), (48, 0, 4, 52),
879 (52, 4, 19, 67), (12, 60, 67, 19), (3, 51, 60, 12), (2, 50, 51, 3)]
881 return myvertex, myfaces, wf, deep, side
884 # ----------------------------------------------
885 # Door model 03
886 # ----------------------------------------------
887 def door_model_03(frame_size, frame_width, frame_height, frame_thick, openside):
888 gap = 0.002
889 sf = frame_size
890 wf = frame_width - (sf * 2) - (gap * 2)
891 hf = (frame_height / 2) - (gap * 2)
892 deep = (frame_thick * 0.50)
894 # ------------------------------------
895 # Mesh data
896 # ------------------------------------
897 # Open to right or left
898 if openside == "1":
899 side = 1
900 minx = wf * -1
901 maxx = 0.0
902 else:
903 side = -1
904 minx = 0.0
905 maxx = wf
907 miny = 0.0 # Locked
909 maxy = deep
910 minz = -hf
911 maxz = hf - sf - gap
913 # Vertex
914 myvertex = [(minx, -1.5599653124809265e-08, maxz),
915 (maxx, -1.5599653124809265e-08, maxz),
916 (minx, maxy, maxz),
917 (maxx, maxy, maxz),
918 (maxx - 0.10429960489273071, -1.5832483768463135e-08, maxz),
919 (minx + 0.10429966449737549, -1.5832483768463135e-08, maxz),
920 (minx + 0.10429966449737549, maxy, maxz),
921 (minx, -1.5628756955266e-08, maxz - 0.5012519359588623),
922 (maxx, -1.5599653124809265e-08, maxz - 0.5012525320053101),
923 (minx, maxy, maxz - 0.5012519359588623),
924 (maxx, maxy, maxz - 0.5012525320053101),
925 (maxx - 0.10429960489273071, -1.5832483768463135e-08, maxz - 0.501252293586731),
926 (minx + 0.10429966449737549, -1.5832483768463135e-08, maxz - 0.5012521147727966),
927 (minx + 0.10429966449737549, maxy, maxz - 0.5012521147727966),
928 (maxx - 0.10429960489273071, maxy, maxz - 0.501252293586731),
929 (minx + 0.11909735202789307, -1.5832483768463135e-08, maxz),
930 (maxx - 0.11909729242324829, -1.5832483768463135e-08, maxz),
931 (minx + 0.11909735202789307, maxy, maxz),
932 (minx + 0.11909735202789307, -1.5832483768463135e-08, maxz - 0.5012521743774414),
933 (maxx - 0.11909729242324829, -1.5832483768463135e-08, maxz - 0.5012522339820862),
934 (minx, -1.5629622041046787e-08, maxz - 0.516154021024704),
935 (maxx, -1.5599653124809265e-08, maxz - 0.5161546468734741),
936 (minx, maxy, maxz - 0.516154021024704),
937 (maxx, maxy, maxz - 0.5161546468734741),
938 (maxx - 0.10429960489273071, -1.5832483768463135e-08, maxz - 0.516154408454895),
939 (minx + 0.10429966449737549, -1.5832483768463135e-08, maxz - 0.5161541998386383),
940 (maxx - 0.10429960489273071, maxy, maxz - 0.516154408454895),
941 (maxx - 0.11909729242324829, -1.5832483768463135e-08, maxz - 0.5161543190479279),
942 (minx + 0.11909735202789307, -1.5832483768463135e-08, maxz - 0.5161542594432831),
943 (minx + 0.11909735202789307, maxy, maxz - 0.5161542594432831),
944 (maxx - 0.10429960489273071, miny + 0.009999999776482582, maxz),
945 (minx + 0.10429966449737549, miny + 0.009999999776482582, maxz),
946 (maxx - 0.10429960489273071, miny + 0.009999999776482582, maxz - 0.501252293586731),
947 (minx + 0.10429966449737549, miny + 0.009999999776482582, maxz - 0.5012521147727966),
948 (minx + 0.11909735202789307, miny + 0.009999999776482582, maxz),
949 (maxx - 0.11909729242324829, miny + 0.009999999776482582, maxz),
950 (minx + 0.11909735202789307, miny + 0.009999999776482582, maxz - 0.5012521743774414),
951 (maxx - 0.11909729242324829, miny + 0.009999999776482582, maxz - 0.5012522339820862),
952 (maxx - 0.10429960489273071, miny + 0.009999999776482582, maxz - 0.516154408454895),
953 (minx + 0.10429966449737549, miny + 0.009999999776482582, maxz - 0.5161541998386383),
954 (maxx - 0.11909729242324829, miny + 0.009999999776482582, maxz - 0.5161543190479279),
955 (minx + 0.11909735202789307, miny + 0.009999999776482582, maxz - 0.5161542594432831),
956 (maxx - 0.11909729242324829, -1.5832483768463135e-08, maxz - 0.992994874715805),
957 (minx + 0.11909735202789307, -1.5832483768463135e-08, maxz - 0.9929947257041931),
958 (minx + 0.11909735202789307, maxy, maxz - 0.9929947257041931),
959 (maxx - 0.11909738183021545, maxy, maxz - 0.992994874715805),
960 (minx, -1.565730833874568e-08, maxz - 0.9929942488670349),
961 (maxx, -1.5599653124809265e-08, maxz - 0.9929954260587692),
962 (minx, maxy, maxz - 0.9929942488670349),
963 (maxx, maxy, maxz - 0.9929954260587692),
964 (maxx - 0.10429960489273071, -1.5832483768463135e-08, maxz - 0.9929950088262558),
965 (minx + 0.10429966449737549, -1.5832483768463135e-08, maxz - 0.9929945915937424),
966 (maxx - 0.10429960489273071, maxy, maxz - 0.9929950088262558),
967 (maxx - 0.10429960489273071, miny + 0.009999999776482582, maxz - 0.9929950088262558),
968 (minx + 0.10429966449737549, miny + 0.009999999776482582, maxz - 0.9929945915937424),
969 (maxx - 0.11909729242324829, miny + 0.009999999776482582, maxz - 0.992994874715805),
970 (minx + 0.11909735202789307, miny + 0.009999999776482582, maxz - 0.9929947257041931),
971 (maxx - 0.11909729242324829, maxy - 0.0004077646881341934, maxz - 0.992994874715805),
972 (maxx - 0.10429960489273071, maxy - 0.0004077646881341934, maxz - 0.9929950088262558),
973 (maxx - 0.10429960489273071, maxy, maxz),
974 (maxx - 0.11909729242324829, maxy, maxz),
975 (maxx - 0.11909738183021545, maxy, maxz - 0.5012522339820862),
976 (minx + 0.11909735202789307, maxy, maxz - 0.5012521743774414),
977 (minx + 0.10429966449737549, maxy, maxz - 0.5161541998386383),
978 (maxx - 0.11909738183021545, maxy, maxz - 0.5161543190479279),
979 (minx + 0.10429966449737549, maxy, maxz - 0.9929945915937424),
980 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, maxz),
981 (minx + 0.10429966449737549, maxy - 0.008999999612569809, maxz),
982 (minx + 0.10429966449737549, maxy - 0.008999999612569809, maxz - 0.5012521147727966),
983 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, maxz - 0.501252293586731),
984 (minx + 0.11909735202789307, maxy - 0.008999999612569809, maxz),
985 (maxx - 0.11909729242324829, maxy - 0.008999999612569809, maxz),
986 (maxx - 0.11909738183021545, maxy - 0.008999999612569809, maxz - 0.5012522339820862),
987 (minx + 0.11909735202789307, maxy - 0.008999999612569809, maxz - 0.5012521743774414),
988 (minx + 0.10429966449737549, maxy - 0.008999999612569809, maxz - 0.5161541998386383),
989 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, maxz - 0.516154408454895),
990 (minx + 0.11909735202789307, maxy - 0.008999999612569809, maxz - 0.5161542594432831),
991 (maxx - 0.11909738183021545, maxy - 0.008999999612569809, maxz - 0.5161543190479279),
992 (minx + 0.11909735202789307, maxy - 0.008999999612569809, maxz - 0.9929947257041931),
993 (maxx - 0.11909738183021545, maxy - 0.008999999612569809, maxz - 0.992994874715805),
994 (minx + 0.10429966449737549, maxy - 0.008999999612569809, maxz - 0.9929945915937424),
995 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, maxz - 0.9929950088262558),
996 (minx, -1.5599653124809265e-08, minz),
997 (maxx, -1.5599653124809265e-08, minz),
998 (minx, maxy, minz),
999 (maxx, maxy, minz),
1000 (maxx - 0.10429960489273071, -1.5832483768463135e-08, minz),
1001 (minx + 0.10429966449737549, -1.5832483768463135e-08, minz),
1002 (minx + 0.10429966449737549, maxy, minz),
1003 (minx, -1.5628756955266e-08, minz + 0.5012519359588623),
1004 (minx, -1.5657860785722733e-08, minz + 1.0025038719177246),
1005 (maxx, -1.5599653124809265e-08, minz + 0.5012525320053101),
1006 (maxx, -1.5599653124809265e-08, minz + 1.0025050640106201),
1007 (minx, maxy, minz + 0.5012519359588623),
1008 (minx, maxy, minz + 1.0025038719177246),
1009 (maxx, maxy, minz + 0.5012525320053101),
1010 (maxx, maxy, minz + 1.0025050640106201),
1011 (maxx - 0.10429960489273071, -1.5832483768463135e-08, minz + 0.501252293586731),
1012 (maxx - 0.10429960489273071, -1.5832483768463135e-08, minz + 1.0025046467781067),
1013 (minx + 0.10429966449737549, -1.5832483768463135e-08, minz + 0.5012521147727966),
1014 (minx + 0.10429966449737549, -1.5832483768463135e-08, minz + 1.0025042295455933),
1015 (minx + 0.10429966449737549, maxy, minz + 0.5012521147727966),
1016 (minx + 0.10429966449737549, maxy, minz + 1.0025042295455933),
1017 (maxx - 0.10429960489273071, maxy, minz + 0.501252293586731),
1018 (maxx - 0.10429960489273071, maxy, minz + 1.0025046467781067),
1019 (minx + 0.11909735202789307, -1.5832483768463135e-08, minz),
1020 (maxx - 0.11909729242324829, -1.5832483768463135e-08, minz),
1021 (minx + 0.11909735202789307, maxy, minz),
1022 (minx + 0.11909735202789307, -1.5832483768463135e-08, minz + 0.5012521743774414),
1023 (maxx - 0.11909729242324829, -1.5832483768463135e-08, minz + 0.5012522339820862),
1024 (minx + 0.11909735202789307, maxy, minz + 1.0025043686230788),
1025 (minx, -1.5629622041046787e-08, minz + 0.516154021024704),
1026 (maxx, -1.5599653124809265e-08, minz + 0.5161546468734741),
1027 (minx, maxy, minz + 0.516154021024704),
1028 (maxx, maxy, minz + 0.5161546468734741),
1029 (maxx - 0.10429960489273071, -1.5832483768463135e-08, minz + 0.516154408454895),
1030 (minx + 0.10429966449737549, -1.5832483768463135e-08, minz + 0.5161541998386383),
1031 (maxx - 0.10429960489273071, maxy, minz + 0.516154408454895),
1032 (maxx - 0.11909729242324829, -1.5832483768463135e-08, minz + 0.5161543190479279),
1033 (minx + 0.11909735202789307, -1.5832483768463135e-08, minz + 0.5161542594432831),
1034 (minx + 0.11909735202789307, maxy, minz + 0.5161542594432831),
1035 (maxx - 0.10429960489273071, miny + 0.009999999776482582, minz),
1036 (minx + 0.10429966449737549, miny + 0.009999999776482582, minz),
1037 (maxx - 0.10429960489273071, miny + 0.009999999776482582, minz + 0.501252293586731),
1038 (maxx - 0.10429960489273071, miny + 0.009999999776482582, minz + 1.0025046467781067),
1039 (minx + 0.10429966449737549, miny + 0.009999999776482582, minz + 0.5012521147727966),
1040 (minx + 0.10429966449737549, miny + 0.009999999776482582, minz + 1.0025042295455933),
1041 (minx + 0.11909735202789307, miny + 0.009999999776482582, minz),
1042 (maxx - 0.11909729242324829, miny + 0.009999999776482582, minz),
1043 (minx + 0.11909735202789307, miny + 0.009999999776482582, minz + 0.5012521743774414),
1044 (maxx - 0.11909729242324829, miny + 0.009999999776482582, minz + 0.5012522339820862),
1045 (maxx - 0.10429960489273071, miny + 0.009999999776482582, minz + 0.516154408454895),
1046 (minx + 0.10429966449737549, miny + 0.009999999776482582, minz + 0.5161541998386383),
1047 (maxx - 0.11909729242324829, miny + 0.009999999776482582, minz + 0.5161543190479279),
1048 (minx + 0.11909735202789307, miny + 0.009999999776482582, minz + 0.5161542594432831),
1049 (maxx - 0.11909729242324829, -1.5832483768463135e-08, minz + 0.992994874715805),
1050 (minx + 0.11909735202789307, -1.5832483768463135e-08, minz + 0.9929947257041931),
1051 (minx + 0.11909735202789307, maxy, minz + 0.9929947257041931),
1052 (maxx - 0.11909738183021545, maxy, minz + 0.992994874715805),
1053 (minx, -1.565730833874568e-08, minz + 0.9929942488670349),
1054 (maxx, -1.5599653124809265e-08, minz + 0.9929954260587692),
1055 (minx, maxy, minz + 0.9929942488670349),
1056 (maxx, maxy, minz + 0.9929954260587692),
1057 (maxx - 0.10429960489273071, -1.5832483768463135e-08, minz + 0.9929950088262558),
1058 (minx + 0.10429966449737549, -1.5832483768463135e-08, minz + 0.9929945915937424),
1059 (maxx - 0.10429960489273071, maxy, minz + 0.9929950088262558),
1060 (maxx - 0.10429960489273071, miny + 0.009999999776482582, minz + 0.9929950088262558),
1061 (minx + 0.10429966449737549, miny + 0.009999999776482582, minz + 0.9929945915937424),
1062 (minx + 0.11909735202789307, miny + 0.009999999776482582, minz + 1.0025043686231356),
1063 (maxx - 0.11909729242324829, miny + 0.009999999776482582, minz + 1.0025045077006212),
1064 (maxx - 0.10429960489273071, maxy - 0.0004077646881341934, minz + 1.0025046467781067),
1065 (maxx - 0.11909729242324829, maxy - 0.0004077646881341934, minz + 1.0025045077006212),
1066 (maxx - 0.11909729242324829, miny + 0.009999999776482582, minz + 0.992994874715805),
1067 (minx + 0.11909735202789307, miny + 0.009999999776482582, minz + 0.9929947257041931),
1068 (maxx - 0.11909729242324829, maxy - 0.0004077646881341934, minz + 0.992994874715805),
1069 (maxx - 0.10429960489273071, maxy - 0.0004077646881341934, minz + 0.9929950088262558),
1070 (maxx - 0.10429960489273071, maxy, minz),
1071 (maxx - 0.11909729242324829, maxy, minz),
1072 (maxx - 0.11909738183021545, maxy, minz + 0.5012522339820862),
1073 (minx + 0.11909735202789307, maxy, minz + 0.5012521743774414),
1074 (maxx - 0.11909738183021545, maxy, minz + 1.0025045077005643),
1075 (minx + 0.10429966449737549, maxy, minz + 0.5161541998386383),
1076 (maxx - 0.11909738183021545, maxy, minz + 0.5161543190479279),
1077 (minx + 0.10429966449737549, maxy, minz + 0.9929945915937424),
1078 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, minz),
1079 (minx + 0.10429966449737549, maxy - 0.008999999612569809, minz),
1080 (minx + 0.10429966449737549, maxy - 0.008999999612569809, minz + 0.5012521147727966),
1081 (minx + 0.10429966449737549, maxy - 0.008999999612569809, minz + 1.0025042295455933),
1082 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, minz + 0.501252293586731),
1083 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, minz + 1.0025046467781067),
1084 (minx + 0.11909735202789307, maxy - 0.008999999612569809, minz),
1085 (maxx - 0.11909729242324829, maxy - 0.008999999612569809, minz),
1086 (maxx - 0.11909738183021545, maxy - 0.008999999612569809, minz + 0.5012522339820862),
1087 (minx + 0.11909735202789307, maxy - 0.008999999612569809, minz + 0.5012521743774414),
1088 (maxx - 0.11909738183021545, maxy - 0.008999999612569809, minz + 1.0025045077005643),
1089 (minx + 0.11909735202789307, maxy - 0.008999999612569809, minz + 1.0025043686230788),
1090 (minx + 0.10429966449737549, maxy - 0.008999999612569809, minz + 0.5161541998386383),
1091 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, minz + 0.516154408454895),
1092 (minx + 0.11909735202789307, maxy - 0.008999999612569809, minz + 0.5161542594432831),
1093 (maxx - 0.11909738183021545, maxy - 0.008999999612569809, minz + 0.5161543190479279),
1094 (minx + 0.11909735202789307, maxy - 0.008999999612569809, minz + 0.9929947257041931),
1095 (maxx - 0.11909738183021545, maxy - 0.008999999612569809, minz + 0.992994874715805),
1096 (minx + 0.10429966449737549, maxy - 0.008999999612569809, minz + 0.9929945915937424),
1097 (maxx - 0.10429960489273071, maxy - 0.008999999612569809, minz + 0.9929950088262558)]
1099 # Faces
1100 myfaces = [(2, 0, 5, 6), (3, 1, 8, 10), (49, 47, 92, 96), (0, 2, 9, 7), (46, 48, 94, 90),
1101 (5, 0, 7, 12), (51, 46, 90, 100), (52, 49, 96, 104), (1, 4, 11, 8), (47, 50, 98, 92),
1102 (12, 25, 39, 33), (2, 6, 13, 9), (5, 12, 33, 31), (16, 15, 18, 19), (18, 15, 34, 36),
1103 (10, 8, 21, 23), (7, 9, 22, 20), (12, 7, 20, 25), (14, 10, 23, 26), (8, 11, 24, 21),
1104 (51, 100, 126, 54), (24, 11, 32, 38), (16, 19, 37, 35), (34, 31, 33, 36), (30, 35, 37, 32),
1105 (36, 33, 39, 41), (32, 37, 40, 38), (37, 36, 41, 40), (19, 18, 36, 37), (28, 27, 40, 41),
1106 (20, 22, 48, 46), (11, 4, 30, 32), (23, 21, 47, 49), (50, 24, 38, 53), (25, 20, 46, 51),
1107 (26, 23, 49, 52), (21, 24, 50, 47), (27, 28, 43, 42), (25, 51, 54, 39), (98, 50, 53, 124),
1108 (55, 56, 148, 149), (126, 148, 56, 54), (42, 43, 56, 55), (124, 53, 55, 149), (61, 60, 71, 72),
1109 (35, 30, 66, 71), (31, 34, 70, 67), (71, 66, 69, 72), (79, 81, 169, 174), (67, 70, 73, 68),
1110 (80, 78, 175, 167), (78, 79, 174, 175), (72, 69, 75, 77), (68, 73, 76, 74), (73, 72, 77, 76),
1111 (77, 75, 81, 79), (74, 76, 78, 80), (62, 61, 72, 73), (65, 63, 74, 80), (59, 4, 1, 3),
1112 (59, 3, 10, 14), (48, 65, 102, 94), (17, 15, 16, 60), (17, 60, 61, 62), (9, 13, 63, 22),
1113 (43, 28, 41, 56), (27, 42, 55, 40), (22, 63, 65, 48), (29, 64, 45, 44), (41, 39, 54, 56),
1114 (38, 40, 55, 53), (29, 44, 78, 76), (63, 13, 68, 74), (17, 62, 73, 70), (52, 104, 169, 81),
1115 (64, 29, 76, 77), (13, 6, 67, 68), (59, 14, 69, 66), (44, 45, 79, 78), (45, 64, 77, 79),
1116 (14, 26, 75, 69), (26, 52, 81, 75), (102, 65, 80, 167), (84, 88, 87, 82), (85, 95, 91, 83),
1117 (142, 96, 92, 140), (82, 89, 93, 84), (139, 90, 94, 141), (87, 99, 89, 82), (144, 100, 90, 139),
1118 (145, 104, 96, 142), (83, 91, 97, 86), (140, 92, 98, 143), (99, 125, 132, 116), (84, 93, 101, 88),
1119 (87, 122, 125, 99), (106, 109, 108, 105), (108, 129, 127, 105), (95, 114, 112, 91), (89, 111, 113, 93),
1120 (99, 116, 111, 89), (103, 117, 114, 95), (91, 112, 115, 97), (144, 147, 126, 100), (115, 131, 123, 97),
1121 (106, 128, 130, 109), (127, 129, 125, 122), (121, 123, 130, 128), (129, 134, 132, 125),
1122 (123, 131, 133, 130),
1123 (130, 133, 134, 129), (109, 130, 129, 108), (119, 134, 133, 118), (111, 139, 141, 113),
1124 (97, 123, 121, 86),
1125 (114, 142, 140, 112), (143, 146, 131, 115), (116, 144, 139, 111), (117, 145, 142, 114),
1126 (112, 140, 143, 115),
1127 (118, 135, 136, 119), (116, 132, 147, 144), (98, 124, 146, 143), (152, 149, 148, 153),
1128 (126, 147, 153, 148),
1129 (135, 152, 153, 136), (124, 149, 152, 146), (158, 172, 171, 157), (128, 171, 164, 121),
1130 (122, 165, 170, 127),
1131 (171, 172, 168, 164), (181, 174, 169, 183), (165, 166, 173, 170), (182, 167, 175, 180),
1132 (180, 175, 174, 181),
1133 (172, 179, 177, 168), (166, 176, 178, 173), (173, 178, 179, 172), (179, 181, 183, 177),
1134 (176, 182, 180, 178),
1135 (159, 173, 172, 158), (163, 182, 176, 161), (156, 85, 83, 86), (156, 103, 95, 85), (141, 94, 102, 163),
1136 (107, 157, 106, 105), (107, 159, 158, 157), (93, 113, 161, 101), (136, 153, 134, 119),
1137 (118, 133, 152, 135),
1138 (113, 141, 163, 161), (120, 137, 138, 162), (134, 153, 147, 132), (131, 146, 152, 133),
1139 (120, 178, 180, 137),
1140 (161, 176, 166, 101), (107, 170, 173, 159), (145, 183, 169, 104), (162, 179, 178, 120),
1141 (101, 166, 165, 88),
1142 (160, 174, 175, 110), (156, 164, 168, 103), (137, 180, 181, 138), (138, 181, 179, 162),
1143 (103, 168, 177, 117),
1144 (117, 177, 183, 145), (102, 167, 182, 163)]
1146 return myvertex, myfaces, wf, deep, side
1149 # ----------------------------------------------
1150 # Door model 04
1151 # ----------------------------------------------
1152 def door_model_04(frame_size, frame_width, frame_height, frame_thick, openside):
1153 gap = 0.002
1154 sf = frame_size
1155 wf = frame_width - (sf * 2) - (gap * 2)
1156 hf = (frame_height / 2) - (gap * 2)
1157 deep = (frame_thick * 0.50)
1159 # ------------------------------------
1160 # Mesh data
1161 # ------------------------------------
1162 # Open to right or left
1163 if openside == "1":
1164 side = 1
1165 minx = wf * -1
1166 maxx = 0.0
1167 else:
1168 side = -1
1169 minx = 0.0
1170 maxx = wf
1172 miny = 0.0 # Locked
1174 maxy = deep
1175 minz = -hf
1176 maxz = hf - sf - gap
1178 # Vertex
1179 myvertex = [(minx, miny + 0.009999997913837433, minz + 2.384185791015625e-06),
1180 (maxx, miny + 0.009999997913837433, minz),
1181 (minx, miny + 0.009999997913837433, maxz),
1182 (minx, miny + 0.009999997913837433, maxz - 0.12999999523162842),
1183 (minx, miny + 0.009999997913837433, minz + 0.25000083446502686),
1184 (maxx, miny + 0.009999997913837433, minz + 0.2500002384185791),
1185 (maxx, miny + 0.009999997913837433, maxz),
1186 (maxx, miny + 0.009999997913837433, maxz - 0.12999999523162842),
1187 (maxx - 0.11968576908111572, miny + 0.009999997913837433, maxz),
1188 (maxx - 0.11968576908111572, miny + 0.009999997913837433, minz),
1189 (maxx - 0.11968576908111572, miny + 0.009999997913837433, maxz - 0.12999999523162842),
1190 (maxx - 0.11968576908111572, miny + 0.009999997913837433, minz + 0.2500002384185791),
1191 (minx + 0.12030857801437378, miny + 0.009999997913837433, minz + 0.2500002384185791),
1192 (minx + 0.12030857801437378, miny + 0.009999997913837433, maxz - 0.12999999523162842),
1193 (minx + 0.12030857801437378, miny + 0.009999997913837433, minz),
1194 (minx + 0.12030857801437378, miny + 0.009999997913837433, maxz),
1195 (minx + 0.12030857801437378, -0.009999997913837433, maxz - 0.12999999523162842),
1196 (minx + 0.12030857801437378, -0.009999997913837433, minz + 0.2500002384185791),
1197 (maxx - 0.11968576908111572, -0.009999997913837433, maxz - 0.12999999523162842),
1198 (maxx - 0.11968576908111572, -0.009999997913837433, minz + 0.2500002384185791),
1199 (maxx - 0.13532748818397522, -0.008776653558015823, minz + 0.2625002861022949),
1200 (maxx - 0.13532748818397522, -0.009388323873281479, maxz - 0.14747536182403564),
1201 (minx + 0.13506758213043213, -0.009388323873281479, minz + 0.2625002861022949),
1202 (minx + 0.13506758213043213, -0.009388323873281479, maxz - 0.14747536182403564),
1203 (maxx - 0.13532748818397522, -0.0003883242607116699, minz + 0.2625002861022949),
1204 (maxx - 0.13532748818397522, -0.0003883242607116699, maxz - 0.14747536182403564),
1205 (minx + 0.13506758213043213, -0.0003883242607116699, minz + 0.2625002861022949),
1206 (minx + 0.13506758213043213, -0.0003883242607116699, maxz - 0.14747536182403564),
1207 (minx, maxy - 0.010000001639127731, minz + 2.384185791015625e-06),
1208 (maxx, maxy - 0.010000001639127731, minz),
1209 (minx, maxy - 0.010000001639127731, maxz),
1210 (minx, maxy - 0.010000001639127731, maxz - 0.12999999523162842),
1211 (minx, maxy - 0.010000001639127731, minz + 0.25000083446502686),
1212 (maxx, maxy - 0.010000001639127731, minz + 0.2500002384185791),
1213 (maxx, maxy - 0.010000001639127731, maxz),
1214 (maxx, maxy - 0.010000001639127731, maxz - 0.12999999523162842),
1215 (maxx - 0.11968576908111572, maxy - 0.010000001639127731, maxz),
1216 (maxx - 0.11968576908111572, maxy - 0.010000001639127731, minz),
1217 (maxx - 0.11968576908111572, maxy - 0.010000001639127731, maxz - 0.12999999523162842),
1218 (maxx - 0.11968576908111572, maxy - 0.010000001639127731, minz + 0.2500002384185791),
1219 (minx + 0.12030857801437378, maxy - 0.010000001639127731, minz + 0.2500002384185791),
1220 (minx + 0.12030857801437378, maxy - 0.010000001639127731, maxz - 0.12999999523162842),
1221 (minx + 0.12030857801437378, maxy - 0.010000001639127731, minz),
1222 (minx + 0.12030857801437378, maxy - 0.010000001639127731, maxz),
1223 (minx + 0.12030857801437378, maxy, maxz - 0.12999999523162842),
1224 (minx + 0.12030857801437378, maxy, minz + 0.2500002384185791),
1225 (maxx - 0.11968576908111572, maxy, maxz - 0.12999999523162842),
1226 (maxx - 0.11968576908111572, maxy, minz + 0.2500002384185791),
1227 (maxx - 0.1353275179862976, maxy - 0.001223348081111908, minz + 0.2625002861022949),
1228 (maxx - 0.1353275179862976, maxy - 0.0006116703152656555, maxz - 0.14747536182403564),
1229 (minx + 0.13506758213043213, maxy - 0.0006116703152656555, minz + 0.2625002861022949),
1230 (minx + 0.13506758213043213, maxy - 0.0006116703152656555, maxz - 0.14747536182403564),
1231 (maxx - 0.1353275179862976, maxy - 0.010223347693681717, minz + 0.2625002861022949),
1232 (maxx - 0.1353275179862976, maxy - 0.009611673653125763, maxz - 0.14747536182403564),
1233 (minx + 0.13506758213043213, maxy - 0.009611673653125763, minz + 0.2625002861022949),
1234 (minx + 0.13506758213043213, maxy - 0.009611673653125763, maxz - 0.14747536182403564)]
1236 # Faces
1237 myfaces = [(12, 4, 0, 14), (15, 2, 3, 13), (6, 8, 10, 7), (8, 15, 13, 10), (11, 12, 14, 9),
1238 (5, 11, 9, 1), (10, 13, 16, 18), (12, 11, 19, 17), (3, 4, 12, 13), (5, 7, 10, 11),
1239 (20, 22, 17, 19), (18, 21, 20, 19), (17, 22, 23, 16), (17, 16, 13, 12), (11, 10, 18, 19),
1240 (21, 18, 16, 23), (22, 26, 27, 23), (21, 23, 27, 25), (21, 25, 24, 20), (20, 24, 26, 22),
1241 (24, 25, 27, 26), (40, 42, 28, 32), (43, 41, 31, 30), (34, 35, 38, 36), (36, 38, 41, 43),
1242 (39, 37, 42, 40), (33, 29, 37, 39), (38, 46, 44, 41), (40, 45, 47, 39), (31, 41, 40, 32),
1243 (33, 39, 38, 35), (48, 47, 45, 50), (46, 47, 48, 49), (45, 44, 51, 50), (45, 40, 41, 44),
1244 (39, 47, 46, 38), (49, 51, 44, 46), (50, 51, 55, 54), (49, 53, 55, 51), (49, 48, 52, 53),
1245 (48, 50, 54, 52), (52, 54, 55, 53), (34, 36, 8, 6), (36, 43, 15, 8), (2, 15, 43, 30),
1246 (6, 7, 35, 34), (7, 5, 33, 35), (29, 33, 5, 1), (1, 9, 37, 29), (9, 14, 42, 37),
1247 (28, 42, 14, 0), (32, 4, 3, 31), (30, 31, 3, 2), (32, 28, 0, 4)]
1248 return myvertex, myfaces, wf, deep, side
1251 # ----------------------------------------------
1252 # Handle model 01
1253 # ----------------------------------------------
1254 def handle_model_01():
1255 # ------------------------------------
1256 # Mesh data
1257 # ------------------------------------
1258 minx = -0.04349547624588013
1259 maxx = 0.13793155550956726
1260 miny = -0.07251644879579544
1261 maxy = 0
1262 minz = -0.04352371022105217
1263 maxz = 0.04349301755428314
1265 # Vertex
1266 myvertex = [(minx + 0.013302795588970184, maxy - 0.002780601382255554, minz + 0.010707870125770569),
1267 (minx + 0.0009496212005615234, maxy - 0.002942140679806471, minz + 0.030204588547348976),
1268 (minx, maxy - 0.003071820829063654, maxz - 0.033750676549971104),
1269 (minx + 0.010708402842283249, maxy - 0.0031348932534456253, maxz - 0.013303784653544426),
1270 (minx + 0.03020550962537527, maxy - 0.003114458406344056, maxz - 0.0009501762688159943),
1271 (minx + 0.053267089650034904, maxy - 0.003015991533175111, maxz - 0.0),
1272 (minx + 0.07371381670236588, maxy - 0.0028658765368163586, maxz - 0.010707847774028778),
1273 (minx + 0.08606699481606483, maxy - 0.0027043374720960855, maxz - 0.030204561538994312),
1274 (minx + 0.08701662346720695, maxy - 0.0025746573228389025, minz + 0.03375071194022894),
1275 (minx + 0.0763082429766655, maxy - 0.002511584199965, minz + 0.013303810730576515),
1276 (minx + 0.05681113991886377, maxy - 0.0025320190470665693, minz + 0.0009501948952674866),
1277 (minx + 0.03374955803155899, maxy - 0.0026304861530661583, minz),
1278 (minx + 0.014472760260105133, maxy - 0.019589224830269814, minz + 0.011804874986410141),
1279 (minx + 0.002567145973443985, maxy - 0.019744910299777985, minz + 0.030595174990594387),
1280 (minx + 0.001651916652917862, maxy - 0.019869891926646233, maxz - 0.034195657819509506),
1281 (minx + 0.011972300708293915, maxy - 0.019930677488446236, maxz - 0.014489583671092987),
1282 (minx + 0.03076297417283058, maxy - 0.019910985603928566, maxz - 0.0025835558772087097),
1283 (minx + 0.0529889902099967, maxy - 0.019816085696220398, maxz - 0.0016677752137184143),
1284 (minx + 0.07269490510225296, maxy - 0.01967141032218933, maxz - 0.011987630277872086),
1285 (minx + 0.0846005342900753, maxy - 0.01951572299003601, maxz - 0.030777926556766033),
1286 (minx + 0.08551576733589172, maxy - 0.019390743225812912, minz + 0.03401290811598301),
1287 (minx + 0.07519540190696716, maxy - 0.01932995393872261, minz + 0.014306826516985893),
1288 (minx + 0.056404732167720795, maxy - 0.01934964768588543, minz + 0.002400781959295273),
1289 (minx + 0.03417872078716755, maxy - 0.019444547593593597, minz + 0.001484982669353485),
1290 (minx + 0.043508310547622386, maxy - 0.0028232389595359564, maxz - 0.043508357635801076),
1291 (minx + 0.029034355655312538, maxy - 0.019612153992056847, minz + 0.027617475017905235),
1292 (minx + 0.023084014654159546, maxy - 0.01968996599316597, minz + 0.03700872650370002),
1293 (minx + 0.022626593708992004, maxy - 0.01975242979824543, maxz - 0.03889966616407037),
1294 (minx + 0.027784643694758415, maxy - 0.019782811403274536, maxz - 0.029050718992948532),
1295 (minx + 0.03717608004808426, maxy - 0.019772969186306, maxz - 0.023100173100829124),
1296 (minx + 0.048284475691616535, maxy - 0.019725536927580833, maxz - 0.022642474621534348),
1297 (minx + 0.058133346028625965, maxy - 0.019653232768177986, maxz - 0.02780025824904442),
1298 (minx + 0.06408369168639183, maxy - 0.019575420767068863, maxz - 0.0371915097348392),
1299 (minx + 0.06454112380743027, maxy - 0.019512956961989403, minz + 0.03871688432991505),
1300 (minx + 0.059383073821663857, maxy - 0.019482573494315147, minz + 0.02886793203651905),
1301 (minx + 0.04999163839966059, maxy - 0.019492419436573982, minz + 0.022917380556464195),
1302 (minx + 0.038883245550096035, maxy - 0.0195398461073637, minz + 0.022459672763943672),
1303 (minx + 0.029087782837450504, maxy - 0.03150090575218201, minz + 0.027552824467420578),
1304 (minx + 0.023137442767620087, maxy - 0.03157871589064598, minz + 0.036944076884537935),
1305 (minx + 0.022680018097162247, maxy - 0.03164118155837059, maxz - 0.03896431624889374),
1306 (minx + 0.027838071808218956, maxy - 0.031671565026044846, maxz - 0.029115368612110615),
1307 (minx + 0.0372295081615448, maxy - 0.03166172280907631, maxz - 0.023164819926023483),
1308 (minx + 0.04833790427073836, maxy - 0.03161429241299629, maxz - 0.022707123309373856),
1309 (minx + 0.05818677507340908, maxy - 0.03154198080301285, maxz - 0.027864910662174225),
1310 (minx + 0.06413711979985237, maxy - 0.031464170664548874, maxz - 0.037256159354001284),
1311 (minx + 0.06459455192089081, maxy - 0.03140170872211456, minz + 0.038652234710752964),
1312 (minx + 0.059436503797769547, maxy - 0.03137132152915001, minz + 0.028803281486034393),
1313 (minx + 0.05004506651312113, maxy - 0.031381167471408844, minz + 0.022852730005979538),
1314 (minx + 0.038936673663556576, maxy - 0.03142859786748886, minz + 0.022395022213459015),
1315 (minx + 0.029038896784186363, maxy - 0.020622700452804565, minz + 0.027611978352069855),
1316 (minx + 0.02308855764567852, maxy - 0.02070051059126854, minz + 0.0370032312348485),
1317 (minx + 0.02263113297522068, maxy - 0.020762978121638298, maxz - 0.038905161898583174),
1318 (minx + 0.02778918668627739, maxy - 0.020793357864022255, maxz - 0.029056214727461338),
1319 (minx + 0.037180622573941946, maxy - 0.02078351564705372, maxz - 0.023105667904019356),
1320 (minx + 0.04828901821747422, maxy - 0.020736083388328552, maxz - 0.02264796942472458),
1321 (minx + 0.05813788715749979, maxy - 0.020663777366280556, maxz - 0.0278057549148798),
1322 (minx + 0.0640882346779108, maxy - 0.020585965365171432, maxz - 0.03719700500369072),
1323 (minx + 0.06454566307365894, maxy - 0.020523501560091972, minz + 0.0387113899923861),
1324 (minx + 0.05938761495053768, maxy - 0.020493119955062866, minz + 0.028862436302006245),
1325 (minx + 0.04999618045985699, maxy - 0.020502964034676552, minz + 0.022911883890628815),
1326 (minx + 0.03888778714463115, maxy - 0.02055039070546627, minz + 0.02245417609810829),
1327 (minx + 0.03133368864655495, maxy - 0.031504075974226, minz + 0.02999168261885643),
1328 (minx + 0.02630186453461647, maxy - 0.03156987577676773, minz + 0.03793327230960131),
1329 (minx + 0.025915050879120827, maxy - 0.03162270039319992, maxz - 0.039689837489277124),
1330 (minx + 0.0302768861874938, maxy - 0.031648389995098114, maxz - 0.03136120364069939),
1331 (minx + 0.03821863234043121, maxy - 0.03164006769657135, maxz - 0.026329202577471733),
1332 (minx + 0.04761230247095227, maxy - 0.03159996122121811, maxz - 0.025942156091332436),
1333 (minx + 0.05594087019562721, maxy - 0.03153881058096886, maxz - 0.030303767882287502),
1334 (minx + 0.06097269989550114, maxy - 0.03147301450371742, maxz - 0.038245356641709805),
1335 (minx + 0.06135952286422253, maxy - 0.03142019361257553, minz + 0.039377753622829914),
1336 (minx + 0.05699768662452698, maxy - 0.03139450028538704, minz + 0.03104911558330059),
1337 (minx + 0.049055942334234715, maxy - 0.0314028225839138, minz + 0.02601710893213749),
1338 (minx + 0.03966227453202009, maxy - 0.031442929059267044, minz + 0.025630054995417595),
1339 (minx + 0.024973656982183456, maxy - 0.009611732326447964, minz + 0.037668352015316486),
1340 (minx + 0.030362362042069435, maxy - 0.009541265666484833, minz + 0.029163507744669914),
1341 (minx + 0.02455940842628479, maxy - 0.009668299928307533, maxz - 0.03928851708769798),
1342 (minx + 0.029230606742203236, maxy - 0.009695813991129398, maxz - 0.030369175598025322),
1343 (minx + 0.03773562144488096, maxy - 0.009686900302767754, maxz - 0.02498028054833412),
1344 (minx + 0.04779553506523371, maxy - 0.009643946774303913, maxz - 0.02456578239798546),
1345 (minx + 0.056714802980422974, maxy - 0.009578464552760124, maxz - 0.02923674415796995),
1346 (minx + 0.0621035173535347, maxy - 0.009507997892796993, maxz - 0.037741586565971375),
1347 (minx + 0.06251777522265911, maxy - 0.009451429359614849, minz + 0.03921528346836567),
1348 (minx + 0.05784657597541809, maxy - 0.009423915296792984, minz + 0.03029593825340271),
1349 (minx + 0.0493415636010468, maxy - 0.009432828985154629, minz + 0.02490703947842121),
1350 (minx + 0.039281651843339205, maxy - 0.009475781582295895, minz + 0.02449253387749195),
1351 (minx + 0.03144440520554781, maxy - 0.02431209199130535, minz + 0.030186276882886887),
1352 (minx + 0.02647113800048828, maxy - 0.0243771281093359, minz + 0.038035438396036625),
1353 (minx + 0.026088828220963478, maxy - 0.024429334327578545, maxz - 0.03969699679873884),
1354 (minx + 0.030399901792407036, maxy - 0.02445472590625286, maxz - 0.031465294770896435),
1355 (minx + 0.0382492202334106, maxy - 0.024446498602628708, maxz - 0.026491858065128326),
1356 (minx + 0.04753356333822012, maxy - 0.024406857788562775, maxz - 0.02610931731760502),
1357 (minx + 0.05576520040631294, maxy - 0.024346424266695976, maxz - 0.03042016737163067),
1358 (minx + 0.060738470405340195, maxy - 0.024281391873955727, maxz - 0.03826932841911912),
1359 (minx + 0.06112079136073589, maxy - 0.024229183793067932, minz + 0.03946310793980956),
1360 (minx + 0.056809717789292336, maxy - 0.024203790351748466, minz + 0.03123140148818493),
1361 (minx + 0.04896040167659521, maxy - 0.02421201765537262, minz + 0.026257958263158798),
1362 (minx + 0.03967605973593891, maxy - 0.024251656606793404, minz + 0.025875410065054893),
1363 (minx + 0.03160235192626715, miny + 0.013056624680757523, minz + 0.02999513689428568),
1364 (minx + 0.02662908472120762, miny + 0.012991588562726974, minz + 0.03784429794177413),
1365 (minx + 0.026246773079037666, miny + 0.012939386069774628, maxz - 0.039888136787340045),
1366 (minx + 0.030557849444448948, miny + 0.012913990765810013, maxz - 0.03165643382817507),
1367 (minx + 0.03840716602280736, miny + 0.012922219932079315, maxz - 0.02668299712240696),
1368 (minx + 0.04769151005893946, miny + 0.012961860746145248, maxz - 0.02630045637488365),
1369 (minx + 0.05592314712703228, miny + 0.013022292405366898, maxz - 0.030611306428909302),
1370 (minx + 0.06089641526341438, miny + 0.013087328523397446, maxz - 0.038460468873381615),
1371 (minx + 0.06127873808145523, miny + 0.013139534741640091, minz + 0.03927196795120835),
1372 (minx + 0.05696766451001167, miny + 0.013164930045604706, minz + 0.031040262430906296),
1373 (minx + 0.04911834839731455, miny + 0.013156700879335403, minz + 0.026066819205880165),
1374 (minx + 0.0398340062238276, miny + 0.013117063790559769, minz + 0.02568427100777626),
1375 (minx + 0.03166038449853659, miny + 0.00014262646436691284, minz + 0.029924907721579075),
1376 (minx + 0.026687119156122208, miny + 7.76052474975586e-05, minz + 0.0377740697003901),
1377 (minx + 0.026304809376597404, miny + 2.5391578674316406e-05, maxz - 0.039958365727216005),
1378 (minx + 0.030615881085395813, miny, maxz - 0.031726663932204247),
1379 (minx + 0.0384651985950768, miny + 8.217990398406982e-06, maxz - 0.026753226295113564),
1380 (minx + 0.0477495426312089, miny + 4.7869980335235596e-05, maxz - 0.026370685547590256),
1381 (minx + 0.05598117969930172, miny + 0.00010830163955688477, maxz - 0.03068153653293848),
1382 (minx + 0.06095444969832897, miny + 0.00017333775758743286, maxz - 0.038530697114765644),
1383 (minx + 0.06133677065372467, miny + 0.0002255365252494812, minz + 0.039201739244163036),
1384 (minx + 0.05702569708228111, miny + 0.00025093555450439453, minz + 0.030970032326877117),
1385 (minx + 0.04917638096958399, miny + 0.00024271011352539062, minz + 0.02599659003317356),
1386 (minx + 0.039892038563266397, miny + 0.00020306557416915894, minz + 0.025614041835069656),
1387 (maxx - 0.012196376919746399, miny + 0.0031514912843704224, minz + 0.03689247788861394),
1388 (maxx - 0.011049121618270874, miny + 0.0037728995084762573, minz + 0.04000293998979032),
1389 (maxx - 0.010531991720199585, miny + 0.004111833870410919, maxz - 0.041690999176353216),
1390 (maxx - 0.010783538222312927, miny + 0.0040774866938591, maxz - 0.035582118667662144),
1391 (maxx - 0.011736378073692322, miny + 0.003679051995277405, maxz - 0.030324016697704792),
1392 (maxx - 0.013135172426700592, miny + 0.003023289144039154, maxz - 0.027325598523020744),
1393 (maxx - 0.013745412230491638, miny + 0.010863490402698517, minz + 0.03701266320422292),
1394 (maxx - 0.012598156929016113, miny + 0.011484891176223755, minz + 0.0401231253053993),
1395 (maxx - 0.012081027030944824, miny + 0.011823825538158417, maxz - 0.041570812463760376),
1396 (maxx - 0.01233258843421936, miny + 0.011789467185735703, maxz - 0.035461933352053165),
1397 (maxx - 0.013285413384437561, miny + 0.011391039937734604, maxz - 0.030203829519450665),
1398 (maxx - 0.014684207737445831, miny + 0.010735277086496353, maxz - 0.027205411344766617),
1399 (maxx - 0.000991135835647583, maxy - 0.01982143148779869, minz + 0.03712343191727996),
1400 (maxx - 0.0034268200397491455, maxy - 0.018987802788615227, minz + 0.03702782467007637),
1401 (maxx - 0.00027070939540863037, maxy - 0.018310068175196648, minz + 0.040221322793513536),
1402 (maxx, maxy - 0.017457325011491776, maxz - 0.04147987486794591),
1403 (maxx - 0.00025157630443573, maxy - 0.01749167963862419, maxz - 0.03537099435925484),
1404 (maxx - 0.000957980751991272, maxy - 0.018403928726911545, maxz - 0.030105633661150932),
1405 (maxx - 0.001929953694343567, maxy - 0.019949644804000854, maxz - 0.02709464356303215),
1406 (maxx - 0.0043656229972839355, maxy - 0.01911601796746254, maxz - 0.027190251275897026),
1407 (maxx - 0.002706393599510193, maxy - 0.01747644878923893, minz + 0.04012571508064866),
1408 (maxx - 0.0024356693029403687, maxy - 0.01662370003759861, maxz - 0.04157548164948821),
1409 (maxx - 0.0026872456073760986, maxy - 0.016658056527376175, maxz - 0.03546660114079714),
1410 (maxx - 0.0033936500549316406, maxy - 0.017570307478308678, maxz - 0.030201241374015808),
1411 (minx + 0.04382078559137881, miny + 0.00012543797492980957, minz + 0.04313003408606164)]
1413 # Faces
1414 myfaces = [(24, 0, 1), (24, 1, 2), (24, 2, 3), (24, 3, 4), (24, 4, 5),
1415 (24, 5, 6), (24, 6, 7), (24, 7, 8), (24, 8, 9), (24, 9, 10),
1416 (24, 10, 11), (11, 0, 24), (0, 12, 13, 1), (1, 13, 14, 2), (2, 14, 15, 3),
1417 (3, 15, 16, 4), (4, 16, 17, 5), (5, 17, 18, 6), (6, 18, 19, 7), (7, 19, 20, 8),
1418 (8, 20, 21, 9), (9, 21, 22, 10), (10, 22, 23, 11), (12, 0, 11, 23), (13, 12, 25, 26),
1419 (14, 13, 26, 27), (15, 14, 27, 28), (16, 15, 28, 29), (17, 16, 29, 30), (18, 17, 30, 31),
1420 (19, 18, 31, 32), (20, 19, 32, 33), (21, 20, 33, 34), (22, 21, 34, 35), (23, 22, 35, 36),
1421 (12, 23, 36, 25), (25, 49, 50, 26), (49, 37, 38, 50), (26, 50, 51, 27), (50, 38, 39, 51),
1422 (27, 51, 52, 28), (51, 39, 40, 52), (28, 52, 53, 29), (52, 40, 41, 53), (29, 53, 54, 30),
1423 (53, 41, 42, 54), (30, 54, 55, 31), (54, 42, 43, 55), (31, 55, 56, 32), (55, 43, 44, 56),
1424 (32, 56, 57, 33), (56, 44, 45, 57), (33, 57, 58, 34), (57, 45, 46, 58), (34, 58, 59, 35),
1425 (58, 46, 47, 59), (35, 59, 60, 36), (59, 47, 48, 60), (36, 60, 49, 25), (60, 48, 37, 49),
1426 (38, 37, 61, 62), (39, 38, 62, 63), (40, 39, 63, 64), (41, 40, 64, 65), (42, 41, 65, 66),
1427 (43, 42, 66, 67), (44, 43, 67, 68), (45, 44, 68, 69), (46, 45, 69, 70), (47, 46, 70, 71),
1428 (48, 47, 71, 72), (37, 48, 72, 61), (62, 61, 74, 73), (63, 62, 73, 75), (64, 63, 75, 76),
1429 (65, 64, 76, 77), (66, 65, 77, 78), (67, 66, 78, 79), (68, 67, 79, 80), (69, 68, 80, 81),
1430 (70, 69, 81, 82), (71, 70, 82, 83), (72, 71, 83, 84), (61, 72, 84, 74), (86, 85, 97, 98),
1431 (87, 86, 98, 99), (88, 87, 99, 100), (89, 88, 100, 101), (90, 89, 101, 102), (91, 90, 102, 103),
1432 (92, 91, 103, 104), (93, 92, 104, 105), (94, 93, 105, 106), (95, 94, 106, 107), (96, 95, 107, 108),
1433 (97, 85, 96, 108), (98, 97, 109, 110), (99, 98, 110, 111), (100, 99, 111, 112), (101, 100, 112, 113),
1434 (102, 101, 113, 114), (108, 107, 119, 120), (108, 120, 109, 97), (119, 107, 127, 121),
1435 (118, 119, 121, 122),
1436 (117, 118, 122, 123), (116, 117, 123, 124), (115, 116, 124, 125), (114, 115, 125, 126),
1437 (102, 114, 126, 132),
1438 (107, 106, 128, 127), (106, 105, 129, 128), (105, 104, 130, 129), (104, 103, 131, 130),
1439 (103, 102, 132, 131),
1440 (121, 127, 134, 133), (122, 121, 133, 135), (123, 122, 135, 136), (124, 123, 136, 137),
1441 (125, 124, 137, 138),
1442 (126, 125, 138, 139), (132, 126, 139, 140), (127, 128, 141, 134), (128, 129, 142, 141),
1443 (129, 130, 143, 142),
1444 (130, 131, 144, 143), (131, 132, 140, 144), (138, 144, 140, 139), (137, 143, 144, 138),
1445 (136, 142, 143, 137),
1446 (135, 141, 142, 136), (133, 134, 141, 135), (110, 109, 145), (111, 110, 145), (112, 111, 145),
1447 (113, 112, 145), (114, 113, 145), (115, 114, 145), (116, 115, 145), (117, 116, 145),
1448 (118, 117, 145), (119, 118, 145), (120, 119, 145), (109, 120, 145)]
1450 return myvertex, myfaces
1453 # ----------------------------------------------
1454 # Handle model 02
1455 # ----------------------------------------------
1456 def handle_model_02():
1457 # ------------------------------------
1458 # Mesh data
1459 # ------------------------------------
1460 minx = -0.04349547624588013
1461 maxx = 0.04352114722132683
1462 miny = -0.08959200233221054
1463 maxy = 0
1464 minz = -0.04352371022105217
1465 maxz = 0.04349301755428314
1467 # Vertex
1468 myvertex = [(minx + 0.013302795588970184, maxy - 0.002780601382255554, minz + 0.010707870125770569),
1469 (minx + 0.0009496212005615234, maxy - 0.002942140679806471, minz + 0.030204588547348976),
1470 (minx, maxy - 0.003071820829063654, maxz - 0.033750676549971104),
1471 (minx + 0.010708402842283249, maxy - 0.0031348932534456253, maxz - 0.013303784653544426),
1472 (minx + 0.03020550962537527, maxy - 0.003114458406344056, maxz - 0.0009501762688159943),
1473 (maxx - 0.03374953381717205, maxy - 0.003015991533175111, maxz),
1474 (maxx - 0.01330280676484108, maxy - 0.0028658765368163586, maxz - 0.010707847774028778),
1475 (maxx - 0.0009496286511421204, maxy - 0.0027043374720960855, maxz - 0.030204561538994312),
1476 (maxx, maxy - 0.0025746573228389025, minz + 0.03375071194022894),
1477 (maxx - 0.010708380490541458, maxy - 0.002511584199965, minz + 0.013303810730576515),
1478 (maxx - 0.03020548354834318, maxy - 0.0025320190470665693, minz + 0.0009501948952674866),
1479 (minx + 0.03374955803155899, maxy - 0.0026304861530661583, minz),
1480 (minx + 0.014472760260105133, maxy - 0.019589224830269814, minz + 0.011804874986410141),
1481 (minx + 0.002567145973443985, maxy - 0.019744910299777985, minz + 0.030595174990594387),
1482 (minx + 0.001651916652917862, maxy - 0.019869891926646233, maxz - 0.034195657819509506),
1483 (minx + 0.011972300708293915, maxy - 0.019930677488446236, maxz - 0.014489583671092987),
1484 (minx + 0.03076297417283058, maxy - 0.019910985603928566, maxz - 0.0025835558772087097),
1485 (maxx - 0.034027633257210255, maxy - 0.019816085696220398, maxz - 0.0016677752137184143),
1486 (maxx - 0.014321718364953995, maxy - 0.01967141032218933, maxz - 0.011987630277872086),
1487 (maxx - 0.002416089177131653, maxy - 0.01951572299003601, maxz - 0.030777926556766033),
1488 (maxx - 0.0015008561313152313, maxy - 0.019390743225812912, minz + 0.03401290811598301),
1489 (maxx - 0.011821221560239792, maxy - 0.01932995393872261, minz + 0.014306826516985893),
1490 (maxx - 0.03061189129948616, maxy - 0.01934964768588543, minz + 0.002400781959295273),
1491 (minx + 0.03417872078716755, maxy - 0.019444547593593597, minz + 0.001484982669353485),
1492 (minx + 0.043508310547622386, maxy - 0.005668943747878075, maxz - 0.043508357635801076),
1493 (minx + 0.029034355655312538, maxy - 0.019612153992056847, minz + 0.027617475017905235),
1494 (minx + 0.023084014654159546, maxy - 0.01968996599316597, minz + 0.03700872650370002),
1495 (minx + 0.022626593708992004, maxy - 0.01975242979824543, maxz - 0.03889966616407037),
1496 (minx + 0.027784643694758415, maxy - 0.019782811403274536, maxz - 0.029050718992948532),
1497 (minx + 0.03717608004808426, maxy - 0.019772969186306, maxz - 0.023100173100829124),
1498 (maxx - 0.03873214777559042, maxy - 0.019725536927580833, maxz - 0.022642474621534348),
1499 (maxx - 0.02888327743858099, maxy - 0.019653232768177986, maxz - 0.02780025824904442),
1500 (maxx - 0.022932931780815125, maxy - 0.019575420767068863, maxz - 0.0371915097348392),
1501 (maxx - 0.022475499659776688, maxy - 0.019512956961989403, minz + 0.03871688432991505),
1502 (maxx - 0.0276335496455431, maxy - 0.019482573494315147, minz + 0.02886793203651905),
1503 (maxx - 0.03702498506754637, maxy - 0.019492419436573982, minz + 0.022917380556464195),
1504 (minx + 0.038883245550096035, maxy - 0.0195398461073637, minz + 0.022459672763943672),
1505 (minx + 0.029087782837450504, maxy - 0.03150090575218201, minz + 0.027552824467420578),
1506 (minx + 0.023137442767620087, maxy - 0.03157871589064598, minz + 0.036944076884537935),
1507 (minx + 0.022680018097162247, maxy - 0.03164118155837059, maxz - 0.03896431624889374),
1508 (minx + 0.027838071808218956, maxy - 0.031671565026044846, maxz - 0.029115368612110615),
1509 (minx + 0.0372295081615448, maxy - 0.03166172280907631, maxz - 0.023164819926023483),
1510 (maxx - 0.03867871919646859, maxy - 0.03161429241299629, maxz - 0.022707123309373856),
1511 (maxx - 0.028829848393797874, maxy - 0.03154198080301285, maxz - 0.027864910662174225),
1512 (maxx - 0.022879503667354584, maxy - 0.031464170664548874, maxz - 0.037256159354001284),
1513 (maxx - 0.022422071546316147, maxy - 0.03140170872211456, minz + 0.038652234710752964),
1514 (maxx - 0.02758011966943741, maxy - 0.03137132152915001, minz + 0.028803281486034393),
1515 (maxx - 0.03697155695408583, maxy - 0.031381167471408844, minz + 0.022852730005979538),
1516 (minx + 0.038936673663556576, maxy - 0.03142859786748886, minz + 0.022395022213459015),
1517 (minx + 0.029038896784186363, maxy - 0.020622700452804565, minz + 0.027611978352069855),
1518 (minx + 0.02308855764567852, maxy - 0.02070051059126854, minz + 0.0370032312348485),
1519 (minx + 0.02263113297522068, maxy - 0.020762978121638298, maxz - 0.038905161898583174),
1520 (minx + 0.02778918668627739, maxy - 0.020793357864022255, maxz - 0.029056214727461338),
1521 (minx + 0.037180622573941946, maxy - 0.02078351564705372, maxz - 0.023105667904019356),
1522 (maxx - 0.03872760524973273, maxy - 0.020736083388328552, maxz - 0.02264796942472458),
1523 (maxx - 0.028878736309707165, maxy - 0.020663777366280556, maxz - 0.0278057549148798),
1524 (maxx - 0.02292838878929615, maxy - 0.020585965365171432, maxz - 0.03719700500369072),
1525 (maxx - 0.022470960393548012, maxy - 0.020523501560091972, minz + 0.0387113899923861),
1526 (maxx - 0.027629008516669273, maxy - 0.020493119955062866, minz + 0.028862436302006245),
1527 (maxx - 0.03702044300734997, maxy - 0.020502964034676552, minz + 0.022911883890628815),
1528 (minx + 0.03888778714463115, maxy - 0.02055039070546627, minz + 0.02245417609810829),
1529 (minx + 0.03503026906400919, maxy - 0.0326739065349102, minz + 0.03399384953081608),
1530 (minx + 0.03150810860097408, maxy - 0.032719966024160385, minz + 0.03955277753993869),
1531 (minx + 0.03123734798282385, maxy - 0.03275693953037262, maxz - 0.04088863683864474),
1532 (minx + 0.034290531650185585, maxy - 0.032774921506643295, maxz - 0.035058788023889065),
1533 (minx + 0.039849569322541356, maxy - 0.0327690951526165, maxz - 0.03153650462627411),
1534 (maxx - 0.04059170465916395, maxy - 0.03274102136492729, maxz - 0.03126558102667332),
1535 (maxx - 0.03476190101355314, maxy - 0.032698217779397964, maxz - 0.03431860730051994),
1536 (maxx - 0.031239738687872887, maxy - 0.03265216201543808, maxz - 0.039877534145489335),
1537 (maxx - 0.03096897155046463, maxy - 0.032615188509225845, minz + 0.040563880698755383),
1538 (maxx - 0.03402215428650379, maxy - 0.03259720280766487, minz + 0.03473402839154005),
1539 (maxx - 0.03958118986338377, maxy - 0.032603029161691666, minz + 0.03121174033731222),
1540 (minx + 0.04086008481681347, maxy - 0.032631102949380875, minz + 0.030940811149775982),
1541 (minx + 0.026877090334892273, maxy - 0.04475956782698631, minz + 0.02504805289208889),
1542 (minx + 0.020004114136099815, miny + 0.044742558151483536, minz + 0.03589546587318182),
1543 (minx + 0.019475765526294708, miny + 0.044670410454273224, maxz - 0.03829052206128836),
1544 (minx + 0.025433603674173355, miny + 0.04463531821966171, maxz - 0.0269144456833601),
1545 (minx + 0.03628123179078102, miny + 0.04464668035507202, maxz - 0.020041238516569138),
1546 (maxx - 0.0379045819863677, miny + 0.0447014644742012, maxz - 0.01951257325708866),
1547 (maxx - 0.02652859501540661, miny + 0.044784992933273315, maxz - 0.02547009475529194),
1548 (maxx - 0.01965562254190445, maxy - 0.04471714794635773, maxz - 0.036317508202046156),
1549 (maxx - 0.019127257168293, maxy - 0.04464499279856682, minz + 0.03786848206073046),
1550 (maxx - 0.02508508786559105, maxy - 0.04460989683866501, minz + 0.026492400094866753),
1551 (maxx - 0.03593271458521485, maxy - 0.044621266424655914, minz + 0.019619181752204895),
1552 (minx + 0.03825310105457902, maxy - 0.044676050543785095, minz + 0.01909050904214382),
1553 (minx + 0.01721818558871746, miny + 0.00031135231256484985, minz + 0.01437518559396267),
1554 (minx + 0.006362196058034897, miny + 0.00016936659812927246, minz + 0.03150887507945299),
1555 (minx + 0.005527656525373459, miny + 5.542486906051636e-05, maxz - 0.03524145483970642),
1556 (minx + 0.014938175678253174, miny, maxz - 0.017272725701332092),
1557 (minx + 0.032072206027805805, miny + 1.7955899238586426e-05, maxz - 0.006416358053684235),
1558 (maxx - 0.03467791061848402, miny + 0.00010447949171066284, maxz - 0.0055813267827034),
1559 (maxx - 0.016709323972463608, miny + 0.00023641437292099, maxz - 0.01499134860932827),
1560 (maxx - 0.005853328853845596, miny + 0.00037835538387298584, maxz - 0.032125042751431465),
1561 (maxx - 0.0050187669694423676, miny + 0.0004923418164253235, minz + 0.03462529182434082),
1562 (maxx - 0.014429278671741486, miny + 0.0005477666854858398, minz + 0.016656557098031044),
1563 (maxx - 0.03156330715864897, miny + 0.0005298107862472534, minz + 0.005800176411867142),
1564 (minx + 0.03518681041896343, miny + 0.000443287193775177, minz + 0.0049651265144348145),
1565 (minx + 0.02942624967545271, miny + 0.0012636110186576843, minz + 0.027632080018520355),
1566 (minx + 0.023563016206026077, miny + 0.0011869296431541443, minz + 0.03688584640622139),
1567 (minx + 0.023112289607524872, miny + 0.0011253878474235535, maxz - 0.039185164496302605),
1568 (minx + 0.028194833546876907, miny + 0.0010954588651657104, maxz - 0.029480399563908577),
1569 (minx + 0.037448784336447716, miny + 0.0011051595211029053, maxz - 0.023616963997483253),
1570 (maxx - 0.038622063118964434, miny + 0.0011518821120262146, maxz - 0.023165971040725708),
1571 (maxx - 0.028917375952005386, miny + 0.001223146915435791, maxz - 0.02824824769049883),
1572 (maxx - 0.02305414155125618, miny + 0.0012998059391975403, maxz - 0.0375020164065063),
1573 (maxx - 0.02260340191423893, miny + 0.0013613700866699219, minz + 0.03856899822130799),
1574 (maxx - 0.027685942128300667, miny + 0.001391299068927765, minz + 0.028864230029284954),
1575 (maxx - 0.0369398919865489, miny + 0.001381605863571167, minz + 0.023000789806246758),
1576 (minx + 0.03913095686584711, miny + 0.0013348758220672607, minz + 0.022549785673618317),
1577 (minx + 0.03738117218017578, miny + 0.0037613436579704285, minz + 0.03627043403685093),
1578 (minx + 0.03477128129452467, miny + 0.0037272050976753235, minz + 0.04038954642601311),
1579 (minx + 0.034570650197565556, miny + 0.0036998093128204346, maxz - 0.041754934238269925),
1580 (minx + 0.03683303436264396, miny + 0.0036864876747131348, maxz - 0.03743506921455264),
1581 (minx + 0.040952228708192706, miny + 0.0036908015608787537, maxz - 0.03482509031891823),
1582 (maxx - 0.0411921211052686, miny + 0.003711603581905365, maxz - 0.03462434001266956),
1583 (maxx - 0.03687229100614786, miny + 0.0037433207035064697, maxz - 0.03688660357147455),
1584 (maxx - 0.034262401051819324, miny + 0.003777444362640381, maxz - 0.04100571759045124),
1585 (maxx - 0.03406176343560219, miny + 0.0038048475980758667, minz + 0.0411387647036463),
1586 (maxx - 0.036324144806712866, miny + 0.0038181766867637634, minz + 0.03681889921426773),
1587 (maxx - 0.04044333938509226, miny + 0.0038138628005981445, minz + 0.03420891519635916),
1588 (minx + 0.04170101135969162, miny + 0.003793060779571533, minz + 0.034008161164820194),
1589 (maxx - 0.043253868410829455, miny + 0.00480072945356369, minz + 0.04320027763606049),
1590 (minx + 0.03971285093575716, maxy - 0.041327137500047684, maxz - 0.031046375632286072),
1591 (maxx - 0.03359287604689598, maxy - 0.04114784672856331, minz + 0.03433086443692446),
1592 (minx + 0.03072980046272278, maxy - 0.04131445661187172, maxz - 0.040801193099468946),
1593 (minx + 0.031012218445539474, maxy - 0.04127589240670204, minz + 0.03935709968209267),
1594 (minx + 0.04076687735505402, maxy - 0.04118320718407631, minz + 0.030374319292604923),
1595 (minx + 0.034451283514499664, maxy - 0.03338594362139702, minz + 0.033365121111273766),
1596 (minx + 0.030692334286868572, maxy - 0.03343509882688522, minz + 0.039297766517847776),
1597 (minx + 0.03040337096899748, maxy - 0.03347455710172653, maxz - 0.040701600490137935),
1598 (minx + 0.03366181440651417, maxy - 0.03349374979734421, maxz - 0.03447982110083103),
1599 (minx + 0.03959457715973258, maxy - 0.033487528562545776, maxz - 0.03072074055671692),
1600 (maxx - 0.040404647355899215, maxy - 0.033457569777965546, maxz - 0.030431604012846947),
1601 (maxx - 0.03418291546404362, maxy - 0.03341188654303551, maxz - 0.03368987888097763),
1602 (maxx - 0.030423964373767376, maxy - 0.0333627350628376, maxz - 0.03962252289056778),
1603 (maxx - 0.030134993605315685, maxy - 0.03332327678799629, minz + 0.04037684458307922),
1604 (maxx - 0.033393437042832375, maxy - 0.03330408036708832, minz + 0.03415506146848202),
1605 (maxx - 0.03932619746774435, maxy - 0.03331030160188675, minz + 0.030395975336432457),
1606 (minx + 0.040673027746379375, maxy - 0.03334026038646698, minz + 0.030106833204627037),
1607 (minx + 0.030282274819910526, maxy - 0.005427400581538677, maxz - 0.0011750981211662292),
1608 (minx + 0.013463903218507767, maxy - 0.005095209460705519, minz + 0.0108589306473732),
1609 (minx + 0.010882444679737091, maxy - 0.005447734147310257, maxz - 0.013467073440551758),
1610 (minx + 0.0011723600327968597, maxy - 0.005255943164229393, minz + 0.030258373357355595),
1611 (minx + 0.0002274736762046814, maxy - 0.005384976044297218, maxz - 0.033811951987445354),
1612 (maxx - 0.0134431142359972, maxy - 0.005180059932172298, maxz - 0.010884080082178116),
1613 (maxx - 0.033787828870117664, maxy - 0.005329424981027842, maxz - 0.00022966042160987854),
1614 (maxx - 0.0302614476531744, maxy - 0.004847868345677853, minz + 0.0011499449610710144),
1615 (maxx - 0.00020667165517807007, maxy - 0.004890293348580599, minz + 0.03378681745380163),
1616 (maxx - 0.0011515654623508453, maxy - 0.0050193266943097115, maxz - 0.03028351627290249),
1617 (minx + 0.033808655105531216, maxy - 0.004945843946188688, minz + 0.0002044886350631714),
1618 (maxx - 0.010861624032258987, maxy - 0.004827534779906273, minz + 0.013441929593682289),
1619 (minx + 0.03468604106456041, maxy - 0.04122784733772278, minz + 0.033558815717697144),
1620 (minx + 0.033914451487362385, maxy - 0.041333213448524475, maxz - 0.03472032118588686),
1621 (maxx - 0.04044530005194247, maxy - 0.04129785671830177, maxz - 0.03076378908008337),
1622 (maxx - 0.034364476799964905, maxy - 0.04125320911407471, maxz - 0.03394827153533697),
1623 (maxx - 0.03069065511226654, maxy - 0.04120517522096634, maxz - 0.03974655526690185),
1624 (maxx - 0.030408228747546673, maxy - 0.04116660729050636, minz + 0.04041173937730491),
1625 (maxx - 0.03939127502962947, maxy - 0.0411539226770401, minz + 0.030656912364065647),
1626 (minx + 0.03147818427532911, maxy - 0.033236272633075714, minz + 0.03954096930101514),
1627 (minx + 0.031206720508635044, maxy - 0.03327333927154541, maxz - 0.04088335996493697),
1628 (minx + 0.034267837181687355, maxy - 0.033291369676589966, maxz - 0.03503836318850517),
1629 (minx + 0.03984131896868348, maxy - 0.03328552842140198, maxz - 0.03150692768394947),
1630 (maxx - 0.040582869900390506, maxy - 0.0332573801279068, maxz - 0.03123530000448227),
1631 (maxx - 0.03473791852593422, maxy - 0.033214468508958817, maxz - 0.03429625928401947),
1632 (maxx - 0.031206604093313217, maxy - 0.03316829353570938, maxz - 0.03986963024362922),
1633 (maxx - 0.030935133807361126, maxy - 0.03313122317194939, minz + 0.040554699720814824),
1634 (maxx - 0.03399624954909086, maxy - 0.03311318904161453, minz + 0.03470969945192337),
1635 (maxx - 0.03956972947344184, maxy - 0.03311903029680252, minz + 0.031178259290754795),
1636 (minx + 0.04085446032695472, maxy - 0.0331471785902977, minz + 0.030906626023352146),
1637 (minx + 0.035009496845304966, maxy - 0.03319009393453598, minz + 0.03396759741008282)]
1639 # Faces
1640 myfaces = [(24, 0, 1), (24, 1, 2), (24, 2, 3), (24, 3, 4), (24, 4, 5),
1641 (24, 5, 6), (24, 6, 7), (24, 7, 8), (24, 8, 9), (24, 9, 10),
1642 (24, 10, 11), (11, 0, 24), (140, 12, 13, 142), (142, 13, 14, 143), (143, 14, 15, 141),
1643 (141, 15, 16, 139), (139, 16, 17, 145), (145, 17, 18, 144), (144, 18, 19, 148), (148, 19, 20, 147),
1644 (147, 20, 21, 150), (150, 21, 22, 146), (146, 22, 23, 149), (140, 0, 11, 149), (13, 12, 25, 26),
1645 (14, 13, 26, 27), (15, 14, 27, 28), (16, 15, 28, 29), (17, 16, 29, 30), (18, 17, 30, 31),
1646 (19, 18, 31, 32), (20, 19, 32, 33), (21, 20, 33, 34), (22, 21, 34, 35), (23, 22, 35, 36),
1647 (12, 23, 36, 25), (25, 49, 50, 26), (49, 37, 38, 50), (26, 50, 51, 27), (50, 38, 39, 51),
1648 (27, 51, 52, 28), (51, 39, 40, 52), (28, 52, 53, 29), (52, 40, 41, 53), (29, 53, 54, 30),
1649 (53, 41, 42, 54), (30, 54, 55, 31), (54, 42, 43, 55), (31, 55, 56, 32), (55, 43, 44, 56),
1650 (32, 56, 57, 33), (56, 44, 45, 57), (33, 57, 58, 34), (57, 45, 46, 58), (34, 58, 59, 35),
1651 (58, 46, 47, 59), (35, 59, 60, 36), (59, 47, 48, 60), (36, 60, 49, 25), (60, 48, 37, 49),
1652 (38, 37, 61, 62), (39, 38, 62, 63), (40, 39, 63, 64), (41, 40, 64, 65), (42, 41, 65, 66),
1653 (43, 42, 66, 67), (44, 43, 67, 68), (45, 44, 68, 69), (46, 45, 69, 70), (47, 46, 70, 71),
1654 (48, 47, 71, 72), (37, 48, 72, 61), (124, 125, 74, 75), (74, 73, 85, 86), (79, 78, 90, 91),
1655 (80, 79, 91, 92), (77, 76, 88, 89), (82, 81, 93, 94), (76, 75, 87, 88), (81, 80, 92, 93),
1656 (73, 84, 96, 85), (84, 83, 95, 96), (83, 82, 94, 95), (78, 77, 89, 90), (75, 74, 86, 87),
1657 (90, 89, 101, 102), (86, 85, 97, 98), (93, 92, 104, 105), (96, 95, 107, 108), (85, 96, 108, 97),
1658 (89, 88, 100, 101), (91, 90, 102, 103), (88, 87, 99, 100), (92, 91, 103, 104), (95, 94, 106, 107),
1659 (94, 93, 105, 106), (87, 86, 98, 99), (105, 104, 116, 117), (108, 107, 119, 120), (97, 108, 120, 109),
1660 (101, 100, 112, 113), (103, 102, 114, 115), (100, 99, 111, 112), (104, 103, 115, 116),
1661 (107, 106, 118, 119),
1662 (106, 105, 117, 118), (99, 98, 110, 111), (102, 101, 113, 114), (98, 97, 109, 110), (120, 119, 121),
1663 (109, 120, 121), (113, 112, 121), (115, 114, 121), (112, 111, 121), (116, 115, 121),
1664 (119, 118, 121), (118, 117, 121), (111, 110, 121), (114, 113, 121), (110, 109, 121),
1665 (117, 116, 121), (169, 158, 62, 61), (158, 159, 63, 62), (159, 160, 64, 63), (160, 161, 65, 64),
1666 (161, 162, 66, 65), (162, 163, 67, 66), (163, 164, 68, 67), (164, 165, 69, 68), (165, 166, 70, 69),
1667 (166, 167, 71, 70), (167, 168, 72, 71), (168, 169, 61, 72), (72, 138, 127, 61), (63, 129, 130, 64),
1668 (67, 133, 134, 68), (64, 130, 131, 65), (61, 127, 128, 62), (69, 135, 136, 70), (66, 132, 133, 67),
1669 (65, 131, 132, 66), (71, 137, 138, 72), (70, 136, 137, 71), (62, 128, 129, 63), (68, 134, 135, 69),
1670 (0, 140, 142, 1), (1, 142, 143, 2), (2, 143, 141, 3), (3, 141, 139, 4), (4, 139, 145, 5),
1671 (5, 145, 144, 6), (6, 144, 148, 7), (7, 148, 147, 8), (8, 147, 150, 9), (9, 150, 146, 10),
1672 (10, 146, 149, 11), (12, 140, 149, 23), (153, 154, 163, 162), (154, 155, 164, 163), (155, 156, 165, 164),
1673 (125, 151, 73, 74), (152, 124, 75, 76), (122, 152, 76, 77), (153, 122, 77, 78), (154, 153, 78, 79),
1674 (155, 154, 79, 80), (156, 155, 80, 81), (123, 156, 81, 82), (157, 123, 82, 83), (126, 157, 83, 84),
1675 (73, 151, 126, 84), (151, 125, 158, 169), (125, 124, 159, 158), (124, 152, 160, 159),
1676 (152, 122, 161, 160),
1677 (122, 153, 162, 161), (156, 123, 166, 165), (123, 157, 167, 166), (157, 126, 168, 167),
1678 (126, 151, 169, 168)]
1680 return myvertex, myfaces
1683 # ----------------------------------------------
1684 # Handle model 03
1685 # ----------------------------------------------
1686 def handle_model_03():
1687 # ------------------------------------
1688 # Mesh data
1689 # ------------------------------------
1690 minx = -0.04349547624588013
1691 maxx = 0.04352114722132683
1692 miny = -0.09871400892734528
1693 maxy = 0
1694 minz = -0.04352371022105217
1695 maxz = 0.04349301755428314
1697 # Vertex
1698 myvertex = [(minx + 0.013302795588970184, maxy - 0.002780601382255554, minz + 0.010707870125770569),
1699 (minx + 0.0009496212005615234, maxy - 0.002942140679806471, minz + 0.030204588547348976),
1700 (minx, maxy - 0.003071820829063654, maxz - 0.033750676549971104),
1701 (minx + 0.010708402842283249, maxy - 0.0031348932534456253, maxz - 0.013303784653544426),
1702 (minx + 0.03020550962537527, maxy - 0.003114458406344056, maxz - 0.0009501762688159943),
1703 (maxx - 0.03374953381717205, maxy - 0.003015991533175111, maxz),
1704 (maxx - 0.01330280676484108, maxy - 0.0028658765368163586, maxz - 0.010707847774028778),
1705 (maxx - 0.0009496286511421204, maxy - 0.0027043374720960855, maxz - 0.030204561538994312),
1706 (maxx, maxy - 0.0025746573228389025, minz + 0.03375071194022894),
1707 (maxx - 0.010708380490541458, maxy - 0.002511584199965, minz + 0.013303810730576515),
1708 (maxx - 0.03020548354834318, maxy - 0.0025320190470665693, minz + 0.0009501948952674866),
1709 (minx + 0.03374955803155899, maxy - 0.0026304861530661583, minz),
1710 (minx + 0.014472760260105133, maxy - 0.019589224830269814, minz + 0.011804874986410141),
1711 (minx + 0.002567145973443985, maxy - 0.019744910299777985, minz + 0.030595174990594387),
1712 (minx + 0.001651916652917862, maxy - 0.019869891926646233, maxz - 0.034195657819509506),
1713 (minx + 0.011972300708293915, maxy - 0.019930677488446236, maxz - 0.014489583671092987),
1714 (minx + 0.03076297417283058, maxy - 0.019910985603928566, maxz - 0.0025835558772087097),
1715 (maxx - 0.034027633257210255, maxy - 0.019816085696220398, maxz - 0.0016677752137184143),
1716 (maxx - 0.014321718364953995, maxy - 0.01967141032218933, maxz - 0.011987630277872086),
1717 (maxx - 0.002416089177131653, maxy - 0.01951572299003601, maxz - 0.030777926556766033),
1718 (maxx - 0.0015008561313152313, maxy - 0.019390743225812912, minz + 0.03401290811598301),
1719 (maxx - 0.011821221560239792, maxy - 0.01932995393872261, minz + 0.014306826516985893),
1720 (maxx - 0.03061189129948616, maxy - 0.01934964768588543, minz + 0.002400781959295273),
1721 (minx + 0.03417872078716755, maxy - 0.019444547593593597, minz + 0.001484982669353485),
1722 (minx + 0.043508310547622386, maxy - 0.005668943747878075, maxz - 0.043508357635801076),
1723 (minx + 0.029034355655312538, maxy - 0.019612153992056847, minz + 0.027617475017905235),
1724 (minx + 0.023084014654159546, maxy - 0.01968996599316597, minz + 0.03700872650370002),
1725 (minx + 0.022626593708992004, maxy - 0.01975242979824543, maxz - 0.03889966616407037),
1726 (minx + 0.027784643694758415, maxy - 0.019782811403274536, maxz - 0.029050718992948532),
1727 (minx + 0.03717608004808426, maxy - 0.019772969186306, maxz - 0.023100173100829124),
1728 (maxx - 0.03873214777559042, maxy - 0.019725536927580833, maxz - 0.022642474621534348),
1729 (maxx - 0.02888327743858099, maxy - 0.019653232768177986, maxz - 0.02780025824904442),
1730 (maxx - 0.022932931780815125, maxy - 0.019575420767068863, maxz - 0.0371915097348392),
1731 (maxx - 0.022475499659776688, maxy - 0.019512956961989403, minz + 0.03871688432991505),
1732 (maxx - 0.0276335496455431, maxy - 0.019482573494315147, minz + 0.02886793203651905),
1733 (maxx - 0.03702498506754637, maxy - 0.019492419436573982, minz + 0.022917380556464195),
1734 (minx + 0.038883245550096035, maxy - 0.0195398461073637, minz + 0.022459672763943672),
1735 (minx + 0.029087782837450504, maxy - 0.03150090575218201, minz + 0.027552824467420578),
1736 (minx + 0.023137442767620087, maxy - 0.03157871589064598, minz + 0.036944076884537935),
1737 (minx + 0.022680018097162247, maxy - 0.03164118155837059, maxz - 0.03896431624889374),
1738 (minx + 0.027838071808218956, maxy - 0.031671565026044846, maxz - 0.029115368612110615),
1739 (minx + 0.0372295081615448, maxy - 0.03166172280907631, maxz - 0.023164819926023483),
1740 (maxx - 0.03867871919646859, maxy - 0.03161429241299629, maxz - 0.022707123309373856),
1741 (maxx - 0.028829848393797874, maxy - 0.03154198080301285, maxz - 0.027864910662174225),
1742 (maxx - 0.022879503667354584, maxy - 0.031464170664548874, maxz - 0.037256159354001284),
1743 (maxx - 0.022422071546316147, maxy - 0.03140170872211456, minz + 0.038652234710752964),
1744 (maxx - 0.02758011966943741, maxy - 0.03137132152915001, minz + 0.028803281486034393),
1745 (maxx - 0.03697155695408583, maxy - 0.031381167471408844, minz + 0.022852730005979538),
1746 (minx + 0.038936673663556576, maxy - 0.03142859786748886, minz + 0.022395022213459015),
1747 (minx + 0.029038896784186363, maxy - 0.020622700452804565, minz + 0.027611978352069855),
1748 (minx + 0.02308855764567852, maxy - 0.02070051059126854, minz + 0.0370032312348485),
1749 (minx + 0.02263113297522068, maxy - 0.020762978121638298, maxz - 0.038905161898583174),
1750 (minx + 0.02778918668627739, maxy - 0.020793357864022255, maxz - 0.029056214727461338),
1751 (minx + 0.037180622573941946, maxy - 0.02078351564705372, maxz - 0.023105667904019356),
1752 (maxx - 0.03872760524973273, maxy - 0.020736083388328552, maxz - 0.02264796942472458),
1753 (maxx - 0.028878736309707165, maxy - 0.020663777366280556, maxz - 0.0278057549148798),
1754 (maxx - 0.02292838878929615, maxy - 0.020585965365171432, maxz - 0.03719700500369072),
1755 (maxx - 0.022470960393548012, maxy - 0.020523501560091972, minz + 0.0387113899923861),
1756 (maxx - 0.027629008516669273, maxy - 0.020493119955062866, minz + 0.028862436302006245),
1757 (maxx - 0.03702044300734997, maxy - 0.020502964034676552, minz + 0.022911883890628815),
1758 (minx + 0.03888778714463115, maxy - 0.02055039070546627, minz + 0.02245417609810829),
1759 (minx + 0.03503026906400919, maxy - 0.0326739065349102, minz + 0.03399384953081608),
1760 (minx + 0.03150810860097408, maxy - 0.032719966024160385, minz + 0.03955277753993869),
1761 (minx + 0.03123734798282385, maxy - 0.03275693953037262, maxz - 0.04088863683864474),
1762 (minx + 0.034290531650185585, maxy - 0.032774921506643295, maxz - 0.035058788023889065),
1763 (minx + 0.039849569322541356, maxy - 0.0327690951526165, maxz - 0.03153650462627411),
1764 (maxx - 0.04059170465916395, maxy - 0.03274102136492729, maxz - 0.03126558102667332),
1765 (maxx - 0.03476190101355314, maxy - 0.032698217779397964, maxz - 0.03431860730051994),
1766 (maxx - 0.031239738687872887, maxy - 0.03265216201543808, maxz - 0.039877534145489335),
1767 (maxx - 0.03096897155046463, maxy - 0.032615188509225845, minz + 0.040563880698755383),
1768 (maxx - 0.03402215428650379, maxy - 0.03259720280766487, minz + 0.03473402839154005),
1769 (maxx - 0.03958118986338377, maxy - 0.032603029161691666, minz + 0.03121174033731222),
1770 (minx + 0.04086008481681347, maxy - 0.032631102949380875, minz + 0.030940811149775982),
1771 (minx + 0.026877090334892273, maxy - 0.04475956782698631, minz + 0.02504805289208889),
1772 (minx + 0.020004114136099815, maxy - 0.044849444180727005, minz + 0.03589546587318182),
1773 (minx + 0.019475765526294708, maxy - 0.04492159187793732, maxz - 0.03829052206128836),
1774 (minx + 0.025433603674173355, maxy - 0.04495668411254883, maxz - 0.0269144456833601),
1775 (minx + 0.03628123179078102, maxy - 0.04494532197713852, maxz - 0.020041238516569138),
1776 (maxx - 0.0379045819863677, maxy - 0.04489053785800934, maxz - 0.01951257325708866),
1777 (maxx - 0.02652859501540661, maxy - 0.044807009398937225, maxz - 0.02547009475529194),
1778 (maxx - 0.01965562254190445, maxy - 0.04471714794635773, maxz - 0.036317508202046156),
1779 (maxx - 0.019127257168293, maxy - 0.04464499279856682, minz + 0.03786848206073046),
1780 (maxx - 0.02508508786559105, maxy - 0.04460989683866501, minz + 0.026492400094866753),
1781 (maxx - 0.03593271458521485, maxy - 0.044621266424655914, minz + 0.019619181752204895),
1782 (minx + 0.03825310105457902, maxy - 0.044676050543785095, minz + 0.01909050904214382),
1783 (minx + 0.021551070734858513, miny + 0.00942724198102951, minz + 0.01908031851053238),
1784 (minx + 0.01246710866689682, miny + 0.009308435022830963, minz + 0.03341726865619421),
1785 (minx + 0.011768791824579239, miny + 0.009213089942932129, maxz - 0.03664115583524108),
1786 (minx + 0.019643226638436317, miny + 0.009166710078716278, maxz - 0.0216054730117321),
1787 (minx + 0.033980460837483406, miny + 0.009181737899780273, maxz - 0.012521196156740189),
1788 (maxx - 0.036077769473195076, miny + 0.009254135191440582, maxz - 0.011822465807199478),
1789 (maxx - 0.021042203530669212, miny + 0.0093645378947258, maxz - 0.019696485251188278),
1790 (maxx - 0.011958237737417221, miny + 0.009483307600021362, maxz - 0.03403343725949526),
1791 (maxx - 0.011259902268648148, miny + 0.009578689932823181, minz + 0.03602499142289162),
1792 (maxx - 0.01913433149456978, miny + 0.009625062346458435, minz + 0.020989302545785904),
1793 (maxx - 0.03347156383097172, miny + 0.009610041975975037, minz + 0.011905014514923096),
1794 (minx + 0.03658666601404548, miny + 0.00953763723373413, minz + 0.011206269264221191),
1795 (minx + 0.02942624967545271, miny + 0.001430809497833252, minz + 0.027632080018520355),
1796 (minx + 0.023563016206026077, miny + 0.001354128122329712, minz + 0.03688584640622139),
1797 (minx + 0.023112289607524872, miny + 0.001292586326599121, maxz - 0.039185164496302605),
1798 (minx + 0.028194833546876907, miny + 0.001262657344341278, maxz - 0.029480399563908577),
1799 (minx + 0.037448784336447716, miny + 0.001272358000278473, maxz - 0.023616963997483253),
1800 (maxx - 0.038622063118964434, miny + 0.0013190805912017822, maxz - 0.023165971040725708),
1801 (maxx - 0.028917375952005386, miny + 0.0013903453946113586, maxz - 0.02824824769049883),
1802 (maxx - 0.02305414155125618, miny + 0.001467004418373108, maxz - 0.0375020164065063),
1803 (maxx - 0.02260340191423893, miny + 0.0015285685658454895, minz + 0.03856899822130799),
1804 (maxx - 0.027685942128300667, miny + 0.0015584975481033325, minz + 0.028864230029284954),
1805 (maxx - 0.0369398919865489, miny + 0.0015488043427467346, minz + 0.023000789806246758),
1806 (minx + 0.03913095686584711, miny + 0.0015020743012428284, minz + 0.022549785673618317),
1807 (minx + 0.03738117218017578, miny + 0.001003175973892212, minz + 0.03627043403685093),
1808 (minx + 0.03477128129452467, miny + 0.0009690374135971069, minz + 0.04038954642601311),
1809 (minx + 0.034570650197565556, miny + 0.000941641628742218, maxz - 0.041754934238269925),
1810 (minx + 0.03683303436264396, miny + 0.0009283199906349182, maxz - 0.03743506921455264),
1811 (minx + 0.040952228708192706, miny + 0.0009326338768005371, maxz - 0.03482509031891823),
1812 (maxx - 0.0411921211052686, miny + 0.0009534358978271484, maxz - 0.03462434001266956),
1813 (maxx - 0.03687229100614786, miny + 0.0009851530194282532, maxz - 0.03688660357147455),
1814 (maxx - 0.034262401051819324, miny + 0.0010192766785621643, maxz - 0.04100571759045124),
1815 (maxx - 0.03406176343560219, miny + 0.0010466799139976501, minz + 0.0411387647036463),
1816 (maxx - 0.036324144806712866, miny + 0.0010600090026855469, minz + 0.03681889921426773),
1817 (maxx - 0.04044333938509226, miny + 0.001055695116519928, minz + 0.03420891519635916),
1818 (minx + 0.04170101135969162, miny + 0.0010348930954933167, minz + 0.034008161164820194),
1819 (maxx - 0.043253868410829455, miny, minz + 0.04320027763606049),
1820 (minx + 0.03971285093575716, maxy - 0.041327137500047684, maxz - 0.031046375632286072),
1821 (maxx - 0.03359287604689598, maxy - 0.04114784672856331, minz + 0.03433086443692446),
1822 (minx + 0.03072980046272278, maxy - 0.04131445661187172, maxz - 0.040801193099468946),
1823 (minx + 0.031012218445539474, maxy - 0.04127589240670204, minz + 0.03935709968209267),
1824 (minx + 0.04076687735505402, maxy - 0.04118320718407631, minz + 0.030374319292604923),
1825 (minx + 0.034451283514499664, maxy - 0.03338594362139702, minz + 0.033365121111273766),
1826 (minx + 0.030692334286868572, maxy - 0.03343509882688522, minz + 0.039297766517847776),
1827 (minx + 0.03040337096899748, maxy - 0.03347455710172653, maxz - 0.040701600490137935),
1828 (minx + 0.03366181440651417, maxy - 0.03349374979734421, maxz - 0.03447982110083103),
1829 (minx + 0.03959457715973258, maxy - 0.033487528562545776, maxz - 0.03072074055671692),
1830 (maxx - 0.040404647355899215, maxy - 0.033457569777965546, maxz - 0.030431604012846947),
1831 (maxx - 0.03418291546404362, maxy - 0.03341188654303551, maxz - 0.03368987888097763),
1832 (maxx - 0.030423964373767376, maxy - 0.0333627350628376, maxz - 0.03962252289056778),
1833 (maxx - 0.030134993605315685, maxy - 0.03332327678799629, minz + 0.04037684458307922),
1834 (maxx - 0.033393437042832375, maxy - 0.03330408036708832, minz + 0.03415506146848202),
1835 (maxx - 0.03932619746774435, maxy - 0.03331030160188675, minz + 0.030395975336432457),
1836 (minx + 0.040673027746379375, maxy - 0.03334026038646698, minz + 0.030106833204627037),
1837 (minx + 0.030282274819910526, maxy - 0.005427400581538677, maxz - 0.0011750981211662292),
1838 (minx + 0.013463903218507767, maxy - 0.005095209460705519, minz + 0.0108589306473732),
1839 (minx + 0.010882444679737091, maxy - 0.005447734147310257, maxz - 0.013467073440551758),
1840 (minx + 0.0011723600327968597, maxy - 0.005255943164229393, minz + 0.030258373357355595),
1841 (minx + 0.0002274736762046814, maxy - 0.005384976044297218, maxz - 0.033811951987445354),
1842 (maxx - 0.0134431142359972, maxy - 0.005180059932172298, maxz - 0.010884080082178116),
1843 (maxx - 0.033787828870117664, maxy - 0.005329424981027842, maxz - 0.00022966042160987854),
1844 (maxx - 0.0302614476531744, maxy - 0.004847868345677853, minz + 0.0011499449610710144),
1845 (maxx - 0.00020667165517807007, maxy - 0.004890293348580599, minz + 0.03378681745380163),
1846 (maxx - 0.0011515654623508453, maxy - 0.0050193266943097115, maxz - 0.03028351627290249),
1847 (minx + 0.033808655105531216, maxy - 0.004945843946188688, minz + 0.0002044886350631714),
1848 (maxx - 0.010861624032258987, maxy - 0.004827534779906273, minz + 0.013441929593682289),
1849 (minx + 0.03468604106456041, maxy - 0.04122784733772278, minz + 0.033558815717697144),
1850 (minx + 0.033914451487362385, maxy - 0.041333213448524475, maxz - 0.03472032118588686),
1851 (maxx - 0.04044530005194247, maxy - 0.04129785671830177, maxz - 0.03076378908008337),
1852 (maxx - 0.034364476799964905, maxy - 0.04125320911407471, maxz - 0.03394827153533697),
1853 (maxx - 0.03069065511226654, maxy - 0.04120517522096634, maxz - 0.03974655526690185),
1854 (maxx - 0.030408228747546673, maxy - 0.04116660729050636, minz + 0.04041173937730491),
1855 (maxx - 0.03939127502962947, maxy - 0.0411539226770401, minz + 0.030656912364065647),
1856 (minx + 0.03147818427532911, maxy - 0.033236272633075714, minz + 0.03954096930101514),
1857 (minx + 0.031206720508635044, maxy - 0.03327333927154541, maxz - 0.04088335996493697),
1858 (minx + 0.034267837181687355, maxy - 0.033291369676589966, maxz - 0.03503836318850517),
1859 (minx + 0.03984131896868348, maxy - 0.03328552842140198, maxz - 0.03150692768394947),
1860 (maxx - 0.040582869900390506, maxy - 0.0332573801279068, maxz - 0.03123530000448227),
1861 (maxx - 0.03473791852593422, maxy - 0.033214468508958817, maxz - 0.03429625928401947),
1862 (maxx - 0.031206604093313217, maxy - 0.03316829353570938, maxz - 0.03986963024362922),
1863 (maxx - 0.030935133807361126, maxy - 0.03313122317194939, minz + 0.040554699720814824),
1864 (maxx - 0.03399624954909086, maxy - 0.03311318904161453, minz + 0.03470969945192337),
1865 (maxx - 0.03956972947344184, maxy - 0.03311903029680252, minz + 0.031178259290754795),
1866 (minx + 0.04085446032695472, maxy - 0.0331471785902977, minz + 0.030906626023352146),
1867 (minx + 0.035009496845304966, maxy - 0.03319009393453598, minz + 0.03396759741008282),
1868 (minx + 0.019410474225878716, miny + 0.020503833889961243, minz + 0.016801605001091957),
1869 (minx + 0.009459223598241806, miny + 0.020373672246932983, minz + 0.032507372088730335),
1870 (maxx - 0.03541257046163082, miny + 0.02031419426202774, maxz - 0.008743710815906525),
1871 (maxx - 0.0189414881169796, miny + 0.02043512463569641, maxz - 0.017369499430060387),
1872 (maxx - 0.008990231901407242, miny + 0.02056524157524109, maxz - 0.03307527117431164),
1873 (minx + 0.017320478335022926, miny + 0.02021842449903488, maxz - 0.01946074701845646),
1874 (minx + 0.03302655927836895, miny + 0.02023487538099289, maxz - 0.009509153664112091),
1875 (maxx - 0.008225221186876297, miny + 0.02066972106695175, minz + 0.0353640653192997),
1876 (maxx - 0.016851460561156273, miny + 0.020720526576042175, minz + 0.018892847001552582),
1877 (minx + 0.008694231510162354, miny + 0.020269230008125305, maxz - 0.03593196161091328),
1878 (minx + 0.035881591495126486, miny + 0.020624756813049316, minz + 0.008175786584615707),
1879 (maxx - 0.032557537779212, miny + 0.020704075694084167, minz + 0.008941244333982468),
1880 (minx + 0.008214566856622696, miny + 0.023270338773727417, minz + 0.03213237784802914),
1881 (maxx - 0.018073920160531998, miny + 0.023333996534347534, maxz - 0.016406163573265076),
1882 (maxx - 0.007764074951410294, miny + 0.023468807339668274, maxz - 0.03267789073288441),
1883 (minx + 0.03263115230947733, miny + 0.023126527667045593, maxz - 0.008262567222118378),
1884 (maxx - 0.015908580273389816, miny + 0.023629695177078247, minz + 0.018027253448963165),
1885 (minx + 0.01852441392838955, miny + 0.023405179381370544, minz + 0.015860654413700104),
1886 (maxx - 0.03513853810727596, miny + 0.023208707571029663, maxz - 0.007469546049833298),
1887 (minx + 0.016359103843569756, miny + 0.02310948073863983, maxz - 0.018572768196463585),
1888 (maxx - 0.006971497088670731, miny + 0.023577049374580383, minz + 0.0350920120254159),
1889 (minx + 0.007422015070915222, miny + 0.023162126541137695, maxz - 0.03563752118498087),
1890 (minx + 0.035589066334068775, miny + 0.023530468344688416, minz + 0.00692400336265564),
1891 (maxx - 0.032180625945329666, miny + 0.023612648248672485, minz + 0.0077170394361019135),
1892 (minx + 0.021761823445558548, miny + 0.020728543400764465, minz + 0.019355909898877144),
1893 (minx + 0.012772375717759132, miny + 0.020610973238945007, minz + 0.03354368917644024),
1894 (maxx - 0.03617278253659606, miny + 0.020557239651679993, maxz - 0.012130718678236008),
1895 (maxx - 0.021293656900525093, miny + 0.020666487514972687, maxz - 0.019922811537981033),
1896 (maxx - 0.012304211035370827, miny + 0.02078402042388916, maxz - 0.03411059454083443),
1897 (minx + 0.019873831421136856, miny + 0.020470723509788513, maxz - 0.021811936050653458),
1898 (minx + 0.034061891958117485, miny + 0.020485587418079376, maxz - 0.01282217912375927),
1899 (maxx - 0.011613138020038605, miny + 0.020878411829471588, minz + 0.0361242787912488),
1900 (maxx - 0.019405635073781013, miny + 0.02092430740594864, minz + 0.02124503068625927),
1901 (minx + 0.012081325054168701, miny + 0.020516619086265564, maxz - 0.03669118043035269),
1902 (minx + 0.03664098121225834, miny + 0.02083779126405716, minz + 0.01156378909945488),
1903 (maxx - 0.03359369467943907, miny + 0.020909443497657776, minz + 0.012255258858203888),
1904 (minx + 0.01420576497912407, miny + 0.023059040307998657, minz + 0.03400459885597229),
1905 (maxx - 0.022325390949845314, miny + 0.023111969232559204, maxz - 0.021023839712142944),
1906 (maxx - 0.013754449784755707, miny + 0.02322402596473694, maxz - 0.034551107324659824),
1907 (minx + 0.034504144452512264, miny + 0.022939488291740417, maxz - 0.014253776520490646),
1908 (maxx - 0.020525267347693443, miny + 0.023357778787612915, minz + 0.02227850630879402),
1909 (minx + 0.022776709869503975, miny + 0.023171141743659973, minz + 0.020477334037423134),
1910 (maxx - 0.036511816550046206, miny + 0.023007795214653015, maxz - 0.013594510033726692),
1911 (minx + 0.020976610481739044, miny + 0.02292531728744507, maxz - 0.02282501384615898),
1912 (maxx - 0.013095550239086151, miny + 0.02331402897834778, minz + 0.03646504878997803),
1913 (minx + 0.013546885922551155, miny + 0.0229690819978714, maxz - 0.037011553067713976),
1914 (minx + 0.03696316387504339, miny + 0.023275285959243774, minz + 0.013047976419329643),
1915 (maxx - 0.03405279852449894, miny + 0.023343607783317566, minz + 0.013707255944609642)]
1917 # Faces
1918 myfaces = [(24, 0, 1), (24, 1, 2), (24, 2, 3), (24, 3, 4), (24, 4, 5),
1919 (24, 5, 6), (24, 6, 7), (24, 7, 8), (24, 8, 9), (24, 9, 10),
1920 (24, 10, 11), (11, 0, 24), (140, 12, 13, 142), (142, 13, 14, 143), (143, 14, 15, 141),
1921 (141, 15, 16, 139), (139, 16, 17, 145), (145, 17, 18, 144), (144, 18, 19, 148), (148, 19, 20, 147),
1922 (147, 20, 21, 150), (150, 21, 22, 146), (146, 22, 23, 149), (140, 0, 11, 149), (13, 12, 25, 26),
1923 (14, 13, 26, 27), (15, 14, 27, 28), (16, 15, 28, 29), (17, 16, 29, 30), (18, 17, 30, 31),
1924 (19, 18, 31, 32), (20, 19, 32, 33), (21, 20, 33, 34), (22, 21, 34, 35), (23, 22, 35, 36),
1925 (12, 23, 36, 25), (25, 49, 50, 26), (49, 37, 38, 50), (26, 50, 51, 27), (50, 38, 39, 51),
1926 (27, 51, 52, 28), (51, 39, 40, 52), (28, 52, 53, 29), (52, 40, 41, 53), (29, 53, 54, 30),
1927 (53, 41, 42, 54), (30, 54, 55, 31), (54, 42, 43, 55), (31, 55, 56, 32), (55, 43, 44, 56),
1928 (32, 56, 57, 33), (56, 44, 45, 57), (33, 57, 58, 34), (57, 45, 46, 58), (34, 58, 59, 35),
1929 (58, 46, 47, 59), (35, 59, 60, 36), (59, 47, 48, 60), (36, 60, 49, 25), (60, 48, 37, 49),
1930 (38, 37, 61, 62), (39, 38, 62, 63), (40, 39, 63, 64), (41, 40, 64, 65), (42, 41, 65, 66),
1931 (43, 42, 66, 67), (44, 43, 67, 68), (45, 44, 68, 69), (46, 45, 69, 70), (47, 46, 70, 71),
1932 (48, 47, 71, 72), (37, 48, 72, 61), (124, 125, 74, 75), (171, 170, 85, 86), (173, 172, 90, 91),
1933 (174, 173, 91, 92), (176, 175, 88, 89), (178, 177, 93, 94), (175, 179, 87, 88), (177, 174, 92, 93),
1934 (170, 180, 96, 85), (180, 181, 95, 96), (181, 178, 94, 95), (172, 176, 89, 90), (179, 171, 86, 87),
1935 (90, 89, 101, 102), (86, 85, 97, 98), (93, 92, 104, 105), (96, 95, 107, 108), (85, 96, 108, 97),
1936 (89, 88, 100, 101), (91, 90, 102, 103), (88, 87, 99, 100), (92, 91, 103, 104), (95, 94, 106, 107),
1937 (94, 93, 105, 106), (87, 86, 98, 99), (105, 104, 116, 117), (108, 107, 119, 120), (97, 108, 120, 109),
1938 (101, 100, 112, 113), (103, 102, 114, 115), (100, 99, 111, 112), (104, 103, 115, 116),
1939 (107, 106, 118, 119),
1940 (106, 105, 117, 118), (99, 98, 110, 111), (102, 101, 113, 114), (98, 97, 109, 110), (120, 119, 121),
1941 (109, 120, 121), (113, 112, 121), (115, 114, 121), (112, 111, 121), (116, 115, 121),
1942 (119, 118, 121), (118, 117, 121), (111, 110, 121), (114, 113, 121), (110, 109, 121),
1943 (117, 116, 121), (169, 158, 62, 61), (158, 159, 63, 62), (159, 160, 64, 63), (160, 161, 65, 64),
1944 (161, 162, 66, 65), (162, 163, 67, 66), (163, 164, 68, 67), (164, 165, 69, 68), (165, 166, 70, 69),
1945 (166, 167, 71, 70), (167, 168, 72, 71), (168, 169, 61, 72), (72, 138, 127, 61), (63, 129, 130, 64),
1946 (67, 133, 134, 68), (64, 130, 131, 65), (61, 127, 128, 62), (69, 135, 136, 70), (66, 132, 133, 67),
1947 (65, 131, 132, 66), (71, 137, 138, 72), (70, 136, 137, 71), (62, 128, 129, 63), (68, 134, 135, 69),
1948 (0, 140, 142, 1), (1, 142, 143, 2), (2, 143, 141, 3), (3, 141, 139, 4), (4, 139, 145, 5),
1949 (5, 145, 144, 6), (6, 144, 148, 7), (7, 148, 147, 8), (8, 147, 150, 9), (9, 150, 146, 10),
1950 (10, 146, 149, 11), (12, 140, 149, 23), (153, 154, 163, 162), (154, 155, 164, 163), (155, 156, 165, 164),
1951 (125, 151, 73, 74), (152, 124, 75, 76), (122, 152, 76, 77), (153, 122, 77, 78), (154, 153, 78, 79),
1952 (155, 154, 79, 80), (156, 155, 80, 81), (123, 156, 81, 82), (157, 123, 82, 83), (126, 157, 83, 84),
1953 (73, 151, 126, 84), (151, 125, 158, 169), (125, 124, 159, 158), (124, 152, 160, 159),
1954 (152, 122, 161, 160),
1955 (122, 153, 162, 161), (156, 123, 166, 165), (123, 157, 167, 166), (157, 126, 168, 167),
1956 (126, 151, 169, 168),
1957 (185, 189, 213, 209), (192, 193, 217, 216), (172, 173, 197, 196), (174, 177, 201, 198),
1958 (171, 179, 203, 195),
1959 (184, 183, 207, 208), (187, 192, 216, 211), (170, 171, 195, 194), (179, 175, 199, 203),
1960 (176, 172, 196, 200),
1961 (183, 188, 212, 207), (190, 184, 208, 214), (74, 73, 187, 182), (79, 78, 188, 183), (80, 79, 183, 184),
1962 (77, 76, 189, 185), (82, 81, 190, 186), (76, 75, 191, 189), (81, 80, 184, 190), (73, 84, 192, 187),
1963 (84, 83, 193, 192), (83, 82, 186, 193), (78, 77, 185, 188), (75, 74, 182, 191), (206, 211, 194, 195),
1964 (207, 212, 196, 197), (208, 207, 197, 198), (209, 213, 199, 200), (210, 214, 201, 202),
1965 (213, 215, 203, 199),
1966 (214, 208, 198, 201), (211, 216, 204, 194), (216, 217, 205, 204), (217, 210, 202, 205),
1967 (212, 209, 200, 196),
1968 (215, 206, 195, 203), (180, 170, 194, 204), (173, 174, 198, 197), (193, 186, 210, 217),
1969 (186, 190, 214, 210),
1970 (181, 180, 204, 205), (175, 176, 200, 199), (188, 185, 209, 212), (189, 191, 215, 213),
1971 (182, 187, 211, 206),
1972 (178, 181, 205, 202), (177, 178, 202, 201), (191, 182, 206, 215)]
1974 return myvertex, myfaces
1977 # ----------------------------------------------
1978 # Handle model 04
1979 # ----------------------------------------------
1980 def handle_model_04():
1981 # ------------------------------------
1982 # Mesh data
1983 # ------------------------------------
1984 minx = -0.04349547624588013
1985 maxx = 0.04352114722132683
1986 miny = -0.07034946978092194
1987 maxy = 0
1988 minz = -0.12514087557792664
1989 maxz = 0.12514087557792664
1991 # Vertex
1992 myvertex = [(minx + 0.013302795588970184, maxy - 0.002780601382255554, minz + 0.010707870125770569),
1993 (minx + 0.0009496212005615234, maxy - 0.002942140679806471, minz + 0.030204586684703827),
1994 (minx, maxy - 0.003071820829063654, minz + 0.053266048431396484),
1995 (minx + 0.010708402842283249, maxy - 0.0031348932534456253, minz + 0.07371294498443604),
1996 (minx + 0.03020550962537527, maxy - 0.003114458406344056, minz + 0.08606655150651932),
1997 (maxx - 0.03374953381717205, maxy - 0.003015991533175111, minz + 0.08701672777533531),
1998 (maxx - 0.01330280676484108, maxy - 0.0028658765368163586, minz + 0.07630888000130653),
1999 (maxx - 0.0009496286511421204, maxy - 0.0027043374720960855, minz + 0.056812167167663574),
2000 (maxx, maxy - 0.0025746573228389025, minz + 0.033750712871551514),
2001 (maxx - 0.010708380490541458, maxy - 0.002511584199965, minz + 0.013303808867931366),
2002 (maxx - 0.03020548354834318, maxy - 0.0025320190470665693, minz + 0.0009501948952674866),
2003 (minx + 0.03374955803155899, maxy - 0.0026304861530661583, minz),
2004 (minx + 0.014472760260105133, maxy - 0.019589224830269814, minz + 0.01180487871170044),
2005 (minx + 0.002567145973443985, maxy - 0.019744910299777985, minz + 0.03059517592191696),
2006 (minx + 0.001651916652917862, maxy - 0.019869891926646233, minz + 0.052821069955825806),
2007 (minx + 0.011972300708293915, maxy - 0.019930677488446236, minz + 0.07252714410424232),
2008 (minx + 0.03076297417283058, maxy - 0.019910985603928566, minz + 0.0844331718981266),
2009 (maxx - 0.034027633257210255, maxy - 0.019816085696220398, minz + 0.0853489525616169),
2010 (maxx - 0.014321718364953995, maxy - 0.01967141032218933, minz + 0.07502909749746323),
2011 (maxx - 0.002416089177131653, maxy - 0.01951572299003601, minz + 0.056238800287246704),
2012 (maxx - 0.0015008561313152313, maxy - 0.019390743225812912, minz + 0.03401290625333786),
2013 (maxx - 0.011821221560239792, maxy - 0.01932995393872261, minz + 0.014306828379631042),
2014 (maxx - 0.03061189129948616, maxy - 0.01934964768588543, minz + 0.0024007856845855713),
2015 (minx + 0.03417872078716755, maxy - 0.019444547593593597, minz + 0.001484982669353485),
2016 (minx + 0.043508310547622386, maxy - 0.005668943747878075, minz + 0.043508365750312805),
2017 (minx + 0.029034355655312538, maxy - 0.019612153992056847, minz + 0.027617476880550385),
2018 (minx + 0.023084014654159546, maxy - 0.01968996599316597, minz + 0.037008725106716156),
2019 (minx + 0.022626593708992004, maxy - 0.01975242979824543, minz + 0.048117056488990784),
2020 (minx + 0.027784643694758415, maxy - 0.019782811403274536, minz + 0.05796600878238678),
2021 (minx + 0.03717608004808426, maxy - 0.019772969186306, minz + 0.06391655653715134),
2022 (maxx - 0.03873214777559042, maxy - 0.019725536927580833, minz + 0.06437425315380096),
2023 (maxx - 0.02888327743858099, maxy - 0.019653232768177986, minz + 0.059216469526290894),
2024 (maxx - 0.022932931780815125, maxy - 0.019575420767068863, minz + 0.04982522130012512),
2025 (maxx - 0.022475499659776688, maxy - 0.019512956961989403, minz + 0.0387168824672699),
2026 (maxx - 0.0276335496455431, maxy - 0.019482573494315147, minz + 0.0288679301738739),
2027 (maxx - 0.03702498506754637, maxy - 0.019492419436573982, minz + 0.022917382419109344),
2028 (minx + 0.038883245550096035, maxy - 0.0195398461073637, minz + 0.022459670901298523),
2029 (minx + 0.029087782837450504, maxy - 0.03150090575218201, minz + 0.027552828192710876),
2030 (minx + 0.023137442767620087, maxy - 0.03157871589064598, minz + 0.03694407641887665),
2031 (minx + 0.022680018097162247, maxy - 0.03164118155837059, minz + 0.04805241525173187),
2032 (minx + 0.027838071808218956, maxy - 0.031671565026044846, minz + 0.05790136009454727),
2033 (minx + 0.0372295081615448, maxy - 0.03166172280907631, minz + 0.06385190784931183),
2034 (maxx - 0.03867871919646859, maxy - 0.03161429241299629, minz + 0.06430960446596146),
2035 (maxx - 0.028829848393797874, maxy - 0.03154198080301285, minz + 0.05915181338787079),
2036 (maxx - 0.022879503667354584, maxy - 0.031464170664548874, minz + 0.04976056516170502),
2037 (maxx - 0.022422071546316147, maxy - 0.03140170872211456, minz + 0.03865223377943039),
2038 (maxx - 0.02758011966943741, maxy - 0.03137132152915001, minz + 0.028803281486034393),
2039 (maxx - 0.03697155695408583, maxy - 0.031381167471408844, minz + 0.022852733731269836),
2040 (minx + 0.038936673663556576, maxy - 0.03142859786748886, minz + 0.022395022213459015),
2041 (minx + 0.029038896784186363, maxy - 0.020622700452804565, minz + 0.027611978352069855),
2042 (minx + 0.02308855764567852, maxy - 0.02070051059126854, minz + 0.03700323402881622),
2043 (minx + 0.02263113297522068, maxy - 0.020762978121638298, minz + 0.04811156541109085),
2044 (minx + 0.02778918668627739, maxy - 0.020793357864022255, minz + 0.05796051025390625),
2045 (minx + 0.037180622573941946, maxy - 0.02078351564705372, minz + 0.0639110580086708),
2046 (maxx - 0.03872760524973273, maxy - 0.020736083388328552, minz + 0.06436875835061073),
2047 (maxx - 0.028878736309707165, maxy - 0.020663777366280556, minz + 0.059210970997810364),
2048 (maxx - 0.02292838878929615, maxy - 0.020585965365171432, minz + 0.04981972277164459),
2049 (maxx - 0.022470960393548012, maxy - 0.020523501560091972, minz + 0.038711391389369965),
2050 (maxx - 0.027629008516669273, maxy - 0.020493119955062866, minz + 0.02886243909597397),
2051 (maxx - 0.03702044300734997, maxy - 0.020502964034676552, minz + 0.022911883890628815),
2052 (minx + 0.03888778714463115, maxy - 0.02055039070546627, minz + 0.022454172372817993),
2053 (minx + 0.03503026906400919, maxy - 0.0326739065349102, minz + 0.03399384766817093),
2054 (minx + 0.03150810860097408, maxy - 0.032719966024160385, minz + 0.039552778005599976),
2055 (minx + 0.03123734798282385, maxy - 0.03275693953037262, minz + 0.04612809419631958),
2056 (minx + 0.034290531650185585, maxy - 0.032774921506643295, minz + 0.051957935094833374),
2057 (minx + 0.039849569322541356, maxy - 0.0327690951526165, minz + 0.0554802268743515),
2058 (maxx - 0.04059170465916395, maxy - 0.03274102136492729, minz + 0.055751144886016846),
2059 (maxx - 0.03476190101355314, maxy - 0.032698217779397964, minz + 0.05269812047481537),
2060 (maxx - 0.031239738687872887, maxy - 0.03265216201543808, minz + 0.04713919758796692),
2061 (maxx - 0.03096897155046463, maxy - 0.032615188509225845, minz + 0.040563881397247314),
2062 (maxx - 0.03402215428650379, maxy - 0.03259720280766487, minz + 0.03473402559757233),
2063 (maxx - 0.03958118986338377, maxy - 0.032603029161691666, minz + 0.031211741268634796),
2064 (minx + 0.04086008481681347, maxy - 0.032631102949380875, minz + 0.030940808355808258),
2065 (minx + 0.03971285093575716, miny + 0.029022332280874252, minz + 0.05597035586833954),
2066 (maxx - 0.03359287604689598, miny + 0.029201623052358627, minz + 0.034330859780311584),
2067 (minx + 0.03072980046272278, miny + 0.029035013169050217, minz + 0.04621553421020508),
2068 (minx + 0.031012218445539474, miny + 0.029073577374219894, minz + 0.03935709595680237),
2069 (minx + 0.04076687735505402, miny + 0.029166262596845627, minz + 0.03037431836128235),
2070 (minx + 0.034451283514499664, maxy - 0.03338594362139702, minz + 0.033365122973918915),
2071 (minx + 0.030692334286868572, maxy - 0.03343509882688522, minz + 0.039297766983509064),
2072 (minx + 0.03040337096899748, maxy - 0.03347455710172653, minz + 0.04631512612104416),
2073 (minx + 0.03366181440651417, maxy - 0.03349374979734421, minz + 0.05253690481185913),
2074 (minx + 0.03959457715973258, maxy - 0.033487528562545776, minz + 0.05629599094390869),
2075 (maxx - 0.040404647355899215, maxy - 0.033457569777965546, minz + 0.056585125625133514),
2076 (maxx - 0.03418291546404362, maxy - 0.03341188654303551, minz + 0.05332684516906738),
2077 (maxx - 0.030423964373767376, maxy - 0.0333627350628376, minz + 0.047394201159477234),
2078 (maxx - 0.030134993605315685, maxy - 0.03332327678799629, minz + 0.04037684202194214),
2079 (maxx - 0.033393437042832375, maxy - 0.03330408036708832, minz + 0.03415506333112717),
2080 (maxx - 0.03932619746774435, maxy - 0.03331030160188675, minz + 0.030395977199077606),
2081 (minx + 0.040673027746379375, maxy - 0.03334026038646698, minz + 0.030106835067272186),
2082 (minx + 0.030282274819910526, maxy - 0.005427400581538677, minz + 0.08584162965416908),
2083 (minx + 0.013463903218507767, maxy - 0.005095209460705519, minz + 0.0108589306473732),
2084 (minx + 0.010882444679737091, maxy - 0.005447734147310257, minz + 0.07354965433478355),
2085 (minx + 0.0011723600327968597, maxy - 0.005255943164229393, minz + 0.03025837242603302),
2086 (minx + 0.0002274736762046814, maxy - 0.005384976044297218, minz + 0.05320477485656738),
2087 (maxx - 0.0134431142359972, maxy - 0.005180059932172298, minz + 0.0761326476931572),
2088 (maxx - 0.033787828870117664, maxy - 0.005329424981027842, minz + 0.08678706735372543),
2089 (maxx - 0.0302614476531744, maxy - 0.004847868345677853, minz + 0.0011499449610710144),
2090 (maxx - 0.00020667165517807007, maxy - 0.004890293348580599, minz + 0.03378681838512421),
2091 (maxx - 0.0011515654623508453, maxy - 0.0050193266943097115, minz + 0.05673321336507797),
2092 (minx + 0.033808655105531216, maxy - 0.004945843946188688, minz + 0.0002044886350631714),
2093 (maxx - 0.010861624032258987, maxy - 0.004827534779906273, minz + 0.01344192773103714),
2094 (minx + 0.03468604106456041, miny + 0.029121622443199158, minz + 0.033558815717697144),
2095 (minx + 0.033914451487362385, miny + 0.02901625633239746, minz + 0.05229640752077103),
2096 (maxx - 0.04044530005194247, miny + 0.029051613062620163, minz + 0.056252941489219666),
2097 (maxx - 0.034364476799964905, miny + 0.02909626066684723, minz + 0.053068459033966064),
2098 (maxx - 0.03069065511226654, miny + 0.029144294559955597, minz + 0.04727017134428024),
2099 (maxx - 0.030408228747546673, miny + 0.029182862490415573, minz + 0.04041174054145813),
2100 (maxx - 0.03939127502962947, miny + 0.029195547103881836, minz + 0.030656911432743073),
2101 (minx + 0.03147818427532911, maxy - 0.033236272633075714, minz + 0.03954096883535385),
2102 (minx + 0.031206720508635044, maxy - 0.03327333927154541, minz + 0.0461333692073822),
2103 (minx + 0.034267837181687355, maxy - 0.033291369676589966, minz + 0.05197836458683014),
2104 (minx + 0.03984131896868348, maxy - 0.03328552842140198, minz + 0.05550979822874069),
2105 (maxx - 0.040582869900390506, maxy - 0.0332573801279068, minz + 0.055781424045562744),
2106 (maxx - 0.03473791852593422, maxy - 0.033214468508958817, minz + 0.05272047221660614),
2107 (maxx - 0.031206604093313217, maxy - 0.03316829353570938, minz + 0.04714709520339966),
2108 (maxx - 0.030935133807361126, maxy - 0.03313122317194939, minz + 0.040554702281951904),
2109 (maxx - 0.03399624954909086, maxy - 0.03311318904161453, minz + 0.03470969945192337),
2110 (maxx - 0.03956972947344184, maxy - 0.03311903029680252, minz + 0.03117825835943222),
2111 (minx + 0.04085446032695472, maxy - 0.0331471785902977, minz + 0.03090662509202957),
2112 (minx + 0.035009496845304966, maxy - 0.03319009393453598, minz + 0.033967599272727966),
2113 (maxx - 0.03939127502962947, miny + 0.0002205297350883484, minz + 0.0343027338385582),
2114 (maxx - 0.030408228747546673, miny + 0.007109262049198151, minz + 0.04120940715074539),
2115 (maxx - 0.03069065511226654, miny + 0.011931635439395905, minz + 0.046086326241493225),
2116 (maxx - 0.034364476799964905, miny + 0.01599767804145813, minz + 0.050220295786857605),
2117 (maxx - 0.04044530005194247, miny + 0.01821787655353546, minz + 0.05250363051891327),
2118 (minx + 0.033914451487362385, miny + 0.015395186841487885, minz + 0.04973094165325165),
2119 (minx + 0.03468604106456041, miny + 0.0022202134132385254, minz + 0.03640696406364441),
2120 (minx + 0.04076687735505402, miny, minz + 0.03412361443042755),
2121 (minx + 0.031012218445539474, miny + 0.006286241114139557, minz + 0.040540941059589386),
2122 (minx + 0.03072980046272278, miny + 0.011108621954917908, minz + 0.04541786015033722),
2123 (maxx - 0.03359287604689598, miny + 0.002822697162628174, minz + 0.036896318197250366),
2124 (minx + 0.03971285093575716, miny + 0.01799735426902771, minz + 0.05232451856136322),
2125 (minx + 0.0343002462759614, miny + 0.015705399215221405, maxz - 0.10733164101839066),
2126 (minx + 0.030871009454131126, miny + 0.011495128273963928, maxz - 0.10745517536997795),
2127 (minx + 0.030871009454131126, miny + 0.006645478308200836, maxz - 0.1074824407696724),
2128 (minx + 0.0343002462759614, miny + 0.0024559199810028076, maxz - 0.10740615427494049),
2129 (minx + 0.04023986402899027, miny + 4.902482032775879e-05, maxz - 0.10724674165248871),
2130 (maxx - 0.03991828765720129, miny + 6.973743438720703e-05, maxz - 0.10704692453145981),
2131 (maxx - 0.03397867642343044, miny + 0.0025124847888946533, maxz - 0.10686022788286209),
2132 (maxx - 0.030549442395567894, miny + 0.00672275573015213, maxz - 0.1067366972565651),
2133 (maxx - 0.030549442395567894, miny + 0.011572405695915222, maxz - 0.10670943185687065),
2134 (maxx - 0.03397867642343044, miny + 0.015761971473693848, maxz - 0.10678572952747345),
2135 (maxx - 0.03991828765720129, miny + 0.0181688591837883, maxz - 0.10694513842463493),
2136 (minx + 0.04023986402899027, miny + 0.018148154020309448, maxz - 0.10714496672153473),
2137 (minx + 0.013302795588970184, maxy - 0.002780601382255554, maxz - 0.010707870125770569),
2138 (minx + 0.0009496212005615234, maxy - 0.002942140679806471, maxz - 0.030204586684703827),
2139 (minx, maxy - 0.003071820829063654, maxz - 0.053266048431396484),
2140 (minx + 0.010708402842283249, maxy - 0.0031348932534456253, maxz - 0.07371294498443604),
2141 (minx + 0.03020550962537527, maxy - 0.003114458406344056, maxz - 0.08606655150651932),
2142 (maxx - 0.03374953381717205, maxy - 0.003015991533175111, maxz - 0.08701672777533531),
2143 (maxx - 0.01330280676484108, maxy - 0.0028658765368163586, maxz - 0.07630888000130653),
2144 (maxx - 0.0009496286511421204, maxy - 0.0027043374720960855, maxz - 0.056812167167663574),
2145 (maxx, maxy - 0.0025746573228389025, maxz - 0.033750712871551514),
2146 (maxx - 0.010708380490541458, maxy - 0.002511584199965, maxz - 0.013303808867931366),
2147 (maxx - 0.03020548354834318, maxy - 0.0025320190470665693, maxz - 0.0009501948952674866),
2148 (minx + 0.03374955803155899, maxy - 0.0026304861530661583, maxz),
2149 (minx + 0.014472760260105133, maxy - 0.019589224830269814, maxz - 0.01180487871170044),
2150 (minx + 0.002567145973443985, maxy - 0.019744910299777985, maxz - 0.03059517592191696),
2151 (minx + 0.001651916652917862, maxy - 0.019869891926646233, maxz - 0.052821069955825806),
2152 (minx + 0.011972300708293915, maxy - 0.019930677488446236, maxz - 0.07252714410424232),
2153 (minx + 0.03076297417283058, maxy - 0.019910985603928566, maxz - 0.0844331718981266),
2154 (maxx - 0.034027633257210255, maxy - 0.019816085696220398, maxz - 0.0853489525616169),
2155 (maxx - 0.014321718364953995, maxy - 0.01967141032218933, maxz - 0.07502909749746323),
2156 (maxx - 0.002416089177131653, maxy - 0.01951572299003601, maxz - 0.056238800287246704),
2157 (maxx - 0.0015008561313152313, maxy - 0.019390743225812912, maxz - 0.03401290625333786),
2158 (maxx - 0.011821221560239792, maxy - 0.01932995393872261, maxz - 0.014306828379631042),
2159 (maxx - 0.03061189129948616, maxy - 0.01934964768588543, maxz - 0.0024007856845855713),
2160 (minx + 0.03417872078716755, maxy - 0.019444547593593597, maxz - 0.001484982669353485),
2161 (minx + 0.043508310547622386, maxy - 0.005668943747878075, maxz - 0.043508365750312805),
2162 (minx + 0.029034355655312538, maxy - 0.019612153992056847, maxz - 0.027617476880550385),
2163 (minx + 0.023084014654159546, maxy - 0.01968996599316597, maxz - 0.037008725106716156),
2164 (minx + 0.022626593708992004, maxy - 0.01975242979824543, maxz - 0.048117056488990784),
2165 (minx + 0.027784643694758415, maxy - 0.019782811403274536, maxz - 0.05796600878238678),
2166 (minx + 0.03717608004808426, maxy - 0.019772969186306, maxz - 0.06391655653715134),
2167 (maxx - 0.03873214777559042, maxy - 0.019725536927580833, maxz - 0.06437425315380096),
2168 (maxx - 0.02888327743858099, maxy - 0.019653232768177986, maxz - 0.059216469526290894),
2169 (maxx - 0.022932931780815125, maxy - 0.019575420767068863, maxz - 0.04982522130012512),
2170 (maxx - 0.022475499659776688, maxy - 0.019512956961989403, maxz - 0.0387168824672699),
2171 (maxx - 0.0276335496455431, maxy - 0.019482573494315147, maxz - 0.0288679301738739),
2172 (maxx - 0.03702498506754637, maxy - 0.019492419436573982, maxz - 0.022917382419109344),
2173 (minx + 0.038883245550096035, maxy - 0.0195398461073637, maxz - 0.022459670901298523),
2174 (minx + 0.029087782837450504, maxy - 0.03150090575218201, maxz - 0.027552828192710876),
2175 (minx + 0.023137442767620087, maxy - 0.03157871589064598, maxz - 0.03694407641887665),
2176 (minx + 0.022680018097162247, maxy - 0.03164118155837059, maxz - 0.04805241525173187),
2177 (minx + 0.027838071808218956, maxy - 0.031671565026044846, maxz - 0.05790136009454727),
2178 (minx + 0.0372295081615448, maxy - 0.03166172280907631, maxz - 0.06385190784931183),
2179 (maxx - 0.03867871919646859, maxy - 0.03161429241299629, maxz - 0.06430960446596146),
2180 (maxx - 0.028829848393797874, maxy - 0.03154198080301285, maxz - 0.05915181338787079),
2181 (maxx - 0.022879503667354584, maxy - 0.031464170664548874, maxz - 0.04976056516170502),
2182 (maxx - 0.022422071546316147, maxy - 0.03140170872211456, maxz - 0.03865223377943039),
2183 (maxx - 0.02758011966943741, maxy - 0.03137132152915001, maxz - 0.028803281486034393),
2184 (maxx - 0.03697155695408583, maxy - 0.031381167471408844, maxz - 0.022852733731269836),
2185 (minx + 0.038936673663556576, maxy - 0.03142859786748886, maxz - 0.022395022213459015),
2186 (minx + 0.029038896784186363, maxy - 0.020622700452804565, maxz - 0.027611978352069855),
2187 (minx + 0.02308855764567852, maxy - 0.02070051059126854, maxz - 0.03700323402881622),
2188 (minx + 0.02263113297522068, maxy - 0.020762978121638298, maxz - 0.04811156541109085),
2189 (minx + 0.02778918668627739, maxy - 0.020793357864022255, maxz - 0.05796051025390625),
2190 (minx + 0.037180622573941946, maxy - 0.02078351564705372, maxz - 0.0639110580086708),
2191 (maxx - 0.03872760524973273, maxy - 0.020736083388328552, maxz - 0.06436875835061073),
2192 (maxx - 0.028878736309707165, maxy - 0.020663777366280556, maxz - 0.059210970997810364),
2193 (maxx - 0.02292838878929615, maxy - 0.020585965365171432, maxz - 0.04981972277164459),
2194 (maxx - 0.022470960393548012, maxy - 0.020523501560091972, maxz - 0.038711391389369965),
2195 (maxx - 0.027629008516669273, maxy - 0.020493119955062866, maxz - 0.02886243909597397),
2196 (maxx - 0.03702044300734997, maxy - 0.020502964034676552, maxz - 0.022911883890628815),
2197 (minx + 0.03888778714463115, maxy - 0.02055039070546627, maxz - 0.022454172372817993),
2198 (minx + 0.03503026906400919, maxy - 0.0326739065349102, maxz - 0.03399384766817093),
2199 (minx + 0.03150810860097408, maxy - 0.032719966024160385, maxz - 0.039552778005599976),
2200 (minx + 0.03123734798282385, maxy - 0.03275693953037262, maxz - 0.04612809419631958),
2201 (minx + 0.034290531650185585, maxy - 0.032774921506643295, maxz - 0.051957935094833374),
2202 (minx + 0.039849569322541356, maxy - 0.0327690951526165, maxz - 0.0554802268743515),
2203 (maxx - 0.04059170465916395, maxy - 0.03274102136492729, maxz - 0.055751144886016846),
2204 (maxx - 0.03476190101355314, maxy - 0.032698217779397964, maxz - 0.05269812047481537),
2205 (maxx - 0.031239738687872887, maxy - 0.03265216201543808, maxz - 0.04713919758796692),
2206 (maxx - 0.03096897155046463, maxy - 0.032615188509225845, maxz - 0.040563881397247314),
2207 (maxx - 0.03402215428650379, maxy - 0.03259720280766487, maxz - 0.03473402559757233),
2208 (maxx - 0.03958118986338377, maxy - 0.032603029161691666, maxz - 0.031211741268634796),
2209 (minx + 0.04086008481681347, maxy - 0.032631102949380875, maxz - 0.030940808355808258),
2210 (minx + 0.03971285093575716, miny + 0.029022332280874252, maxz - 0.05597035586833954),
2211 (maxx - 0.03359287604689598, miny + 0.029201623052358627, maxz - 0.034330859780311584),
2212 (minx + 0.03072980046272278, miny + 0.029035013169050217, maxz - 0.04621553421020508),
2213 (minx + 0.031012218445539474, miny + 0.029073577374219894, maxz - 0.03935709595680237),
2214 (minx + 0.04076687735505402, miny + 0.029166262596845627, maxz - 0.03037431836128235),
2215 (minx + 0.034451283514499664, maxy - 0.03338594362139702, maxz - 0.033365122973918915),
2216 (minx + 0.030692334286868572, maxy - 0.03343509882688522, maxz - 0.039297766983509064),
2217 (minx + 0.03040337096899748, maxy - 0.03347455710172653, maxz - 0.04631512612104416),
2218 (minx + 0.03366181440651417, maxy - 0.03349374979734421, maxz - 0.05253690481185913),
2219 (minx + 0.03959457715973258, maxy - 0.033487528562545776, maxz - 0.05629599094390869),
2220 (maxx - 0.040404647355899215, maxy - 0.033457569777965546, maxz - 0.056585125625133514),
2221 (maxx - 0.03418291546404362, maxy - 0.03341188654303551, maxz - 0.05332684516906738),
2222 (maxx - 0.030423964373767376, maxy - 0.0333627350628376, maxz - 0.047394201159477234),
2223 (maxx - 0.030134993605315685, maxy - 0.03332327678799629, maxz - 0.04037684202194214),
2224 (maxx - 0.033393437042832375, maxy - 0.03330408036708832, maxz - 0.03415506333112717),
2225 (maxx - 0.03932619746774435, maxy - 0.03331030160188675, maxz - 0.030395977199077606),
2226 (minx + 0.040673027746379375, maxy - 0.03334026038646698, maxz - 0.030106835067272186),
2227 (minx + 0.030282274819910526, maxy - 0.005427400581538677, maxz - 0.08584162965416908),
2228 (minx + 0.013463903218507767, maxy - 0.005095209460705519, maxz - 0.0108589306473732),
2229 (minx + 0.010882444679737091, maxy - 0.005447734147310257, maxz - 0.07354965433478355),
2230 (minx + 0.0011723600327968597, maxy - 0.005255943164229393, maxz - 0.03025837242603302),
2231 (minx + 0.0002274736762046814, maxy - 0.005384976044297218, maxz - 0.05320477485656738),
2232 (maxx - 0.0134431142359972, maxy - 0.005180059932172298, maxz - 0.0761326476931572),
2233 (maxx - 0.033787828870117664, maxy - 0.005329424981027842, maxz - 0.08678706735372543),
2234 (maxx - 0.0302614476531744, maxy - 0.004847868345677853, maxz - 0.0011499449610710144),
2235 (maxx - 0.00020667165517807007, maxy - 0.004890293348580599, maxz - 0.03378681838512421),
2236 (maxx - 0.0011515654623508453, maxy - 0.0050193266943097115, maxz - 0.05673321336507797),
2237 (minx + 0.033808655105531216, maxy - 0.004945843946188688, maxz - 0.0002044886350631714),
2238 (maxx - 0.010861624032258987, maxy - 0.004827534779906273, maxz - 0.01344192773103714),
2239 (minx + 0.03468604106456041, miny + 0.029121622443199158, maxz - 0.033558815717697144),
2240 (minx + 0.033914451487362385, miny + 0.02901625633239746, maxz - 0.05229640752077103),
2241 (maxx - 0.04044530005194247, miny + 0.029051613062620163, maxz - 0.056252941489219666),
2242 (maxx - 0.034364476799964905, miny + 0.02909626066684723, maxz - 0.053068459033966064),
2243 (maxx - 0.03069065511226654, miny + 0.029144294559955597, maxz - 0.04727017134428024),
2244 (maxx - 0.030408228747546673, miny + 0.029182862490415573, maxz - 0.04041174054145813),
2245 (maxx - 0.03939127502962947, miny + 0.029195547103881836, maxz - 0.030656911432743073),
2246 (minx + 0.03147818427532911, maxy - 0.033236272633075714, maxz - 0.03954096883535385),
2247 (minx + 0.031206720508635044, maxy - 0.03327333927154541, maxz - 0.0461333692073822),
2248 (minx + 0.034267837181687355, maxy - 0.033291369676589966, maxz - 0.05197836458683014),
2249 (minx + 0.03984131896868348, maxy - 0.03328552842140198, maxz - 0.05550979822874069),
2250 (maxx - 0.040582869900390506, maxy - 0.0332573801279068, maxz - 0.055781424045562744),
2251 (maxx - 0.03473791852593422, maxy - 0.033214468508958817, maxz - 0.05272047221660614),
2252 (maxx - 0.031206604093313217, maxy - 0.03316829353570938, maxz - 0.04714709520339966),
2253 (maxx - 0.030935133807361126, maxy - 0.03313122317194939, maxz - 0.040554702281951904),
2254 (maxx - 0.03399624954909086, maxy - 0.03311318904161453, maxz - 0.03470969945192337),
2255 (maxx - 0.03956972947344184, maxy - 0.03311903029680252, maxz - 0.03117825835943222),
2256 (minx + 0.04085446032695472, maxy - 0.0331471785902977, maxz - 0.03090662509202957),
2257 (minx + 0.035009496845304966, maxy - 0.03319009393453598, maxz - 0.033967599272727966),
2258 (maxx - 0.03939127502962947, miny + 0.0002205297350883484, maxz - 0.0343027338385582),
2259 (maxx - 0.030408228747546673, miny + 0.007109262049198151, maxz - 0.04120940715074539),
2260 (maxx - 0.03069065511226654, miny + 0.011931635439395905, maxz - 0.046086326241493225),
2261 (maxx - 0.034364476799964905, miny + 0.01599767804145813, maxz - 0.050220295786857605),
2262 (maxx - 0.04044530005194247, miny + 0.01821787655353546, maxz - 0.05250363051891327),
2263 (minx + 0.033914451487362385, miny + 0.015395186841487885, maxz - 0.04973094165325165),
2264 (minx + 0.03468604106456041, miny + 0.0022202134132385254, maxz - 0.03640696406364441),
2265 (minx + 0.04076687735505402, miny, maxz - 0.03412361443042755),
2266 (minx + 0.031012218445539474, miny + 0.006286241114139557, maxz - 0.040540941059589386),
2267 (minx + 0.03072980046272278, miny + 0.011108621954917908, maxz - 0.04541786015033722),
2268 (maxx - 0.03359287604689598, miny + 0.002822697162628174, maxz - 0.036896318197250366),
2269 (minx + 0.03971285093575716, miny + 0.01799735426902771, maxz - 0.05232451856136322),
2270 (minx + 0.0343002462759614, miny + 0.015705399215221405, minz + 0.10733164101839066),
2271 (minx + 0.030871009454131126, miny + 0.011495128273963928, minz + 0.10745517536997795),
2272 (minx + 0.030871009454131126, miny + 0.006645478308200836, minz + 0.1074824407696724),
2273 (minx + 0.0343002462759614, miny + 0.0024559199810028076, minz + 0.10740615427494049),
2274 (minx + 0.04023986402899027, miny + 4.902482032775879e-05, minz + 0.10724674165248871),
2275 (maxx - 0.03991828765720129, miny + 6.973743438720703e-05, minz + 0.10704692453145981),
2276 (maxx - 0.03397867642343044, miny + 0.0025124847888946533, minz + 0.10686022788286209),
2277 (maxx - 0.030549442395567894, miny + 0.00672275573015213, minz + 0.1067366972565651),
2278 (maxx - 0.030549442395567894, miny + 0.011572405695915222, minz + 0.10670943185687065),
2279 (maxx - 0.03397867642343044, miny + 0.015761971473693848, minz + 0.10678572952747345),
2280 (maxx - 0.03991828765720129, miny + 0.0181688591837883, minz + 0.10694513842463493),
2281 (minx + 0.04023986402899027, miny + 0.018148154020309448, minz + 0.10714496672153473)]
2283 # Faces
2284 myfaces = [(24, 0, 1), (24, 1, 2), (24, 2, 3), (24, 3, 4), (24, 4, 5),
2285 (24, 5, 6), (24, 6, 7), (24, 7, 8), (24, 8, 9), (24, 9, 10),
2286 (24, 10, 11), (11, 0, 24), (91, 12, 13, 93), (93, 13, 14, 94), (94, 14, 15, 92),
2287 (92, 15, 16, 90), (90, 16, 17, 96), (96, 17, 18, 95), (95, 18, 19, 99), (99, 19, 20, 98),
2288 (98, 20, 21, 101), (101, 21, 22, 97), (97, 22, 23, 100), (91, 0, 11, 100), (13, 12, 25, 26),
2289 (14, 13, 26, 27), (15, 14, 27, 28), (16, 15, 28, 29), (17, 16, 29, 30), (18, 17, 30, 31),
2290 (19, 18, 31, 32), (20, 19, 32, 33), (21, 20, 33, 34), (22, 21, 34, 35), (23, 22, 35, 36),
2291 (12, 23, 36, 25), (25, 49, 50, 26), (49, 37, 38, 50), (26, 50, 51, 27), (50, 38, 39, 51),
2292 (27, 51, 52, 28), (51, 39, 40, 52), (28, 52, 53, 29), (52, 40, 41, 53), (29, 53, 54, 30),
2293 (53, 41, 42, 54), (30, 54, 55, 31), (54, 42, 43, 55), (31, 55, 56, 32), (55, 43, 44, 56),
2294 (32, 56, 57, 33), (56, 44, 45, 57), (33, 57, 58, 34), (57, 45, 46, 58), (34, 58, 59, 35),
2295 (58, 46, 47, 59), (35, 59, 60, 36), (59, 47, 48, 60), (36, 60, 49, 25), (60, 48, 37, 49),
2296 (38, 37, 61, 62), (39, 38, 62, 63), (40, 39, 63, 64), (41, 40, 64, 65), (42, 41, 65, 66),
2297 (43, 42, 66, 67), (44, 43, 67, 68), (45, 44, 68, 69), (46, 45, 69, 70), (47, 46, 70, 71),
2298 (48, 47, 71, 72), (37, 48, 72, 61), (120, 109, 62, 61), (109, 110, 63, 62), (110, 111, 64, 63),
2299 (111, 112, 65, 64), (112, 113, 66, 65), (113, 114, 67, 66), (114, 115, 68, 67), (115, 116, 69, 68),
2300 (116, 117, 70, 69), (117, 118, 71, 70), (118, 119, 72, 71), (119, 120, 61, 72), (72, 89, 78, 61),
2301 (63, 80, 81, 64), (67, 84, 85, 68), (64, 81, 82, 65), (61, 78, 79, 62), (69, 86, 87, 70),
2302 (66, 83, 84, 67), (65, 82, 83, 66), (71, 88, 89, 72), (70, 87, 88, 71), (62, 79, 80, 63),
2303 (68, 85, 86, 69), (0, 91, 93, 1), (1, 93, 94, 2), (2, 94, 92, 3), (3, 92, 90, 4),
2304 (4, 90, 96, 5), (5, 96, 95, 6), (6, 95, 99, 7), (7, 99, 98, 8), (8, 98, 101, 9),
2305 (9, 101, 97, 10), (10, 97, 100, 11), (12, 91, 100, 23), (104, 105, 114, 113), (105, 106, 115, 114),
2306 (106, 107, 116, 115), (102, 76, 109, 120), (76, 75, 110, 109), (75, 103, 111, 110), (103, 73, 112, 111),
2307 (73, 104, 113, 112), (107, 74, 117, 116), (74, 108, 118, 117), (108, 77, 119, 118), (77, 102, 120, 119),
2308 (74, 107, 122, 131), (107, 106, 123, 122), (104, 73, 132, 125), (106, 105, 124, 123), (75, 76, 129, 130),
2309 (73, 103, 126, 132), (105, 104, 125, 124), (102, 77, 128, 127), (103, 75, 130, 126), (77, 108, 121, 128),
2310 (76, 102, 127, 129), (108, 74, 131, 121), (126, 130, 134, 133), (130, 129, 135, 134),
2311 (129, 127, 136, 135),
2312 (127, 128, 137, 136), (128, 121, 138, 137), (121, 131, 139, 138), (131, 122, 140, 139),
2313 (122, 123, 141, 140),
2314 (123, 124, 142, 141), (124, 125, 143, 142), (125, 132, 144, 143), (132, 126, 133, 144),
2315 (169, 146, 145),
2316 (169, 147, 146), (169, 148, 147), (169, 149, 148), (169, 150, 149), (169, 151, 150),
2317 (169, 152, 151), (169, 153, 152), (169, 154, 153), (169, 155, 154), (169, 156, 155),
2318 (156, 169, 145), (236, 238, 158, 157), (238, 239, 159, 158), (239, 237, 160, 159), (237, 235, 161, 160),
2319 (235, 241, 162, 161), (241, 240, 163, 162), (240, 244, 164, 163), (244, 243, 165, 164),
2320 (243, 246, 166, 165),
2321 (246, 242, 167, 166), (242, 245, 168, 167), (236, 245, 156, 145), (158, 171, 170, 157),
2322 (159, 172, 171, 158),
2323 (160, 173, 172, 159), (161, 174, 173, 160), (162, 175, 174, 161), (163, 176, 175, 162),
2324 (164, 177, 176, 163),
2325 (165, 178, 177, 164), (166, 179, 178, 165), (167, 180, 179, 166), (168, 181, 180, 167),
2326 (157, 170, 181, 168),
2327 (170, 171, 195, 194), (194, 195, 183, 182), (171, 172, 196, 195), (195, 196, 184, 183),
2328 (172, 173, 197, 196),
2329 (196, 197, 185, 184), (173, 174, 198, 197), (197, 198, 186, 185), (174, 175, 199, 198),
2330 (198, 199, 187, 186),
2331 (175, 176, 200, 199), (199, 200, 188, 187), (176, 177, 201, 200), (200, 201, 189, 188),
2332 (177, 178, 202, 201),
2333 (201, 202, 190, 189), (178, 179, 203, 202), (202, 203, 191, 190), (179, 180, 204, 203),
2334 (203, 204, 192, 191),
2335 (180, 181, 205, 204), (204, 205, 193, 192), (181, 170, 194, 205), (205, 194, 182, 193),
2336 (183, 207, 206, 182),
2337 (184, 208, 207, 183), (185, 209, 208, 184), (186, 210, 209, 185), (187, 211, 210, 186),
2338 (188, 212, 211, 187),
2339 (189, 213, 212, 188), (190, 214, 213, 189), (191, 215, 214, 190), (192, 216, 215, 191),
2340 (193, 217, 216, 192),
2341 (182, 206, 217, 193), (265, 206, 207, 254), (254, 207, 208, 255), (255, 208, 209, 256),
2342 (256, 209, 210, 257),
2343 (257, 210, 211, 258), (258, 211, 212, 259), (259, 212, 213, 260), (260, 213, 214, 261),
2344 (261, 214, 215, 262),
2345 (262, 215, 216, 263), (263, 216, 217, 264), (264, 217, 206, 265), (217, 206, 223, 234),
2346 (208, 209, 226, 225),
2347 (212, 213, 230, 229), (209, 210, 227, 226), (206, 207, 224, 223), (214, 215, 232, 231),
2348 (211, 212, 229, 228),
2349 (210, 211, 228, 227), (216, 217, 234, 233), (215, 216, 233, 232), (207, 208, 225, 224),
2350 (213, 214, 231, 230),
2351 (145, 146, 238, 236), (146, 147, 239, 238), (147, 148, 237, 239), (148, 149, 235, 237),
2352 (149, 150, 241, 235),
2353 (150, 151, 240, 241), (151, 152, 244, 240), (152, 153, 243, 244), (153, 154, 246, 243),
2354 (154, 155, 242, 246),
2355 (155, 156, 245, 242), (157, 168, 245, 236), (249, 258, 259, 250), (250, 259, 260, 251),
2356 (251, 260, 261, 252),
2357 (247, 265, 254, 221), (221, 254, 255, 220), (220, 255, 256, 248), (248, 256, 257, 218),
2358 (218, 257, 258, 249),
2359 (252, 261, 262, 219), (219, 262, 263, 253), (253, 263, 264, 222), (222, 264, 265, 247),
2360 (219, 276, 267, 252),
2361 (252, 267, 268, 251), (249, 270, 277, 218), (251, 268, 269, 250), (220, 275, 274, 221),
2362 (218, 277, 271, 248),
2363 (250, 269, 270, 249), (247, 272, 273, 222), (248, 271, 275, 220), (222, 273, 266, 253),
2364 (221, 274, 272, 247),
2365 (253, 266, 276, 219), (271, 278, 279, 275), (275, 279, 280, 274), (274, 280, 281, 272),
2366 (272, 281, 282, 273),
2367 (273, 282, 283, 266), (266, 283, 284, 276), (276, 284, 285, 267), (267, 285, 286, 268),
2368 (268, 286, 287, 269),
2369 (269, 287, 288, 270), (270, 288, 289, 277), (277, 289, 278, 271)]
2371 return myvertex, myfaces