Merge pull request #9162 from Roy-043/Arch-Remove-obsolete-code-related-to-the-Drawing-WB
[Arch] Remove obsolete code related to the Drawing WB
This commit is contained in:
@@ -89,28 +89,7 @@ def makePanel(baseobj=None,length=0,width=0,thickness=0,placement=None,name="Pan
|
||||
return obj
|
||||
|
||||
|
||||
def makePanelView(panel,page=None,name="PanelView"):
|
||||
|
||||
"""makePanelView(panel,[page]) : Creates a Drawing view of the given panel
|
||||
in the given or active Page object (a new page will be created if none exists)."""
|
||||
|
||||
if not page:
|
||||
for o in FreeCAD.ActiveDocument.Objects:
|
||||
if o.isDerivedFrom("Drawing::FeaturePage"):
|
||||
page = o
|
||||
break
|
||||
if not page:
|
||||
page = FreeCAD.ActiveDocument.addObject("Drawing::FeaturePage",translate("Arch","Page"))
|
||||
page.Template = Draft.getParam("template",FreeCAD.getResourceDir()+'Mod/Drawing/Templates/A3_Landscape.svg')
|
||||
view = FreeCAD.ActiveDocument.addObject("Drawing::FeatureViewPython",name)
|
||||
page.addObject(view)
|
||||
PanelView(view)
|
||||
view.Source = panel
|
||||
view.Label = translate("Arch","View of")+" "+panel.Label
|
||||
return view
|
||||
|
||||
|
||||
def makePanelCut(panel,name="PanelView"):
|
||||
def makePanelCut(panel,name="PanelCut"):
|
||||
|
||||
"""makePanelCut(panel) : Creates a 2D view of the given panel
|
||||
in the 3D space, positioned at the origin."""
|
||||
@@ -816,116 +795,12 @@ class _ViewProviderPanel(ArchComponent.ViewProviderComponent):
|
||||
ArchComponent.ViewProviderComponent.updateData(self,obj,prop)
|
||||
|
||||
|
||||
class PanelView:
|
||||
|
||||
"A Drawing view for Arch Panels"
|
||||
|
||||
def __init__(self, obj):
|
||||
|
||||
obj.Proxy = self
|
||||
|
||||
# setProperties of ArchComponent will be overwritten
|
||||
# thus setProperties from ArchComponent will be explicit called to get the properties
|
||||
ArchComponent.ViewProviderComponent.setProperties(self, vobj)
|
||||
|
||||
self.setProperties(obj)
|
||||
obj.X = 10
|
||||
obj.Y = 10
|
||||
|
||||
def setProperties(self,obj):
|
||||
|
||||
pl = obj.PropertiesList
|
||||
if not "Source" in pl:
|
||||
obj.addProperty("App::PropertyLink","Source","PanelView",QT_TRANSLATE_NOOP("App::Property","The linked object"))
|
||||
if not "LineWidth" in pl:
|
||||
obj.addProperty("App::PropertyFloat","LineWidth","PanelView",QT_TRANSLATE_NOOP("App::Property","The line width of the rendered objects"))
|
||||
obj.LineWidth = 0.35
|
||||
if not "LineColor" in pl:
|
||||
obj.addProperty("App::PropertyColor","LineColor","PanelView",QT_TRANSLATE_NOOP("App::Property","The color of the panel outline"))
|
||||
obj.LineColor = (0.0,0.0,0.0)
|
||||
if not "FontSize" in pl:
|
||||
obj.addProperty("App::PropertyLength","FontSize","PanelView",QT_TRANSLATE_NOOP("App::Property","The size of the tag text"))
|
||||
if not "TextColor" in pl:
|
||||
obj.addProperty("App::PropertyColor","TextColor","PanelView",QT_TRANSLATE_NOOP("App::Property","The color of the tag text"))
|
||||
obj.TextColor = (0.0,0.0,1.0)
|
||||
if not "TextX" in pl:
|
||||
obj.addProperty("App::PropertyFloat","TextX","PanelView",QT_TRANSLATE_NOOP("App::Property","The X offset of the tag text"))
|
||||
obj.TextX = 10
|
||||
if not "TextY" in pl:
|
||||
obj.addProperty("App::PropertyFloat","TextY","PanelView",QT_TRANSLATE_NOOP("App::Property","The Y offset of the tag text"))
|
||||
obj.TextY = 10
|
||||
if not "FontName" in pl:
|
||||
obj.addProperty("App::PropertyString","FontName","PanelView",QT_TRANSLATE_NOOP("App::Property","The font of the tag text"))
|
||||
obj.FontName = "sans"
|
||||
self.Type = "PanelView"
|
||||
|
||||
def onDocumentRestored(self,obj):
|
||||
|
||||
self.setProperties(obj)
|
||||
|
||||
def execute(self, obj):
|
||||
|
||||
if obj.Source:
|
||||
if hasattr(obj.Source.Proxy,"BaseProfile"):
|
||||
p = obj.Source.Proxy.BaseProfile
|
||||
n = obj.Source.Proxy.ExtrusionVector
|
||||
import TechDraw
|
||||
svg1 = ""
|
||||
svg2 = ""
|
||||
result = ""
|
||||
svg1 = TechDraw.projectToSVG(p,DraftVecUtils.neg(n))
|
||||
if svg1:
|
||||
w = str(obj.LineWidth/obj.Scale) #don't let linewidth be influenced by the scale...
|
||||
svg1 = svg1.replace('stroke-width="0.35"','stroke-width="'+w+'"')
|
||||
svg1 = svg1.replace('stroke-width="1"','stroke-width="'+w+'"')
|
||||
svg1 = svg1.replace('stroke-width:0.01','stroke-width:'+w)
|
||||
svg1 = svg1.replace('scale(1,-1)','scale('+str(obj.Scale)+',-'+str(obj.Scale)+')')
|
||||
if obj.Source.Tag:
|
||||
svg2 = '<text id="tag'+obj.Name+'"'
|
||||
svg2 += ' fill="'+Draft.getrgb(obj.TextColor)+'"'
|
||||
svg2 += ' font-size="'+str(obj.FontSize)+'"'
|
||||
svg2 += ' style="text-anchor:start;text-align:left;'
|
||||
svg2 += ' font-family:'+obj.FontName+'" '
|
||||
svg2 += ' transform="translate(' + str(obj.TextX) + ',' + str(obj.TextY) + ')">'
|
||||
svg2 += '<tspan>'+obj.Source.Tag+'</tspan></text>\n'
|
||||
result += '<g id="' + obj.Name + '"'
|
||||
result += ' transform="'
|
||||
result += 'rotate('+str(obj.Rotation)+','+str(obj.X)+','+str(obj.Y)+') '
|
||||
result += 'translate('+str(obj.X)+','+str(obj.Y)+')'
|
||||
result += '">\n '
|
||||
result += svg1
|
||||
result += svg2
|
||||
result += '</g>'
|
||||
obj.ViewResult = result
|
||||
|
||||
def onChanged(self, obj, prop):
|
||||
|
||||
pass
|
||||
|
||||
def __getstate__(self):
|
||||
|
||||
return None
|
||||
|
||||
def __setstate__(self,state):
|
||||
|
||||
return None
|
||||
|
||||
def getDisplayModes(self,vobj):
|
||||
|
||||
modes=["Default"]
|
||||
return modes
|
||||
|
||||
def setDisplayMode(self,mode):
|
||||
|
||||
return mode
|
||||
|
||||
|
||||
class PanelCut(Draft._DraftObject):
|
||||
class PanelCut(Draft.DraftObject):
|
||||
|
||||
"A flat, 2D view of an Arch Panel"
|
||||
|
||||
def __init__(self, obj):
|
||||
Draft._DraftObject.__init__(self,obj)
|
||||
Draft.DraftObject.__init__(self,obj)
|
||||
obj.Proxy = self
|
||||
|
||||
# setProperties of ArchComponent will be overwritten
|
||||
@@ -1117,13 +992,13 @@ class PanelCut(Draft._DraftObject):
|
||||
return (outl, inl, tag)
|
||||
|
||||
|
||||
class ViewProviderPanelCut(Draft._ViewProviderDraft):
|
||||
class ViewProviderPanelCut(Draft.ViewProviderDraft):
|
||||
|
||||
"a view provider for the panel cut object"
|
||||
|
||||
def __init__(self,vobj):
|
||||
|
||||
Draft._ViewProviderDraft.__init__(self,vobj)
|
||||
Draft.ViewProviderDraft.__init__(self,vobj)
|
||||
self.setProperties(vobj)
|
||||
|
||||
def setProperties(self,vobj):
|
||||
@@ -1140,7 +1015,7 @@ class ViewProviderPanelCut(Draft._ViewProviderDraft):
|
||||
|
||||
def attach(self,vobj):
|
||||
|
||||
Draft._ViewProviderDraft.attach(self,vobj)
|
||||
Draft.ViewProviderDraft.attach(self,vobj)
|
||||
from pivy import coin
|
||||
self.coords = coin.SoCoordinate3()
|
||||
self.lineset = coin.SoLineSet()
|
||||
@@ -1190,22 +1065,22 @@ class ViewProviderPanelCut(Draft._ViewProviderDraft):
|
||||
if hasattr(vobj,"LineColor"):
|
||||
c = vobj.LineColor
|
||||
self.color.rgb.setValue(c[0],c[1],c[2])
|
||||
Draft._ViewProviderDraft.onChanged(self,vobj,prop)
|
||||
Draft.ViewProviderDraft.onChanged(self,vobj,prop)
|
||||
|
||||
def updateData(self,obj,prop):
|
||||
|
||||
if prop in ["Shape"]:
|
||||
self.onChanged(obj.ViewObject,"Margin")
|
||||
Draft._ViewProviderDraft.updateData(self,obj,prop)
|
||||
Draft.ViewProviderDraft.updateData(self,obj,prop)
|
||||
|
||||
|
||||
class PanelSheet(Draft._DraftObject):
|
||||
class PanelSheet(Draft.DraftObject):
|
||||
|
||||
"A collection of Panel cuts under a sheet"
|
||||
|
||||
def __init__(self, obj):
|
||||
|
||||
Draft._DraftObject.__init__(self,obj)
|
||||
Draft.DraftObject.__init__(self,obj)
|
||||
obj.Proxy = self
|
||||
self.setProperties(obj)
|
||||
|
||||
@@ -1375,13 +1250,13 @@ class PanelSheet(Draft._DraftObject):
|
||||
return outp
|
||||
|
||||
|
||||
class ViewProviderPanelSheet(Draft._ViewProviderDraft):
|
||||
class ViewProviderPanelSheet(Draft.ViewProviderDraft):
|
||||
|
||||
"a view provider for the panel sheet object"
|
||||
|
||||
def __init__(self,vobj):
|
||||
|
||||
Draft._ViewProviderDraft.__init__(self,vobj)
|
||||
Draft.ViewProviderDraft.__init__(self,vobj)
|
||||
self.setProperties(vobj)
|
||||
vobj.PatternSize = 0.0035
|
||||
|
||||
@@ -1401,7 +1276,7 @@ class ViewProviderPanelSheet(Draft._ViewProviderDraft):
|
||||
|
||||
def getIcon(self):
|
||||
|
||||
return ":/icons/Draft_Drawing.svg"
|
||||
return ":/icons/Arch_Panel_Sheet_Tree.svg"
|
||||
|
||||
def setEdit(self, vobj, mode):
|
||||
if mode == 1 or mode == 2:
|
||||
@@ -1421,7 +1296,7 @@ class ViewProviderPanelSheet(Draft._ViewProviderDraft):
|
||||
|
||||
def attach(self,vobj):
|
||||
|
||||
Draft._ViewProviderDraft.attach(self,vobj)
|
||||
Draft.ViewProviderDraft.attach(self,vobj)
|
||||
from pivy import coin
|
||||
self.coords = coin.SoCoordinate3()
|
||||
self.lineset = coin.SoLineSet()
|
||||
@@ -1469,7 +1344,7 @@ class ViewProviderPanelSheet(Draft._ViewProviderDraft):
|
||||
vobj.Pattern = "woodgrain"
|
||||
else:
|
||||
vobj.Pattern = "None"
|
||||
Draft._ViewProviderDraft.onChanged(self,vobj,prop)
|
||||
Draft.ViewProviderDraft.onChanged(self,vobj,prop)
|
||||
|
||||
|
||||
def updateData(self,obj,prop):
|
||||
@@ -1484,7 +1359,7 @@ class ViewProviderPanelSheet(Draft._ViewProviderDraft):
|
||||
vT = DraftVecUtils.rotate(FreeCAD.Vector(0,s,0),-math.radians(obj.GrainDirection.Value))
|
||||
self.texcoords.directionS.setValue(vS.x,vS.y,vS.z)
|
||||
self.texcoords.directionT.setValue(vT.x,vT.y,vT.z)
|
||||
Draft._ViewProviderDraft.updateData(self,obj,prop)
|
||||
Draft.ViewProviderDraft.updateData(self,obj,prop)
|
||||
|
||||
|
||||
class SheetTaskPanel(ArchComponent.ComponentTaskPanel):
|
||||
|
||||
@@ -51,7 +51,7 @@ else:
|
||||
#
|
||||
# This module provides tools to build Section plane objects.
|
||||
# It also contains functionality to produce SVG rendering of
|
||||
# section planes, to be used in TechDraw and Drawing modules
|
||||
# section planes, to be used in the TechDraw module
|
||||
|
||||
ISRENDERING = False # flag to prevent concurrent runs of the coin renderer
|
||||
|
||||
@@ -83,29 +83,6 @@ def makeSectionPlane(objectslist=None,name="Section"):
|
||||
return obj
|
||||
|
||||
|
||||
def makeSectionView(section,name="View"):
|
||||
|
||||
"""OBSOLETE
|
||||
makeSectionView(section) : Creates a Drawing view of the given Section Plane
|
||||
in the active Page object (a new page will be created if none exists"""
|
||||
|
||||
page = None
|
||||
for o in FreeCAD.ActiveDocument.Objects:
|
||||
if o.isDerivedFrom("Drawing::FeaturePage"):
|
||||
page = o
|
||||
break
|
||||
if not page:
|
||||
page = FreeCAD.ActiveDocument.addObject("Drawing::FeaturePage","Page")
|
||||
page.Template = Draft.getParam("template",FreeCAD.getResourceDir()+'Mod/Drawing/Templates/A3_Landscape.svg')
|
||||
|
||||
view = FreeCAD.ActiveDocument.addObject("Drawing::FeatureViewPython",name)
|
||||
page.addObject(view)
|
||||
_ArchDrawingView(view)
|
||||
view.Source = section
|
||||
view.Label = translate("Arch","View of")+" "+section.Name
|
||||
return view
|
||||
|
||||
|
||||
def getSectionData(source):
|
||||
|
||||
"""Returns some common data from section planes and building parts"""
|
||||
@@ -210,7 +187,7 @@ def getCutShapes(objs,cutplane,onlySolids,clip,joinArch,showHidden,groupSshapesB
|
||||
f = Part.Face(w)
|
||||
tmpSshapes.append(f)
|
||||
except Part.OCCError:
|
||||
#print "ArchDrawingView: unable to get a face"
|
||||
#print "ArchView: unable to get a face"
|
||||
tmpSshapes.append(s)
|
||||
shapes.extend(c.SubShapes if c.ShapeType == "Compound" else [c])
|
||||
if showHidden:
|
||||
@@ -461,7 +438,7 @@ def getSVG(source,
|
||||
|
||||
if should_update_svg_cache:
|
||||
svgcache = ""
|
||||
# render using the Drawing module
|
||||
# render using the TechDraw module
|
||||
import TechDraw, Part
|
||||
if vshapes:
|
||||
baseshape = Part.makeCompound(vshapes)
|
||||
@@ -591,17 +568,9 @@ def getSVG(source,
|
||||
|
||||
|
||||
def getDXF(obj):
|
||||
"""Return a DXF representation from a TechDraw/Drawing view."""
|
||||
allOn = True
|
||||
if hasattr(obj,"AllOn"):
|
||||
allOn = obj.AllOn
|
||||
elif hasattr(obj,"AlwaysOn"):
|
||||
allOn = obj.AlwaysOn
|
||||
showHidden = False
|
||||
if hasattr(obj,"showCut"):
|
||||
showHidden = obj.showCut
|
||||
elif hasattr(obj,"showHidden"):
|
||||
showHidden = obj.showHidden
|
||||
"""Return a DXF representation from a TechDraw view."""
|
||||
allOn = getattr(obj, "AllOn", True)
|
||||
showHidden = getattr(obj, "ShowHidden", False)
|
||||
result = []
|
||||
import TechDraw, Part
|
||||
if not obj.Source:
|
||||
@@ -868,8 +837,6 @@ class _CommandSectionPlane:
|
||||
FreeCAD.ActiveDocument.openTransaction(translate("Arch","Create Section Plane"))
|
||||
FreeCADGui.addModule("Arch")
|
||||
FreeCADGui.doCommand("section = Arch.makeSectionPlane("+ss+")")
|
||||
#FreeCADGui.doCommand("section.Placement = FreeCAD.DraftWorkingPlane.getPlacement()")
|
||||
#FreeCADGui.doCommand("Arch.makeSectionView(section)")
|
||||
FreeCAD.ActiveDocument.commitTransaction()
|
||||
FreeCAD.ActiveDocument.recompute()
|
||||
|
||||
@@ -1232,89 +1199,6 @@ class _ViewProviderSectionPlane:
|
||||
vobj.CutView = not vobj.CutView
|
||||
|
||||
|
||||
class _ArchDrawingView:
|
||||
|
||||
def __init__(self, obj):
|
||||
|
||||
obj.Proxy = self
|
||||
self.setProperties(obj)
|
||||
|
||||
def setProperties(self,obj):
|
||||
|
||||
pl = obj.PropertiesList
|
||||
if not "Source" in pl:
|
||||
obj.addProperty("App::PropertyLink", "Source", "Base", QT_TRANSLATE_NOOP("App::Property","The linked object"))
|
||||
if not "RenderingMode" in pl:
|
||||
obj.addProperty("App::PropertyEnumeration", "RenderingMode", "Drawing view", QT_TRANSLATE_NOOP("App::Property","The rendering mode to use"))
|
||||
obj.RenderingMode = ["Solid","Wireframe"]
|
||||
obj.RenderingMode = "Wireframe"
|
||||
if not "ShowCut" in pl:
|
||||
obj.addProperty("App::PropertyBool", "ShowCut", "Drawing view", QT_TRANSLATE_NOOP("App::Property","If cut geometry is shown or not"))
|
||||
if not "ShowFill" in pl:
|
||||
obj.addProperty("App::PropertyBool", "ShowFill", "Drawing view", QT_TRANSLATE_NOOP("App::Property","If cut geometry is filled or not"))
|
||||
if not "LineWidth" in pl:
|
||||
obj.addProperty("App::PropertyFloat", "LineWidth", "Drawing view", QT_TRANSLATE_NOOP("App::Property","The line width of the rendered objects"))
|
||||
obj.LineWidth = 0.35
|
||||
if not "FontSize" in pl:
|
||||
obj.addProperty("App::PropertyLength", "FontSize", "Drawing view", QT_TRANSLATE_NOOP("App::Property","The size of the texts inside this object"))
|
||||
obj.FontSize = 12
|
||||
if not "AlwaysOn" in pl:
|
||||
obj.addProperty("App::PropertyBool", "AlwaysOn", "Drawing view", QT_TRANSLATE_NOOP("App::Property","If checked, source objects are displayed regardless of being visible in the 3D model"))
|
||||
if not "LineColor" in pl:
|
||||
obj.addProperty("App::PropertyColor", "LineColor", "Drawing view",QT_TRANSLATE_NOOP("App::Property","The line color of the projected objects"))
|
||||
if not "FillColor" in pl:
|
||||
obj.addProperty("App::PropertyColor", "FillColor", "Drawing view",QT_TRANSLATE_NOOP("App::Property","The color of the cut faces (if turned on)"))
|
||||
obj.FillColor = (0.8, 0.8, 0.8)
|
||||
self.Type = "ArchSectionView"
|
||||
|
||||
def onDocumentRestored(self, obj):
|
||||
|
||||
self.setProperties(obj)
|
||||
|
||||
def execute(self, obj):
|
||||
|
||||
if hasattr(obj,"Source"):
|
||||
if obj.Source:
|
||||
svgbody = getSVG(source=obj.Source,
|
||||
renderMode=obj.RenderingMode,
|
||||
allOn=getattr(obj, 'AlwaysOn', False),
|
||||
showHidden=obj.ShowCut,
|
||||
scale=obj.Scale,
|
||||
linewidth=obj.LineWidth,
|
||||
lineColor=obj.LineColor,
|
||||
fontsize=obj.FontSize,
|
||||
showFill=obj.ShowFill,
|
||||
fillColor=obj.FillColor)
|
||||
if svgbody:
|
||||
result = '<g id="' + obj.Name + '"'
|
||||
result += ' transform="'
|
||||
result += 'rotate('+str(obj.Rotation)+','+str(obj.X)+','+str(obj.Y)+') '
|
||||
result += 'translate('+str(obj.X)+','+str(obj.Y)+') '
|
||||
result += 'scale('+str(obj.Scale)+','+str(obj.Scale)+')'
|
||||
result += '">\n'
|
||||
result += svgbody
|
||||
result += '</g>\n'
|
||||
obj.ViewResult = result
|
||||
|
||||
def __getstate__(self):
|
||||
|
||||
return self.Type
|
||||
|
||||
def __setstate__(self,state):
|
||||
|
||||
if state:
|
||||
self.Type = state
|
||||
|
||||
def getDisplayModes(self,vobj):
|
||||
|
||||
modes=["Default"]
|
||||
return modes
|
||||
|
||||
def setDisplayMode(self,mode):
|
||||
|
||||
return mode
|
||||
|
||||
|
||||
class SectionPlaneTaskPanel:
|
||||
|
||||
'''A TaskPanel for all the section plane object'''
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
<file>icons/Arch_Panel_Clone.svg</file>
|
||||
<file>icons/Arch_Panel_Cut.svg</file>
|
||||
<file>icons/Arch_Panel_Sheet.svg</file>
|
||||
<file>icons/Arch_Panel_Sheet_Tree.svg</file>
|
||||
<file>icons/Arch_Panel_Tree.svg</file>
|
||||
<file>icons/Arch_Pipe.svg</file>
|
||||
<file>icons/Arch_Pipe_Tree.svg</file>
|
||||
|
||||
234
src/Mod/Arch/Resources/icons/Arch_Panel_Sheet_Tree.svg
Normal file
234
src/Mod/Arch/Resources/icons/Arch_Panel_Sheet_Tree.svg
Normal file
@@ -0,0 +1,234 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="64px"
|
||||
height="64px"
|
||||
id="svg2816"
|
||||
version="1.1"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs2818">
|
||||
<linearGradient
|
||||
id="linearGradient3633">
|
||||
<stop
|
||||
style="stop-color:#fff652;stop-opacity:1;"
|
||||
offset="0"
|
||||
id="stop3635" />
|
||||
<stop
|
||||
style="stop-color:#ffbf00;stop-opacity:1;"
|
||||
offset="1"
|
||||
id="stop3637" />
|
||||
</linearGradient>
|
||||
<pattern
|
||||
patternTransform="matrix(0.67643728,-0.81829155,2.4578314,1.8844554,-26.450606,18.294947)"
|
||||
id="pattern5231"
|
||||
xlink:href="#Strips1_1-4" />
|
||||
<pattern
|
||||
id="Strips1_1-4"
|
||||
patternTransform="matrix(0.66772843,-1.0037085,2.4261878,2.3114548,3.4760987,3.534923)"
|
||||
height="1"
|
||||
width="2"
|
||||
patternUnits="userSpaceOnUse">
|
||||
<rect
|
||||
id="rect4483-4"
|
||||
height="2"
|
||||
width="1"
|
||||
y="-0.5"
|
||||
x="0"
|
||||
style="fill:#0b0b0b;stroke:none" />
|
||||
</pattern>
|
||||
<pattern
|
||||
patternTransform="matrix(0.66772843,-1.0037085,2.4261878,2.3114548,39.618381,8.9692804)"
|
||||
id="pattern5231-4"
|
||||
xlink:href="#Strips1_1-6" />
|
||||
<pattern
|
||||
id="Strips1_1-6"
|
||||
patternTransform="matrix(0.66772843,-1.0037085,2.4261878,2.3114548,3.4760987,3.534923)"
|
||||
height="1"
|
||||
width="2"
|
||||
patternUnits="userSpaceOnUse">
|
||||
<rect
|
||||
id="rect4483-0"
|
||||
height="2"
|
||||
width="1"
|
||||
y="-0.5"
|
||||
x="0"
|
||||
style="fill:#0b0b0b;stroke:none" />
|
||||
</pattern>
|
||||
<pattern
|
||||
patternTransform="matrix(0.66513382,-1.0631299,2.4167603,2.4482973,-49.762569,2.9546807)"
|
||||
id="pattern5296"
|
||||
xlink:href="#pattern5231-3" />
|
||||
<pattern
|
||||
patternTransform="matrix(0.66772843,-1.0037085,2.4261878,2.3114548,-26.336284,10.887197)"
|
||||
id="pattern5231-3"
|
||||
xlink:href="#Strips1_1-4-3" />
|
||||
<pattern
|
||||
id="Strips1_1-4-3"
|
||||
patternTransform="matrix(0.66772843,-1.0037085,2.4261878,2.3114548,3.4760987,3.534923)"
|
||||
height="1"
|
||||
width="2"
|
||||
patternUnits="userSpaceOnUse">
|
||||
<rect
|
||||
id="rect4483-4-6"
|
||||
height="2"
|
||||
width="1"
|
||||
y="-0.5"
|
||||
x="0"
|
||||
style="fill:#0b0b0b;stroke:none" />
|
||||
</pattern>
|
||||
<pattern
|
||||
patternTransform="matrix(0.42844886,-0.62155849,1.5567667,1.431396,27.948414,13.306456)"
|
||||
id="pattern5330"
|
||||
xlink:href="#Strips1_1-9" />
|
||||
<pattern
|
||||
id="Strips1_1-9"
|
||||
patternTransform="matrix(0.66772843,-1.0037085,2.4261878,2.3114548,3.4760987,3.534923)"
|
||||
height="1"
|
||||
width="2"
|
||||
patternUnits="userSpaceOnUse">
|
||||
<rect
|
||||
id="rect4483-3"
|
||||
height="2"
|
||||
width="1"
|
||||
y="-0.5"
|
||||
x="0"
|
||||
style="fill:#0b0b0b;stroke:none" />
|
||||
</pattern>
|
||||
<linearGradient
|
||||
y2="9"
|
||||
x2="24"
|
||||
y1="64"
|
||||
x1="34"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
id="linearGradient3120"
|
||||
xlink:href="#linearGradient3071" />
|
||||
<linearGradient
|
||||
id="linearGradient3071">
|
||||
<stop
|
||||
id="stop3073"
|
||||
offset="0"
|
||||
style="stop-color:#bdbdbd;stop-opacity:1" />
|
||||
<stop
|
||||
id="stop3075"
|
||||
offset="1"
|
||||
style="stop-color:#ffffff;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient3874"
|
||||
id="linearGradient3880"
|
||||
x1="56"
|
||||
y1="47"
|
||||
x2="53"
|
||||
y2="39"
|
||||
gradientUnits="userSpaceOnUse" />
|
||||
<linearGradient
|
||||
id="linearGradient3874">
|
||||
<stop
|
||||
style="stop-color:#bdbdbd;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3876" />
|
||||
<stop
|
||||
style="stop-color:#f1f1f1;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3878" />
|
||||
</linearGradient>
|
||||
<linearGradient
|
||||
y2="9"
|
||||
x2="24"
|
||||
y1="64"
|
||||
x1="34"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
id="linearGradient3075"
|
||||
xlink:href="#linearGradient3071" />
|
||||
<linearGradient
|
||||
xlink:href="#linearGradient3765"
|
||||
id="linearGradient3771"
|
||||
x1="40"
|
||||
y1="68"
|
||||
x2="34"
|
||||
y2="12"
|
||||
gradientUnits="userSpaceOnUse"
|
||||
gradientTransform="translate(147,-3)" />
|
||||
<linearGradient
|
||||
id="linearGradient3765">
|
||||
<stop
|
||||
style="stop-color:#c4a000;stop-opacity:1"
|
||||
offset="0"
|
||||
id="stop3767" />
|
||||
<stop
|
||||
style="stop-color:#fce94f;stop-opacity:1"
|
||||
offset="1"
|
||||
id="stop3769" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<metadata
|
||||
id="metadata2821">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:creator>
|
||||
<cc:Agent>
|
||||
<dc:title>[Yorik van Havre]</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:creator>
|
||||
<dc:title>Arch_Panel_Sheet_Tree</dc:title>
|
||||
<dc:date>2016-12-17</dc:date>
|
||||
<dc:relation>http://www.freecadweb.org/wiki/index.php?title=Artwork</dc:relation>
|
||||
<dc:publisher>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:publisher>
|
||||
<dc:identifier>FreeCAD/src/Mod/Arch/Resources/icons/Arch_Panel_Sheet_Tree.svg</dc:identifier>
|
||||
<dc:rights>
|
||||
<cc:Agent>
|
||||
<dc:title>FreeCAD LGPL2+</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:rights>
|
||||
<cc:license>https://www.gnu.org/copyleft/lesser.html</cc:license>
|
||||
<dc:contributor>
|
||||
<cc:Agent>
|
||||
<dc:title>[agryson] Alexander Gryson</dc:title>
|
||||
</cc:Agent>
|
||||
</dc:contributor>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
id="layer1">
|
||||
<path
|
||||
d="m 2.9999999,9 0,44 L 51,53 61,43 61,9 z"
|
||||
id="rect3005"
|
||||
style="color:#000000;fill:url(#linearGradient3075);fill-opacity:1;fill-rule:evenodd;stroke:#313131;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
<path
|
||||
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 4.9999999,51 0,-40 L 59,11 l 0,32 -6,8 z"
|
||||
id="path3096" />
|
||||
<path
|
||||
d="m 61,43 c 0,-1 -4,-4 -8,-4 0,0 2,10 -2,14 z"
|
||||
id="path3778"
|
||||
style="color:#000000;fill:url(#linearGradient3880);fill-opacity:1;fill-rule:evenodd;stroke:#4e4e4e;stroke-width:1.95121026;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
<path
|
||||
style="fill:none;stroke:#bdbdbd;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
||||
d="m 53.08551,48.1244 6.65843,-6.453618"
|
||||
id="path3125" />
|
||||
<path
|
||||
d="m 61,43 c 0,-1 -4,-4 -8,-4 0,0 2,10 -2,14 z"
|
||||
id="path3778-3"
|
||||
style="color:#000000;fill:none;stroke:#313131;stroke-width:1.95121026;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
<path
|
||||
style="color:#000000;fill:#313131;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="m 6,12 0,38 16,0 0,-6 6,0 0,6 16,0 0,-38 -16,0 0,6 -6,0 0,-6 z m 4,4 8,0 0,2 c 0,3 1,4 4,4 l 6,0 c 3,0 4,-1 4,-4 l 0,-2 8,0 0,30 -8,0 0,-2 c 0,-3 -1,-4 -4,-4 l -6,0 c -3,0 -4,1 -4,3 l 0,3 -8,0 z"
|
||||
id="path4207" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 7.9 KiB |
@@ -613,7 +613,6 @@ class ArchTest(unittest.TestCase):
|
||||
def testSection(self):
|
||||
App.Console.PrintLog ('Checking Arch Section...\n')
|
||||
s = Arch.makeSectionPlane([])
|
||||
#v = Arch.makeSectionView(s) # obsolete, uses the Drawing module
|
||||
self.failUnless(s,"Arch Section failed")
|
||||
|
||||
def testSpace(self):
|
||||
|
||||
Reference in New Issue
Block a user