Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -41,3 +41,5 @@ nosetests.xml
outputs
models
*.lprof
Combined_Jan_Part.stl
.gitignore
16 changes: 11 additions & 5 deletions pySlice.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@
"""
from Model3D import STLModel, Vector3, Normal
from svgwrite import Drawing, rgb
import sys
import sys, os
import numpy as np

#@profile
def slice_file(f=None, resolution=0.1):
Expand Down Expand Up @@ -70,8 +71,8 @@ def slice_file(f=None, resolution=0.1):
stats = model.stats()
print(stats)

for targetz in range(0, int(stats['extents']['z']['upper']), int(interval)):
dwg = Drawing('outputs/svg/'+str(targetz)+'.svg', profile='tiny')
for index, targetz in enumerate(np.arange(0, stats['extents']['z']['upper'], interval)):
dwg = Drawing('outputs/svg/'+str(index)+'.svg', profile='tiny')
pairs = model.slice_at_z(targetz)
for pair in pairs:
dwg.add(dwg.line(pair[0], pair[1], stroke=rgb(0, 0, 0, "%")))
Expand All @@ -93,8 +94,13 @@ def slice_file(f=None, resolution=0.1):
default='models/yoda.stl',
type=argparse.FileType('rb'))
parser.add_argument('-r', '--resolution', type=float,
default=0.1,
default=0.01,
help='The Z-Axis resolution of the printer, in mms')

parser.add_argument('-d', '--dirs', type=str,
default='./outputs/svg',
help='The path to the output directory')
args = parser.parse_args()

if not os.path.exists(args.dirs):
os.makedirs(args.dirs)
slice_file(args.file, args.resolution)