Merge branch 'master' into sphinx_branch

This commit is contained in:
Dave Cowden 2015-12-01 23:02:51 -05:00
commit 9b0fa9da83

View File

@ -4,7 +4,11 @@ from .shapes import Shape
import FreeCAD
import Part
import sys
import os
import urllib as urlreader
import tempfile
class ImportTypes:
STEP = "STEP"
@ -30,11 +34,11 @@ def importStep(fileName):
"""
Accepts a file name and loads the STEP file into a cadquery shape
:param fileName: The path and name of the STEP file to be imported
"""
"""
#Now read and return the shape
try:
rshape = Part.read(fileName)
#print fileName
rshape = Part.read(fileName)
#Make sure that we extract all the solids
solids = []
@ -44,3 +48,24 @@ def importStep(fileName):
return cadquery.Workplane("XY").newObject(solids)
except:
raise ValueError("STEP File Could not be loaded")
#Loads a STEP file from an URL into a CQ.Workplane object
def importStepFromURL(url):
#Now read and return the shape
try:
webFile = urlreader.urlopen(url)
tempFile = tempfile.NamedTemporaryFile(suffix='.step', delete=False)
tempFile.write(webFile.read())
webFile.close()
tempFile.close()
rshape = Part.read(tempFile.name)
#Make sure that we extract all the solids
solids = []
for solid in rshape.Solids:
solids.append(Shape.cast(solid))
return cadquery.Workplane("XY").newObject(solids)
except:
raise ValueError("STEP File from the URL: " + url + " Could not be loaded")