From db1f97b16e43d2a89d1cef91c8272e3b4186167a Mon Sep 17 00:00:00 2001 From: Markus Lampert Date: Fri, 1 Nov 2019 14:04:34 -0700 Subject: [PATCH] Renamed BitTemplate to BitShape for clarity --- src/Mod/Path/CMakeLists.txt | 14 +++--- .../Gui/Resources/panels/ToolBitEditor.ui | 4 +- src/Mod/Path/PathScripts/PathPreferences.py | 14 +++--- src/Mod/Path/PathScripts/PathToolBit.py | 44 +++++++++--------- src/Mod/Path/PathScripts/PathToolBitEdit.py | 30 ++++++------ src/Mod/Path/PathScripts/PathToolBitGui.py | 4 +- .../Path/PathScripts/PathToolBitLibraryGui.py | 10 ++-- src/Mod/Path/PathScripts/PathUtil.py | 2 +- src/Mod/Path/Tools/Bit/t1.fctb | 2 +- src/Mod/Path/Tools/Bit/t2.fctb | 2 +- src/Mod/Path/Tools/Bit/t3.fctb | 2 +- src/Mod/Path/Tools/Bit/t4.fctb | 2 +- src/Mod/Path/Tools/Bit/t5.fctb | 2 +- src/Mod/Path/Tools/Bit/t6.fctb | 2 +- src/Mod/Path/Tools/Bit/t7.fctb | 2 +- src/Mod/Path/Tools/Bit/t8.fctb | 2 +- src/Mod/Path/Tools/Bit/t9.fctb | 2 +- src/Mod/Path/Tools/README.md | 6 +-- .../{Template => Shape}/drill-straight.fcstd | Bin .../endmill-straight.fcstd | Bin .../Tools/{Template => Shape}/v-bit.fcstd | Bin 21 files changed, 73 insertions(+), 73 deletions(-) rename src/Mod/Path/Tools/{Template => Shape}/drill-straight.fcstd (100%) rename src/Mod/Path/Tools/{Template => Shape}/endmill-straight.fcstd (100%) rename src/Mod/Path/Tools/{Template => Shape}/v-bit.fcstd (100%) diff --git a/src/Mod/Path/CMakeLists.txt b/src/Mod/Path/CMakeLists.txt index 1b854bf776..f266fce952 100644 --- a/src/Mod/Path/CMakeLists.txt +++ b/src/Mod/Path/CMakeLists.txt @@ -155,10 +155,10 @@ SET(Tools_Library_SRCS Tools/Library/endmills.fctl ) -SET(Tools_Template_SRCS - Tools/Template/drill-straight.fcstd - Tools/Template/endmill-straight.fcstd - Tools/Template/v-bit.fcstd +SET(Tools_Shape_SRCS + Tools/Shape/drill-straight.fcstd + Tools/Shape/endmill-straight.fcstd + Tools/Shape/v-bit.fcstd ) SET(PathTests_SRCS @@ -207,7 +207,7 @@ SET(all_files ${PathScripts_post_SRCS} ${Tools_Bit_SRCS} ${Tools_Library_SRCS} - ${Tools_Template_SRCS} + ${Tools_Shape_SRCS} ${Path_Images} ) @@ -264,9 +264,9 @@ INSTALL( INSTALL( FILES - ${Tools_Template_SRCS} + ${Tools_Shape_SRCS} DESTINATION - Mod/Path/Tools/Template + Mod/Path/Tools/Shape ) INSTALL( diff --git a/src/Mod/Path/Gui/Resources/panels/ToolBitEditor.ui b/src/Mod/Path/Gui/Resources/panels/ToolBitEditor.ui index ab057b2dda..29b490323b 100644 --- a/src/Mod/Path/Gui/Resources/panels/ToolBitEditor.ui +++ b/src/Mod/Path/Gui/Resources/panels/ToolBitEditor.ui @@ -78,10 +78,10 @@ 0 - + - + ... diff --git a/src/Mod/Path/PathScripts/PathPreferences.py b/src/Mod/Path/PathScripts/PathPreferences.py index 9aa1c13f7d..f03141ef86 100644 --- a/src/Mod/Path/PathScripts/PathPreferences.py +++ b/src/Mod/Path/PathScripts/PathPreferences.py @@ -43,7 +43,7 @@ PostProcessorOutputPolicy = "PostProcessorOutputPolicy" LastPathToolBit = "LastPathToolBit" LastPathToolLibrary = "LastPathToolLibrary" -LastPathToolTemplate = "LastPathToolTemplate" +LastPathToolShape = "LastPathToolShape" # Linear tolerance to use when generating Paths, eg when tessellating geometry GeometryTolerance = "GeometryTolerance" @@ -133,8 +133,8 @@ def searchPathsTool(sub='Bit'): paths.append(lastPathToolBit()) if 'Library' == sub: paths.append(lastPathToolLibrary()) - if 'Template' == sub: - paths.append(lastPathToolTemplate()) + if 'Shape' == sub: + paths.append(lastPathToolShape()) def appendPath(p, sub): if p: @@ -210,8 +210,8 @@ def lastPathToolLibrary(): def setLastPathToolLibrary(path): return preferences().SetString(LastPathToolLibrary, path) -def lastPathToolTemplate(): - return preferences().GetString(LastPathToolTemplate, pathDefaultToolsPath('Template')) -def setLastPathToolTemplate(path): - return preferences().SetString(LastPathToolTemplate, path) +def lastPathToolShape(): + return preferences().GetString(LastPathToolShape, pathDefaultToolsPath('Shape')) +def setLastPathToolShape(path): + return preferences().SetString(LastPathToolShape, path) diff --git a/src/Mod/Path/PathScripts/PathToolBit.py b/src/Mod/Path/PathScripts/PathToolBit.py index cfe40f387b..2aaa54c0a8 100644 --- a/src/Mod/Path/PathScripts/PathToolBit.py +++ b/src/Mod/Path/PathScripts/PathToolBit.py @@ -82,9 +82,9 @@ def _findTool(path, typ, dbg=False): return searchFor(path, '') -def findTemplate(path): - '''findTemplate(path) ... search for path, full and partially in all known template directories.''' - return _findTool(path, 'Template') +def findShape(path): + '''findShape(path) ... search for path, full and partially in all known shape directories.''' + return _findTool(path, 'Shape') def findBit(path): if path.endswith('.fctb'): @@ -121,14 +121,14 @@ PropertyGroupAttribute = 'Attribute' class ToolBit(object): - def __init__(self, obj, templateFile): - PathLog.track(obj.Label, templateFile) + def __init__(self, obj, shapeFile): + PathLog.track(obj.Label, shapeFile) self.obj = obj - obj.addProperty('App::PropertyFile', 'BitTemplate', 'Base', translate('PathToolBit', 'Template for bit shape')) + obj.addProperty('App::PropertyFile', 'BitShape', 'Base', translate('PathToolBit', 'Shape for bit shape')) obj.addProperty('App::PropertyLink', 'BitBody', 'Base', translate('PathToolBit', 'The parametrized body representing the tool bit')) obj.addProperty('App::PropertyFile', 'File', 'Base', translate('PathToolBit', 'The file of the tool')) - if templateFile is not None: - obj.BitTemplate = templateFile + if shapeFile is not None: + obj.BitShape = shapeFile self._setupBitShape(obj) self.onDocumentRestored(obj) @@ -149,7 +149,7 @@ class ToolBit(object): return [prop for prop in obj.PropertiesList if obj.getGroupOfProperty(prop) == PropertyGroupAttribute] def onDocumentRestored(self, obj): - obj.setEditorMode('BitTemplate', 1) + obj.setEditorMode('BitShape', 1) obj.setEditorMode('BitBody', 2) obj.setEditorMode('File', 1) obj.setEditorMode('Shape', 2) @@ -162,7 +162,7 @@ class ToolBit(object): def onChanged(self, obj, prop): PathLog.track(obj.Label, prop) - if prop == 'BitTemplate' and not 'Restore' in obj.State: + if prop == 'BitShape' and not 'Restore' in obj.State: self._setupBitShape(obj) #elif obj.getGroupOfProperty(prop) == PropertyGroupBit: # self._updateBitShape(obj, [prop]) @@ -185,7 +185,7 @@ class ToolBit(object): obj.Shape = Part.Shape() def _loadBitBody(self, obj, path=None): - p = path if path else obj.BitTemplate + p = path if path else obj.BitShape docOpened = False doc = None for d in FreeCAD.listDocuments(): @@ -193,9 +193,9 @@ class ToolBit(object): doc = FreeCAD.getDocument(d) break if doc is None: - p = findTemplate(p) - if not path and p != obj.BitTemplate: - obj.BitTemplate = p + p = findShape(p) + if not path and p != obj.BitShape: + obj.BitShape = p doc = FreeCAD.open(p) docOpened = True return (doc, docOpened) @@ -257,8 +257,8 @@ class ToolBit(object): PathUtil.setProperty(obj, prop, value) def getBitThumbnail(self, obj): - if obj.BitTemplate: - with open(obj.BitTemplate, 'rb') as fd: + if obj.BitShape: + with open(obj.BitShape, 'rb') as fd: zf = zipfile.ZipFile(fd) pf = zf.open('thumbnails/Thumbnail.png', 'r') data = pf.read() @@ -270,7 +270,7 @@ class ToolBit(object): def saveToFile(self, obj, path, setFile=True): try: with open(path, 'w') as fp: - json.dump(self.templateAttrs(obj), fp, indent=' ') + json.dump(self.shapeAttrs(obj), fp, indent=' ') if setFile: obj.File = path return True @@ -278,11 +278,11 @@ class ToolBit(object): PathLog.error("Could not save tool %s to %s (%s)" % (obj.Label, path, e)) raise - def templateAttrs(self, obj): + def shapeAttrs(self, obj): attrs = {} attrs['version'] = 2 # Path.Tool is version 1 attrs['name'] = obj.Label - attrs['template'] = obj.BitTemplate + attrs['shape'] = obj.BitShape params = {} for name in self.propertyNamesBit(obj): params[name] = PathUtil.getPropertyValueString(obj, name) @@ -311,7 +311,7 @@ class AttributePrototype(PathSetupSheetOpPrototype.OpPrototype): class ToolBitFactory(object): def CreateFromAttrs(self, attrs, name='ToolBit'): - obj = Factory.Create(name, attrs['template']) + obj = Factory.Create(name, attrs['shape']) obj.Label = attrs['name'] params = attrs['parameter'] for prop in params: @@ -335,9 +335,9 @@ class ToolBitFactory(object): PathLog.error("%s not a valid tool file (%s)" % (path, e)) raise - def Create(self, name='ToolBit', templateFile=None): + def Create(self, name='ToolBit', shapeFile=None): obj = FreeCAD.ActiveDocument.addObject('Part::FeaturePython', name) - obj.Proxy = ToolBit(obj, templateFile) + obj.Proxy = ToolBit(obj, shapeFile) return obj Factory = ToolBitFactory() diff --git a/src/Mod/Path/PathScripts/PathToolBitEdit.py b/src/Mod/Path/PathScripts/PathToolBitEdit.py index d10c66ae8c..141cb898e5 100644 --- a/src/Mod/Path/PathScripts/PathToolBitEdit.py +++ b/src/Mod/Path/PathScripts/PathToolBitEdit.py @@ -56,8 +56,8 @@ class ToolBitEditor(object): parentWidget.layout().addWidget(self.form) self.tool = tool - if not tool.BitTemplate: - self.tool.BitTemplate = 'src/Mod/Path/Tools/Template/endmill-straight.fcstd' + if not tool.BitShape: + self.tool.BitShape = 'src/Mod/Path/Tools/Shape/endmill-straight.fcstd' self.tool.Proxy.loadBitBody(self.tool) self.setupTool(self.tool) self.setupAttributes(self.tool) @@ -147,13 +147,13 @@ class ToolBitEditor(object): def updateUI(self): PathLog.track() self.form.toolName.setText(self.tool.Label) - self.form.templatePath.setText(self.tool.BitTemplate) + self.form.shapePath.setText(self.tool.BitShape) for editor in self.bitEditor: self.bitEditor[editor].updateSpinBox() - def updateTemplate(self): - self.tool.BitTemplate = str(self.form.templatePath.text()) + def updateShape(self): + self.tool.BitShape = str(self.form.shapePath.text()) self.setupTool(self.tool) self.form.toolName.setText(self.tool.Label) @@ -163,7 +163,7 @@ class ToolBitEditor(object): def updateTool(self): PathLog.track() self.tool.Label = str(self.form.toolName.text()) - self.tool.BitTemplate = str(self.form.templatePath.text()) + self.tool.BitShape = str(self.form.shapePath.text()) for editor in self.bitEditor: self.bitEditor[editor].updateProperty() @@ -177,23 +177,23 @@ class ToolBitEditor(object): self.updateUI() self.form.blockSignals(False) - def selectTemplate(self): - path = self.tool.BitTemplate + def selectShape(self): + path = self.tool.BitShape if not path: - path = PathPreferences.lastPathToolTemplate() + path = PathPreferences.lastPathToolShape() foo = QtGui.QFileDialog.getOpenFileName(self.form, - "Path - Tool Template", + "Path - Tool Shape", path, "*.fcstd") if foo and foo[0]: - PathPreferences.setLastPathToolTemplate(os.path.dirname(foo[0])) - self.form.templatePath.setText(foo[0]) - self.updateTemplate() + PathPreferences.setLastPathToolShape(os.path.dirname(foo[0])) + self.form.shapePath.setText(foo[0]) + self.updateShape() def setupUI(self): PathLog.track() self.updateUI() self.form.toolName.editingFinished.connect(self.refresh) - self.form.templatePath.editingFinished.connect(self.updateTemplate) - self.form.templateSet.clicked.connect(self.selectTemplate) + self.form.shapePath.editingFinished.connect(self.updateShape) + self.form.shapeSet.clicked.connect(self.selectShape) diff --git a/src/Mod/Path/PathScripts/PathToolBitGui.py b/src/Mod/Path/PathScripts/PathToolBitGui.py index 9b35fb69ba..f1d6ec9f5f 100644 --- a/src/Mod/Path/PathScripts/PathToolBitGui.py +++ b/src/Mod/Path/PathScripts/PathToolBitGui.py @@ -255,11 +255,11 @@ class ToolBitSelector(object): class ToolBitGuiFactory(PathToolBit.ToolBitFactory): - def Create(self, name='ToolBit', templateFile=None): + def Create(self, name='ToolBit', shapeFile=None): '''Create(name = 'ToolBit') ... creates a new tool bit. It is assumed the tool will be edited immediately so the internal bit body is still attached.''' FreeCAD.ActiveDocument.openTransaction(translate('PathToolBit', 'Create ToolBit')) - tool = PathToolBit.ToolBitFactory.Create(self, name, templateFile) + tool = PathToolBit.ToolBitFactory.Create(self, name, shapeFile) PathIconViewProvider.Attach(tool.ViewObject, name) FreeCAD.ActiveDocument.commitTransaction() return tool diff --git a/src/Mod/Path/PathScripts/PathToolBitLibraryGui.py b/src/Mod/Path/PathScripts/PathToolBitLibraryGui.py index bd976dd404..b5aba5def2 100644 --- a/src/Mod/Path/PathScripts/PathToolBitLibraryGui.py +++ b/src/Mod/Path/PathScripts/PathToolBitLibraryGui.py @@ -147,15 +147,15 @@ class ToolBitLibrary(object): toolName.setData(tool['name'], PySide.QtCore.Qt.EditRole) toolName.setEditable(False) - toolTemplate = PySide.QtGui.QStandardItem() - toolTemplate.setData(os.path.splitext(os.path.basename(tool['template']))[0], PySide.QtCore.Qt.EditRole) - toolTemplate.setEditable(False) + toolShape = PySide.QtGui.QStandardItem() + toolShape.setData(os.path.splitext(os.path.basename(tool['shape']))[0], PySide.QtCore.Qt.EditRole) + toolShape.setEditable(False) toolDiameter = PySide.QtGui.QStandardItem() toolDiameter.setData(tool['parameter']['Diameter'], PySide.QtCore.Qt.EditRole) toolDiameter.setEditable(False) - self.model.appendRow([toolNr, toolName, toolTemplate, toolDiameter]) + self.model.appendRow([toolNr, toolName, toolShape, toolDiameter]) def toolAdd(self): PathLog.track() @@ -276,7 +276,7 @@ class ToolBitLibrary(object): self.updateToolbar() def columnNames(self): - return ['Nr', 'Tool', 'Template', 'Diameter'] + return ['Nr', 'Tool', 'Shape', 'Diameter'] def setupUI(self): PathLog.track('+') diff --git a/src/Mod/Path/PathScripts/PathUtil.py b/src/Mod/Path/PathScripts/PathUtil.py index 6cc131d71a..2169d25840 100644 --- a/src/Mod/Path/PathScripts/PathUtil.py +++ b/src/Mod/Path/PathScripts/PathUtil.py @@ -86,7 +86,7 @@ def isValidBaseObject(obj): # Can't link to anything inside a geo feature group anymore PathLog.debug("%s is inside a geo feature group" % obj.Label) return False - if hasattr(obj, 'BitBody') and hasattr(obj, 'BitTemplate'): + if hasattr(obj, 'BitBody') and hasattr(obj, 'BitShape'): # ToolBit's are not valid base objects return False if obj.TypeId in NotValidBaseTypeIds: diff --git a/src/Mod/Path/Tools/Bit/t1.fctb b/src/Mod/Path/Tools/Bit/t1.fctb index 8a028c0b70..6034b99db6 100644 --- a/src/Mod/Path/Tools/Bit/t1.fctb +++ b/src/Mod/Path/Tools/Bit/t1.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T1", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "1.000 mm", diff --git a/src/Mod/Path/Tools/Bit/t2.fctb b/src/Mod/Path/Tools/Bit/t2.fctb index 72fa57f3a0..c101df5c5f 100644 --- a/src/Mod/Path/Tools/Bit/t2.fctb +++ b/src/Mod/Path/Tools/Bit/t2.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T2", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "2.000 mm", diff --git a/src/Mod/Path/Tools/Bit/t3.fctb b/src/Mod/Path/Tools/Bit/t3.fctb index 8f8821f5f5..3f0fa57bdc 100644 --- a/src/Mod/Path/Tools/Bit/t3.fctb +++ b/src/Mod/Path/Tools/Bit/t3.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T3", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "3.000 mm", diff --git a/src/Mod/Path/Tools/Bit/t4.fctb b/src/Mod/Path/Tools/Bit/t4.fctb index 094814a74c..dca2a58584 100644 --- a/src/Mod/Path/Tools/Bit/t4.fctb +++ b/src/Mod/Path/Tools/Bit/t4.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T4", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "4.000 mm", diff --git a/src/Mod/Path/Tools/Bit/t5.fctb b/src/Mod/Path/Tools/Bit/t5.fctb index a716a91029..be429741e1 100644 --- a/src/Mod/Path/Tools/Bit/t5.fctb +++ b/src/Mod/Path/Tools/Bit/t5.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T5", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "5.000 mm", diff --git a/src/Mod/Path/Tools/Bit/t6.fctb b/src/Mod/Path/Tools/Bit/t6.fctb index 54cc8743b3..e6683365fc 100644 --- a/src/Mod/Path/Tools/Bit/t6.fctb +++ b/src/Mod/Path/Tools/Bit/t6.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T6", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "6.000 mm", diff --git a/src/Mod/Path/Tools/Bit/t7.fctb b/src/Mod/Path/Tools/Bit/t7.fctb index e5df250dd6..7929d4372f 100644 --- a/src/Mod/Path/Tools/Bit/t7.fctb +++ b/src/Mod/Path/Tools/Bit/t7.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T7", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "7.000 mm", diff --git a/src/Mod/Path/Tools/Bit/t8.fctb b/src/Mod/Path/Tools/Bit/t8.fctb index 746a1338a9..14648ba07b 100644 --- a/src/Mod/Path/Tools/Bit/t8.fctb +++ b/src/Mod/Path/Tools/Bit/t8.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T8", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "8.000 mm", diff --git a/src/Mod/Path/Tools/Bit/t9.fctb b/src/Mod/Path/Tools/Bit/t9.fctb index 4f156d972c..9e5f4e8966 100644 --- a/src/Mod/Path/Tools/Bit/t9.fctb +++ b/src/Mod/Path/Tools/Bit/t9.fctb @@ -1,7 +1,7 @@ { "version": 1, "name": "T9", - "template": "src/Mod/Path/Tools/Template/endmill-straight.fcstd", + "template": "src/Mod/Path/Tools/Shape/endmill-straight.fcstd", "parameter": { "CuttingEdgeHeight": "30.000 mm", "Diameter": "9.000 mm", diff --git a/src/Mod/Path/Tools/README.md b/src/Mod/Path/Tools/README.md index c080052065..69f9e88a99 100644 --- a/src/Mod/Path/Tools/README.md +++ b/src/Mod/Path/Tools/README.md @@ -43,7 +43,7 @@ The following directory structure is used for supplied (shipped with FreeCAD) to Tools + Bit + Library - + Template + + Shape ``` Strictly speaking a user is free to store their tools wherever they want and however they want. By default the file @@ -62,7 +62,7 @@ TechDraw's templates. 1. Save the tool under path/file that makes sense to you -## How to create a new tool bit Template +## How to create a new tool bit Shape A tool bit template represents the physical shape of a tool. It does not completely desribe the bit - for that some additional parameters are needed which will be added when an actual bit is parametrized from the template. @@ -80,7 +80,7 @@ additional parameters are needed which will be added when an actual bit is param 1. Any unnamed constraint will not be editable for a specific tool 1. Once the sketch is fully constrained, close the sketch 1. Rotate the sketch around the z-axis -1. Save the document as a new file in the Template directory +1. Save the document as a new file in the Shape directory * Before saving the document make sure you have _Save Thumbnail_ selected, and _Add program logo_ deselected in FreeCAD's preferences. * Also make sure to switch to _Front View_ and _Fit content to screen_ diff --git a/src/Mod/Path/Tools/Template/drill-straight.fcstd b/src/Mod/Path/Tools/Shape/drill-straight.fcstd similarity index 100% rename from src/Mod/Path/Tools/Template/drill-straight.fcstd rename to src/Mod/Path/Tools/Shape/drill-straight.fcstd diff --git a/src/Mod/Path/Tools/Template/endmill-straight.fcstd b/src/Mod/Path/Tools/Shape/endmill-straight.fcstd similarity index 100% rename from src/Mod/Path/Tools/Template/endmill-straight.fcstd rename to src/Mod/Path/Tools/Shape/endmill-straight.fcstd diff --git a/src/Mod/Path/Tools/Template/v-bit.fcstd b/src/Mod/Path/Tools/Shape/v-bit.fcstd similarity index 100% rename from src/Mod/Path/Tools/Template/v-bit.fcstd rename to src/Mod/Path/Tools/Shape/v-bit.fcstd