ldverify.py

Wed, 20 Dec 2017 17:25:09 +0200

author
Santeri Piippo
date
Wed, 20 Dec 2017 17:25:09 +0200
changeset 6
6da1e81c5652
parent 3
1dc58f44d556
child 7
0ab0d61ccee8
permissions
-rwxr-xr-x

Added code to compute areas of triangles and quadrilaterals

3
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
1 #!/usr/bin/env python3
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
2 from parse import parse_ldraw_code
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
3
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
4 def read_ldraw(file, *, libraries):
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
5 result = list()
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
6 for line in file:
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
7 result.append(parse_ldraw_code(line))
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
8 return result
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
9
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
10 if __name__ == '__main__':
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
11 from sys import argv
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
12 libraries = [{'path': '/home/teemu/ldraw', 'role': 'official'}]
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
13 with open(argv[1], 'r') as file:
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
14 model = read_ldraw(file, libraries = libraries)
1dc58f44d556 Can now write dat files, added direct color handling
Santeri Piippo
parents:
diff changeset
15 for entry in model:
6
6da1e81c5652 Added code to compute areas of triangles and quadrilaterals
Santeri Piippo
parents: 3
diff changeset
16 if hasattr(entry, 'geometry') and len(entry.geometry) >= 3:
6da1e81c5652 Added code to compute areas of triangles and quadrilaterals
Santeri Piippo
parents: 3
diff changeset
17 print(repr(entry))
6da1e81c5652 Added code to compute areas of triangles and quadrilaterals
Santeri Piippo
parents: 3
diff changeset
18 print(entry.geometry.area())
6da1e81c5652 Added code to compute areas of triangles and quadrilaterals
Santeri Piippo
parents: 3
diff changeset
19 #print(entry.textual_representation().strip(), end = '\r\n')

mercurial