Expose curve accuracy as a preference.

This commit is contained in:
Markus Lampert
2017-11-23 19:23:09 -08:00
committed by Yorik van Havre
parent c1aeb80652
commit cb6bfdf37e
4 changed files with 43 additions and 13 deletions

View File

@@ -42,7 +42,8 @@ class PathPreferences:
PostProcessorOutputPolicy = "PostProcessorOutputPolicy"
# Linear tolerance to use when generating Paths, eg when tesselating geometry
GeometryTolerance = "GeometryTolerance"
GeometryTolerance = "GeometryTolerance"
LibAreaCurveAccuracy = "LibAreaCurveAccuarcy"
@classmethod
def preferences(cls):
@@ -90,6 +91,10 @@ class PathPreferences:
def defaultGeometryTolerance(cls):
return cls.preferences().GetFloat(cls.GeometryTolerance, 0.01)
@classmethod
def defaultLibAreaCurveAccuracy(cls):
return cls.preferences().GetFloat(cls.LibAreaCurveAccuracy, 0.01)
@classmethod
def defaultFilePath(cls):
return cls.preferences().GetString(cls.DefaultFilePath)
@@ -125,12 +130,13 @@ class PathPreferences:
return ''
@classmethod
def setJobDefaults(cls, filePath, jobTemplate, geometryTolerance):
PathLog.track("(%s='%s', %s, %s)" % (cls.DefaultFilePath, filePath, jobTemplate, geometryTolerance))
def setJobDefaults(cls, filePath, jobTemplate, geometryTolerance, curveAccuracy):
PathLog.track("(%s='%s', %s, %s, %s)" % (cls.DefaultFilePath, filePath, jobTemplate, geometryTolerance, curveAccuracy))
pref = cls.preferences()
pref.SetString(cls.DefaultFilePath, filePath)
pref.SetString(cls.DefaultJobTemplate, jobTemplate)
pref.SetFloat(cls.GeometryTolerance, geometryTolerance)
pref.SetFloat(cls.LibAreaCurveAccuracy, curveAccuracy)
@classmethod
def postProcessorBlacklist(cls):

View File

@@ -50,7 +50,8 @@ class JobPreferencesPage:
filePath = self.form.leDefaultFilePath.text()
jobTemplate = self.form.leDefaultJobTemplate.text()
geometryTolerance = Units.Quantity(self.form.geometryTolerance.text())
PathPreferences.setJobDefaults(filePath, jobTemplate, geometryTolerance)
curveAccuracy = Units.Quantity(self.form.curveAccuracy.text())
PathPreferences.setJobDefaults(filePath, jobTemplate, geometryTolerance, curveAccuracy)
processor = str(self.form.defaultPostProcessor.currentText())
args = str(self.form.defaultPostProcessorArgs.text())
@@ -148,6 +149,7 @@ class JobPreferencesPage:
geomTol = Units.Quantity(PathPreferences.defaultGeometryTolerance(), Units.Length)
self.form.geometryTolerance.setText(geomTol.UserString)
self.form.curveAccuracy.setText(Units.Quantity(PathPreferences.defaultLibAreaCurveAccuracy(), Units.Length).UserString)
self.form.leOutputFile.setText(PathPreferences.defaultOutputFile())
self.selectComboEntry(self.form.cboOutputPolicy, PathPreferences.defaultOutputPolicy())