63 lines
1.5 KiB
Python
63 lines
1.5 KiB
Python
#!/usr/bin/python
|
|
|
|
import pickle
|
|
import argparse
|
|
import numpy as np
|
|
|
|
|
|
def main(args):
|
|
exproom()
|
|
print("bazinga!")
|
|
|
|
|
|
def exproom():
|
|
|
|
def setWalls(i, j, orientation_deg):
|
|
penetrations[i, j] = wall_penetration
|
|
reflections[i, j] = wall_reflection
|
|
orientations[i, j] = orientation_deg / 180 * np.pi
|
|
|
|
def setGlasses(i, j, orientation_deg):
|
|
penetrations[i, j] = glass_penetration
|
|
reflections[i, j] = glass_reflection
|
|
orientations[i, j] = orientation_deg / 180 * np.pi
|
|
|
|
# manualllyyyyyyyy
|
|
penetrations = np.zeros((64, 64), dtype=float)
|
|
reflections = np.ones((64, 64), dtype=float) * -100.0
|
|
orientations = np.empty((64, 64), dtype=float) * float('nan')
|
|
|
|
wall_penetration = -30.0
|
|
wall_reflection = -15.0
|
|
glass_penetration = -3.0
|
|
glass_reflection = -3.0
|
|
# walls
|
|
for j in range(5, 61): # left
|
|
setWalls(7, j, 90)
|
|
for i in range(7, 62): # up
|
|
setWalls(i, 60, 0)
|
|
for j in range(29, 60): # right
|
|
setWalls(61, j, 90)
|
|
for j in range(5, 29): # right
|
|
setGlasses(61, j, 90)
|
|
for i in range(7, 62): # down
|
|
setWalls(i, 5, 0)
|
|
|
|
pickle.dump(
|
|
[penetrations, reflections, orientations],
|
|
open("./floormaps/exp_room.pickle", "wb"), pickle.HIGHEST_PROTOCOL
|
|
)
|
|
|
|
return
|
|
|
|
|
|
if __name__ == '__main__':
|
|
p = argparse.ArgumentParser(description='Floormap Editor')
|
|
try:
|
|
args = p.parse_args()
|
|
except BaseException as e:
|
|
print(e)
|
|
sys.exit()
|
|
|
|
main(args)
|