From b76a435b9b74b45b247c1cc4c5a1628b5a75c98f Mon Sep 17 00:00:00 2001 From: embrown Date: Wed, 21 Sep 2016 08:53:10 -0700 Subject: [PATCH 1/7] Fixes #2, Gfb.rename(). Re-wrote to change ._name and pop old name from elements if not 'default'. Preserves original objects. --- Test/test_boxfill_rename.py | 29 +++++++++++++++++++++++++++++ vcs/boxfill.py | 3 ++- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 Test/test_boxfill_rename.py diff --git a/Test/test_boxfill_rename.py b/Test/test_boxfill_rename.py new file mode 100644 index 000000000..2de4fd7ee --- /dev/null +++ b/Test/test_boxfill_rename.py @@ -0,0 +1,29 @@ +import vcs +import cdms2 + +# download sample data, if it isn't already there +vcs.download_sample_data_files() + +# make a slab, make a boxfill, get default boxfill +f = cdms2.open(vcs.sample_data + '/clt.nc') +u = f('u') +b = vcs.createboxfill() +a = vcs.init() +r = a.getboxfill() + +# rename() should rename the created boxfill +b_name = b.name +b.rename('foo') +assert(b_name != b.name) + +# rename() should not rename the default object +r.rename('bar') +assert(r.name == 'default') + +# both 'foo' and 'bar' boxfills should be get-able +a.getboxfill('foo') +a.getboxfill('bar') + +# both boxfills should be plot-able +a.boxfill(b,u) +a.boxfill(r,u) \ No newline at end of file diff --git a/vcs/boxfill.py b/vcs/boxfill.py index 1239ea145..1ce0d4dba 100755 --- a/vcs/boxfill.py +++ b/vcs/boxfill.py @@ -368,7 +368,8 @@ def rename(self, newname): warnings.warn( "You were trying to rename the 'deafult' boxfill method, it was merely copied not renamed") else: - del(vcs.elements["boxfill"][self.name]) + vcs.elements["boxfill"].pop(self.name) + self._name = newname self = vcs.elements["boxfill"][newname] return From 7ec7bb19c2f4533dcb40b97d462ee644e22c23d8 Mon Sep 17 00:00:00 2001 From: embrown Date: Wed, 30 Nov 2016 09:16:44 -0800 Subject: [PATCH 2/7] Fixes script() functions for: * boxfill.py * meshfill.py * isofill.py * textcombined.py * texttable.py * vector.py Every function had a reference to color which was expected to be float(old color format), except vector, whose .line property had changed to .linetype, which was causing an error. --- vcs/boxfill.py | 2 +- vcs/isofill.py | 2 +- vcs/meshfill.py | 2 +- vcs/textcombined.py | 2 +- vcs/texttable.py | 4 ++-- vcs/vector.py | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/vcs/boxfill.py b/vcs/boxfill.py index 5a7f4a768..d0d8b2370 100755 --- a/vcs/boxfill.py +++ b/vcs/boxfill.py @@ -1096,7 +1096,7 @@ def script(self, script_filename, mode='a'): fp.write("%s.legend = %s\n" % (unique_name, self.legend)) fp.write("%s.ext_1 = '%s'\n" % (unique_name, self.ext_1)) fp.write("%s.ext_2 = '%s'\n" % (unique_name, self.ext_2)) - fp.write("%s.missing = %g\n" % (unique_name, self.missing)) + fp.write("%s.missing = %s\n" % (unique_name, repr(self.missing))) fp.write( "%s.datawc_calendar = %g\n" % (unique_name, self.datawc_calendar)) diff --git a/vcs/isofill.py b/vcs/isofill.py index d4552ca73..742435d71 100755 --- a/vcs/isofill.py +++ b/vcs/isofill.py @@ -853,7 +853,7 @@ def script(self, script_filename, mode='a'): "%s.yaxisconvert = '%s'\n" % (unique_name, self.yaxisconvert)) # Unique attribute for isofill - fp.write("%s.missing = %g\n" % (unique_name, self.missing)) + fp.write("%s.missing = %s\n" % (unique_name, repr(self.missing))) fp.write("%s.ext_1 = '%s'\n" % (unique_name, self.ext_1)) fp.write("%s.ext_2 = '%s'\n" % (unique_name, self.ext_2)) fp.write( diff --git a/vcs/meshfill.py b/vcs/meshfill.py index 8d40618a7..fa2a25ed4 100644 --- a/vcs/meshfill.py +++ b/vcs/meshfill.py @@ -897,7 +897,7 @@ def script(self, script_filename, mode='a'): fp.write("%s.legend = '%s'\n" % (unique_name, self.legend)) fp.write("%s.mesh = '%s'\n" % (unique_name, self.mesh)) fp.write("%s.wrap = '%s'\n" % (unique_name, self.wrap)) - fp.write("%s.missing = %g\n\n" % (unique_name, self.missing)) + fp.write("%s.missing = %s\n\n" % (unique_name, repr(self.missing))) fp.write( "%s.colormap = '%s'\n\n" % (unique_name, repr( diff --git a/vcs/textcombined.py b/vcs/textcombined.py index 79fccb0f5..ab8e7b175 100644 --- a/vcs/textcombined.py +++ b/vcs/textcombined.py @@ -500,7 +500,7 @@ def script(self, script_filename=None, mode=None): fp.write("%s.font = %g\n" % (unique_name, self.font)) fp.write("%s.spacing = %g\n" % (unique_name, self.spacing)) fp.write("%s.expansion = %g\n" % (unique_name, self.expansion)) - fp.write("%s.color = %g\n\n" % (unique_name, self.color)) + fp.write("%s.color = %s\n\n" % (unique_name, repr(self.color))) fp.write( "%s.fillincolor = %g\n\n" % (unique_name, self.fillincolor)) diff --git a/vcs/texttable.py b/vcs/texttable.py index 6598e3d51..3a164b7f0 100755 --- a/vcs/texttable.py +++ b/vcs/texttable.py @@ -555,8 +555,8 @@ def script(self, script_filename=None, mode=None): fp.write("%s.font = %g\n" % (unique_name, self.font)) fp.write("%s.spacing = %g\n" % (unique_name, self.spacing)) fp.write("%s.expansion = %g\n" % (unique_name, self.expansion)) - fp.write("%s.color = %g\n\n" % (unique_name, self.color)) - fp.write("%s.backgroundcolor = %g\n\n" % (unique_name, self.backgroundcolor)) + fp.write("%s.color = %s\n\n" % (unique_name, repr(self.color))) + fp.write("%s.backgroundcolor = %s\n\n" % (unique_name, repr(self.backgroundcolor))) fp.write("%s.backgroundopacity = %g\n\n" % (unique_name, self.backgroundopacity)) fp.write( "%s.fillincolor = %g\n\n" % diff --git a/vcs/vector.py b/vcs/vector.py index f108751a5..c6fe67f17 100755 --- a/vcs/vector.py +++ b/vcs/vector.py @@ -914,7 +914,7 @@ def script(self, script_filename=None, mode=None): "%s.yaxisconvert = '%s'\n" % (unique_name, self.yaxisconvert)) # Unique attribute for vector - fp.write("%s.line = %s\n" % (unique_name, self.line)) + fp.write("%s.linetype = %s\n" % (unique_name, self.linetype)) fp.write("%s.linecolor = %s\n" % (unique_name, self.linecolor)) fp.write("%s.linewidth = %s\n" % (unique_name, self.linewidth)) fp.write("%s.scale = %s\n" % (unique_name, self.scale)) From 489882acf2116926a797dca78c3fbc74fdce0179 Mon Sep 17 00:00:00 2001 From: embrown Date: Wed, 30 Nov 2016 16:18:50 -0800 Subject: [PATCH 3/7] Added test for script() fix --- Test/test_script_for_py.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 Test/test_script_for_py.py diff --git a/Test/test_script_for_py.py b/Test/test_script_for_py.py new file mode 100644 index 000000000..016ce3fe7 --- /dev/null +++ b/Test/test_script_for_py.py @@ -0,0 +1,15 @@ +import vcs + +list=["boxfill","meshfill","isofill","textcombined","texttable","vector"] +for obj in list: + s='' + tc='' + if obj == 'textcombined': + vcs.createtextcombined('EXAMPLE_tt', 'qa', 'EXAMPLE_tto', '7left') + tc="'EXAMPLE_tt','EXAMPLE_tto'" + code="s=vcs.get%s(%s)" % (obj, tc) + exec(code) + try: + s.script(obj+"_script.py") + except: + raise("Python script creation broke on "+obj+".script()") From 882fb24fccb545a91e6390b09d9e2762c8e67649 Mon Sep 17 00:00:00 2001 From: embrown Date: Wed, 21 Dec 2016 15:14:50 -0800 Subject: [PATCH 4/7] Fixed all script functions to produce valid python scripts. Tested to ensure that scriptrun() on the output scripts creates objects identical to those on which script() was called. --- vcs/boxfill.py | 87 ++++++++++++---------------------------- vcs/dv3d.py | 23 ++--------- vcs/fillarea.py | 25 +++++------- vcs/isofill.py | 83 +++++++++++--------------------------- vcs/isoline.py | 83 ++++++++++++-------------------------- vcs/line.py | 20 ++++------ vcs/manageElements.py | 2 +- vcs/marker.py | 21 ++++------ vcs/meshfill.py | 91 +++++++++++++----------------------------- vcs/textcombined.py | 62 ++++++++++++++-------------- vcs/textorientation.py | 26 +++++++----- vcs/texttable.py | 29 +++++--------- vcs/unified1D.py | 14 +++---- vcs/vector.py | 19 ++++----- 14 files changed, 204 insertions(+), 381 deletions(-) diff --git a/vcs/boxfill.py b/vcs/boxfill.py index d0d8b2370..4308fccce 100755 --- a/vcs/boxfill.py +++ b/vcs/boxfill.py @@ -1015,98 +1015,61 @@ def script(self, script_filename, mode='a'): fp.write("v=vcs.init()\n\n") unique_name = '__Gfb__' + self.name - fp.write( - "#----------Boxfill (Gfb) member (attribute) listings ----------\n") + fp.write("#----------Boxfill (Gfb) member (attribute) listings ----------\n") fp.write("gfb_list=v.listelements('boxfill')\n") fp.write("if ('%s' in gfb_list):\n" % self.name) fp.write(" %s = v.getboxfill('%s')\n" % (unique_name, self.name)) fp.write("else:\n") - fp.write( - " %s = v.createboxfill('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.createboxfill('%s')\n" % (unique_name, self.name)) # Common core graphics method attributes fp.write("%s.projection = '%s'\n" % (unique_name, self.projection)) - fp.write( - "%s.xticlabels1 = '%s'\n" % - (unique_name, self.xticlabels1)) - fp.write( - "%s.xticlabels2 = '%s'\n" % - (unique_name, self.xticlabels2)) + fp.write("%s.xticlabels1 = '%s'\n" % (unique_name, self.xticlabels1)) + fp.write("%s.xticlabels2 = '%s'\n" % (unique_name, self.xticlabels2)) fp.write("%s.xmtics1 = '%s'\n" % (unique_name, self.xmtics1)) fp.write("%s.xmtics2 = '%s'\n" % (unique_name, self.xmtics2)) - fp.write( - "%s.yticlabels1 = '%s'\n" % - (unique_name, self.yticlabels1)) - fp.write( - "%s.yticlabels2 = '%s'\n" % - (unique_name, self.yticlabels2)) + fp.write("%s.yticlabels1 = '%s'\n" % (unique_name, self.yticlabels1)) + fp.write("%s.yticlabels2 = '%s'\n" % (unique_name, self.yticlabels2)) fp.write("%s.ymtics1 = '%s'\n" % (unique_name, self.ymtics1)) fp.write("%s.ymtics2 = '%s'\n" % (unique_name, self.ymtics2)) if isinstance(self.datawc_x1, (int, long, float)): fp.write("%s.datawc_x1 = %g\n" % (unique_name, self.datawc_x1)) else: - fp.write( - "%s.datawc_x1 = '%s'\n" % - (unique_name, self.datawc_x1)) + fp.write("%s.datawc_x1 = '%s'\n" % (unique_name, self.datawc_x1)) if isinstance(self.datawc_y1, (int, long, float)): fp.write("%s.datawc_y1 = %g\n" % (unique_name, self.datawc_y1)) else: - fp.write( - "%s.datawc_y1 = '%s'\n" % - (unique_name, self.datawc_y1)) + fp.write("%s.datawc_y1 = '%s'\n" % (unique_name, self.datawc_y1)) if isinstance(self.datawc_x2, (int, long, float)): fp.write("%s.datawc_x2 = %g\n" % (unique_name, self.datawc_x2)) else: - fp.write( - "%s.datawc_x2 = '%s'\n" % - (unique_name, self.datawc_x2)) + fp.write("%s.datawc_x2 = '%s'\n" % (unique_name, self.datawc_x2)) if isinstance(self.datawc_y2, (int, long, float)): fp.write("%s.datawc_y2 = %g\n" % (unique_name, self.datawc_y2)) else: - fp.write( - "%s.datawc_y2 = '%s'\n" % - (unique_name, self.datawc_y2)) - fp.write( - "%s.xaxisconvert = '%s'\n" % - (unique_name, self.xaxisconvert)) - fp.write( - "%s.yaxisconvert = '%s'\n" % - (unique_name, self.yaxisconvert)) + fp.write("%s.datawc_y2 = '%s'\n" % (unique_name, self.datawc_y2)) + fp.write("%s.xaxisconvert = '%s'\n" % (unique_name, self.xaxisconvert)) + fp.write("%s.yaxisconvert = '%s'\n" % (unique_name, self.yaxisconvert)) # Unique attribute for boxfill - fp.write( - "%s.boxfill_type = '%s'\n" % - (unique_name, self.boxfill_type)) + fp.write("%s.boxfill_type = '%s'\n" % (unique_name, self.boxfill_type)) fp.write("%s.level_1 = %g\n" % (unique_name, self.level_1)) fp.write("%s.level_2 = %g\n" % (unique_name, self.level_2)) fp.write("%s.levels = %s\n" % (unique_name, self.levels)) fp.write("%s.color_1 = %g\n" % (unique_name, self.color_1)) fp.write("%s.color_2 = %g\n" % (unique_name, self.color_2)) - fp.write( - "%s.fillareacolors = %s\n" % - (unique_name, self.fillareacolors)) - fp.write( - "%s.fillareastyle = '%s'\n" % - (unique_name, self.fillareastyle)) - fp.write( - "%s.fillareaindices = %s\n" % - (unique_name, self.fillareaindices)) - fp.write( - "%s.fillareaopacity = %s\n" % - (unique_name, self.fillareaopacity)) + fp.write("%s.fillareacolors = %s\n" % (unique_name, self.fillareacolors)) + fp.write("%s.fillareastyle = '%s'\n" % (unique_name, self.fillareastyle)) + fp.write("%s.fillareaindices = %s\n" % (unique_name, self.fillareaindices)) + fp.write("%s.fillareaopacity = %s\n" % (unique_name, self.fillareaopacity)) fp.write("%s.legend = %s\n" % (unique_name, self.legend)) - fp.write("%s.ext_1 = '%s'\n" % (unique_name, self.ext_1)) - fp.write("%s.ext_2 = '%s'\n" % (unique_name, self.ext_2)) + fp.write("%s.ext_1 = %s\n" % (unique_name, self.ext_1)) + fp.write("%s.ext_2 = %s\n" % (unique_name, self.ext_2)) fp.write("%s.missing = %s\n" % (unique_name, repr(self.missing))) - fp.write( - "%s.datawc_calendar = %g\n" % - (unique_name, self.datawc_calendar)) - fp.write( - "%s.datawc_timeunits = '%s'\n\n" % - (unique_name, self.datawc_timeunits)) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + fp.write("%s.datawc_calendar = %g\n" % (unique_name, self.datawc_calendar)) + fp.write("%s.datawc_timeunits = '%s'\n\n" % (unique_name, self.datawc_timeunits)) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/dv3d.py b/vcs/dv3d.py index 74d5219a9..2d4a8ffcd 100644 --- a/vcs/dv3d.py +++ b/vcs/dv3d.py @@ -67,9 +67,9 @@ def script(self, script_filename=None, mode=None): script_filename += ".json" else: scr_type = scr_type[-1] - if scr_type == '.scr': + if scr_type == 'scr': raise DeprecationWarning("scr script are no longer generated") - elif scr_type == ".py": + elif scr_type == "py": mode = mode + '+' py_type = script_filename[ len(script_filename) - @@ -91,24 +91,9 @@ def script(self, script_filename=None, mode=None): gtype = 'xyt' if (self._axes == "Hovmoller3D") else 'default' unique_name = 'gm3d_%s' % str(time.time() % 1)[2:] - if self.g_name == '3d_scalar': - fp.write( - '%s = vcs.get3d_scalar( %s )\n' % - (unique_name, gtype)) - if self.g_name == '3d_vector': - fp.write( - '%s = vcs.get3d_vector( %s )\n' % - (unique_name, gtype)) - if self.g_name == '3d_dual_scalar': - fp.write( - '%s = vcs.get3d_dual_scalar( %s )\n' % - (unique_name, gtype)) + fp.write('%s = vcs.get%s("%s")\n' % (unique_name, self.g_name, gtype)) for param_name in self.parameter_names: - fp.write( - '%s.%s = %s\n' % - (unique_name, - param_name, - self.cfgManager.getParameterValue(param_name))) + fp.write('%s.%s = %s\n' % (unique_name, param_name, self.cfgManager.getParameterValue(param_name))) else: # Json type mode += "+" diff --git a/vcs/fillarea.py b/vcs/fillarea.py index b5ca6e007..7f83e0441 100755 --- a/vcs/fillarea.py +++ b/vcs/fillarea.py @@ -488,33 +488,26 @@ def script(self, script_filename=None, mode=None): fp.write("v=vcs.init()\n\n") unique_name = '__Tf__' + self.name - fp.write( - "#----------Fillarea (Tf) member (attribute) listings ----------\n") + fp.write("#----------Fillarea (Tf) member (attribute) listings ----------\n") fp.write("tf_list=v.listelements('fillarea')\n") fp.write("if ('%s' in tf_list):\n" % self.name) - fp.write( - " %s = v.getfillarea('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.getfillarea('%s')\n" % (unique_name, self.name)) fp.write("else:\n") - fp.write( - " %s = v.createfillarea('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.createfillarea('%s')\n" % (unique_name, self.name)) fp.write("%s.style = %s\n" % (unique_name, self.style)) fp.write("%s.index = %s\n" % (unique_name, self.index)) fp.write("%s.color = %s\n\n" % (unique_name, self.color)) fp.write("%s.opacity = %s\n\n" % (unique_name, self.opacity)) fp.write("%s.priority = %d\n" % (unique_name, self.priority)) fp.write("%s.viewport = %s\n" % (unique_name, self.viewport)) - fp.write( - "%s.worldcoordinate = %s\n" % - (unique_name, self.worldcoordinate)) + fp.write("%s.worldcoordinate = %s\n" % (unique_name, self.worldcoordinate)) fp.write("%s.x = %s\n" % (unique_name, self.x)) fp.write("%s.y = %s\n\n" % (unique_name, self.y)) - fp.write("%s.projection = %s\n\n" % (unique_name, self.projection)) - fp.write( - "%s.colormap = %s\n\n" % - (unique_name, repr( - self.colormap))) + fp.write("%s.projection = '%s'\n\n" % (unique_name, self.projection)) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/isofill.py b/vcs/isofill.py index 742435d71..319012f11 100755 --- a/vcs/isofill.py +++ b/vcs/isofill.py @@ -789,91 +789,56 @@ def script(self, script_filename, mode='a'): fp.write("v=vcs.init()\n\n") unique_name = '__Gfi__' + self.name - fp.write( - "#----------Isofill (Gfi) member (attribute) listings ----------\n") + fp.write("#----------Isofill (Gfi) member (attribute) listings ----------\n") fp.write("gfi_list=v.listelements('isofill')\n") fp.write("if ('%s' in gfi_list):\n" % self.name) fp.write(" %s = v.getisofill('%s')\n" % (unique_name, self.name)) fp.write("else:\n") - fp.write( - " %s = v.createisofill('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.createisofill('%s')\n" % (unique_name, self.name)) # Common core graphics method attributes fp.write("%s.projection = '%s'\n" % (unique_name, self.projection)) - fp.write( - "%s.xticlabels1 = '%s'\n" % - (unique_name, self.xticlabels1)) - fp.write( - "%s.xticlabels2 = '%s'\n" % - (unique_name, self.xticlabels2)) + fp.write("%s.xticlabels1 = '%s'\n" % (unique_name, self.xticlabels1)) + fp.write("%s.xticlabels2 = '%s'\n" % (unique_name, self.xticlabels2)) fp.write("%s.xmtics1 = '%s'\n" % (unique_name, self.xmtics1)) fp.write("%s.xmtics2 = '%s'\n" % (unique_name, self.xmtics2)) - fp.write( - "%s.yticlabels1 = '%s'\n" % - (unique_name, self.yticlabels1)) - fp.write( - "%s.yticlabels2 = '%s'\n" % - (unique_name, self.yticlabels2)) + fp.write("%s.yticlabels1 = '%s'\n" % (unique_name, self.yticlabels1)) + fp.write( "%s.yticlabels2 = '%s'\n" % (unique_name, self.yticlabels2)) fp.write("%s.ymtics1 = '%s'\n" % (unique_name, self.ymtics1)) fp.write("%s.ymtics2 = '%s'\n" % (unique_name, self.ymtics2)) if isinstance(self.datawc_x1, (int, long, float)): fp.write("%s.datawc_x1 = %g\n" % (unique_name, self.datawc_x1)) else: - fp.write( - "%s.datawc_x1 = '%s'\n" % - (unique_name, self.datawc_x1)) + fp.write("%s.datawc_x1 = '%s'\n" % (unique_name, self.datawc_x1)) if isinstance(self.datawc_y1, (int, long, float)): fp.write("%s.datawc_y1 = %g\n" % (unique_name, self.datawc_y1)) else: - fp.write( - "%s.datawc_y1 = '%s'\n" % - (unique_name, self.datawc_y1)) + fp.write("%s.datawc_y1 = '%s'\n" % (unique_name, self.datawc_y1)) if isinstance(self.datawc_x2, (int, long, float)): fp.write("%s.datawc_x2 = %g\n" % (unique_name, self.datawc_x2)) else: - fp.write( - "%s.datawc_x2 = '%s'\n" % - (unique_name, self.datawc_x2)) + fp.write("%s.datawc_x2 = '%s'\n" % (unique_name, self.datawc_x2)) if isinstance(self.datawc_y2, (int, long, float)): fp.write("%s.datawc_y2 = %g\n" % (unique_name, self.datawc_y2)) else: - fp.write( - "%s.datawc_y2 = '%s'\n" % - (unique_name, self.datawc_y2)) - fp.write( - "%s.datawc_calendar = %g\n" % - (unique_name, self.datawc_calendar)) - fp.write( - "%s.datawc_timeunits = '%s'\n\n" % - (unique_name, self.datawc_timeunits)) - fp.write( - "%s.xaxisconvert = '%s'\n" % - (unique_name, self.xaxisconvert)) - fp.write( - "%s.yaxisconvert = '%s'\n" % - (unique_name, self.yaxisconvert)) + fp.write("%s.datawc_y2 = '%s'\n" % (unique_name, self.datawc_y2)) + fp.write("%s.datawc_calendar = %g\n" % (unique_name, self.datawc_calendar)) + fp.write("%s.datawc_timeunits = '%s'\n\n" % (unique_name, self.datawc_timeunits)) + fp.write("%s.xaxisconvert = '%s'\n" % (unique_name, self.xaxisconvert)) + fp.write("%s.yaxisconvert = '%s'\n" % (unique_name, self.yaxisconvert)) # Unique attribute for isofill fp.write("%s.missing = %s\n" % (unique_name, repr(self.missing))) - fp.write("%s.ext_1 = '%s'\n" % (unique_name, self.ext_1)) - fp.write("%s.ext_2 = '%s'\n" % (unique_name, self.ext_2)) - fp.write( - "%s.fillareastyle = '%s'\n" % - (unique_name, self.fillareastyle)) - fp.write( - "%s.fillareaindices = %s\n" % - (unique_name, self.fillareaindices)) - fp.write( - "%s.fillareacolors = %s\n" % - (unique_name, self.fillareacolors)) - fp.write( - "%s.fillareaopacity = '%s'\n" % - (unique_name, self.fillareaopacity)) + fp.write("%s.ext_1 = %s\n" % (unique_name, self.ext_1)) + fp.write("%s.ext_2 = %s\n" % (unique_name, self.ext_2)) + fp.write("%s.fillareastyle = '%s'\n" % (unique_name, self.fillareastyle)) + fp.write("%s.fillareaindices = %s\n" % (unique_name, self.fillareaindices)) + fp.write("%s.fillareacolors = %s\n" % (unique_name, self.fillareacolors)) + fp.write("%s.fillareaopacity = %s\n" %(unique_name, self.fillareaopacity)) fp.write("%s.levels = %s\n" % (unique_name, self.levels)) fp.write("%s.legend = %s\n" % (unique_name, self.legend)) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/isoline.py b/vcs/isoline.py index f67dd0e4e..ed79c1b4f 100755 --- a/vcs/isoline.py +++ b/vcs/isoline.py @@ -1095,92 +1095,61 @@ def script(self, script_filename, mode='a'): fp.write("v=vcs.init()\n\n") unique_name = '__Gi__' + self.name - fp.write( - "#----------Isoline (Gi) member (attribute) listings ----------\n") + fp.write("#----------Isoline (Gi) member (attribute) listings ----------\n") fp.write("gi_list=v.listelements('isoline')\n") fp.write("if ('%s' in gi_list):\n" % self.name) fp.write(" %s = v.getisoline('%s')\n" % (unique_name, self.name)) fp.write("else:\n") - fp.write( - " %s = v.createisoline('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.createisoline('%s')\n" % (unique_name, self.name)) # Common core graphics method attributes fp.write("%s.projection = '%s'\n" % (unique_name, self.projection)) - fp.write( - "%s.xticlabels1 = '%s'\n" % - (unique_name, self.xticlabels1)) - fp.write( - "%s.xticlabels2 = '%s'\n" % - (unique_name, self.xticlabels2)) + fp.write("%s.xticlabels1 = '%s'\n" % (unique_name, self.xticlabels1)) + fp.write("%s.xticlabels2 = '%s'\n" % (unique_name, self.xticlabels2)) fp.write("%s.xmtics1 = '%s'\n" % (unique_name, self.xmtics1)) fp.write("%s.xmtics2 = '%s'\n" % (unique_name, self.xmtics2)) - fp.write( - "%s.yticlabels1 = '%s'\n" % - (unique_name, self.yticlabels1)) - fp.write( - "%s.yticlabels2 = '%s'\n" % - (unique_name, self.yticlabels2)) + fp.write("%s.yticlabels1 = '%s'\n" % (unique_name, self.yticlabels1)) + fp.write("%s.yticlabels2 = '%s'\n" % (unique_name, self.yticlabels2)) fp.write("%s.ymtics1 = '%s'\n" % (unique_name, self.ymtics1)) fp.write("%s.ymtics2 = '%s'\n" % (unique_name, self.ymtics2)) if isinstance(self.datawc_x1, (int, long, float)): fp.write("%s.datawc_x1 = %g\n" % (unique_name, self.datawc_x1)) else: - fp.write( - "%s.datawc_x1 = '%s'\n" % - (unique_name, self.datawc_x1)) + fp.write("%s.datawc_x1 = '%s'\n" % (unique_name, self.datawc_x1)) if isinstance(self.datawc_y1, (int, long, float)): fp.write("%s.datawc_y1 = %g\n" % (unique_name, self.datawc_y1)) else: - fp.write( - "%s.datawc_y1 = '%s'\n" % - (unique_name, self.datawc_y1)) + fp.write("%s.datawc_y1 = '%s'\n" % (unique_name, self.datawc_y1)) if isinstance(self.datawc_x2, (int, long, float)): fp.write("%s.datawc_x2 = %g\n" % (unique_name, self.datawc_x2)) else: - fp.write( - "%s.datawc_x2 = '%s'\n" % - (unique_name, self.datawc_x2)) + fp.write("%s.datawc_x2 = '%s'\n" % (unique_name, self.datawc_x2)) if isinstance(self.datawc_y2, (int, long, float)): fp.write("%s.datawc_y2 = %g\n" % (unique_name, self.datawc_y2)) else: - fp.write( - "%s.datawc_y2 = '%s'\n" % - (unique_name, self.datawc_y2)) - fp.write( - "%s.datawc_calendar = %g\n" % - (unique_name, self.datawc_calendar)) - fp.write( - "%s.datawc_timeunits = '%s'\n\n" % - (unique_name, self.datawc_timeunits)) - fp.write( - "%s.xaxisconvert = '%s'\n" % - (unique_name, self.xaxisconvert)) - fp.write( - "%s.yaxisconvert = '%s'\n" % - (unique_name, self.yaxisconvert)) + fp.write("%s.datawc_y2 = '%s'\n" % (unique_name, self.datawc_y2)) + fp.write("%s.datawc_calendar = %g\n" % (unique_name, self.datawc_calendar)) + fp.write("%s.datawc_timeunits = '%s'\n\n" % (unique_name, self.datawc_timeunits)) + fp.write("%s.xaxisconvert = '%s'\n" % (unique_name, self.xaxisconvert)) + fp.write("%s.yaxisconvert = '%s'\n" % (unique_name, self.yaxisconvert)) # Unique attribute for isoline - fp.write("%s.label = '%s'\n" % (unique_name, self.label)) - fp.write("%s.labelskipdistance = '%s'\n" % - (unique_name, self.labelskipdistance)) - fp.write("%s.labelbackgroundcolors = '%s'\n" % - (unique_name, self.labelbackgroundcolors)) - fp.write("%s.labelbackgroundopacities = '%s'\n" % - (unique_name, self.labelbackgroundopacities)) + fp.write("%s.label = %s\n" % (unique_name, self.label)) + fp.write("%s.labelskipdistance = %s\n" % (unique_name, self.labelskipdistance)) + fp.write("%s.labelbackgroundcolors = %s\n" % (unique_name, self.labelbackgroundcolors)) + fp.write("%s.labelbackgroundopacities = %s\n" % (unique_name, self.labelbackgroundopacities)) fp.write("%s.linetypes = %s\n" % (unique_name, self.linetypes)) fp.write("%s.linecolors = %s\n" % (unique_name, self.linecolors)) fp.write("%s.linewidths = %s\n" % (unique_name, self.linewidths)) fp.write("%s.text = %s\n" % (unique_name, self.text)) fp.write("%s.textcolors = %s\n" % (unique_name, self.textcolors)) fp.write("%s.level = %s\n\n" % (unique_name, self.level)) - - fp.write("%s.clockwise = '%s'\n" % (unique_name, self.clockwise)) - fp.write("%s.scale = '%s'\n" % (unique_name, self.scale)) - fp.write("%s.angle = '%s'\n" % (unique_name, self.angle)) - fp.write("%s.spacing = '%s'\n" % (unique_name, self.spacing)) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + fp.write("%s.clockwise = %s\n" % (unique_name, self.clockwise)) + fp.write("%s.scale = %s\n" % (unique_name, self.scale)) + fp.write("%s.angle = %s\n" % (unique_name, self.angle)) + fp.write("%s.spacing = %s\n" % (unique_name, self.spacing)) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/line.py b/vcs/line.py index cae3b1d6c..6cda83699 100755 --- a/vcs/line.py +++ b/vcs/line.py @@ -406,9 +406,6 @@ def list(self): # # ########################################################################## def script(self, script_filename=None, mode=None): - """ - docstring moved to xmldocs -""" if (script_filename is None): raise ValueError( 'Error - Must provide an output script file name.') @@ -449,8 +446,7 @@ def script(self, script_filename=None, mode=None): fp.write("v=vcs.init()\n\n") unique_name = '__Tl__' + self.name - fp.write( - "#----------Line (Tl) member (attribute) listings ----------\n") + fp.write("#----------Line (Tl) member (attribute) listings ----------\n") fp.write("tl_list=v.listelements('line')\n") fp.write("if ('%s' in tl_list):\n" % self.name) fp.write(" %s = v.getline('%s')\n" % (unique_name, self.name)) @@ -461,16 +457,14 @@ def script(self, script_filename=None, mode=None): fp.write("%s.color = %s\n" % (unique_name, self.color)) fp.write("%s.priority = %d\n" % (unique_name, self.priority)) fp.write("%s.viewport = %s\n" % (unique_name, self.viewport)) - fp.write( - "%s.worldcoordinate = %s\n" % - (unique_name, self.worldcoordinate)) + fp.write("%s.worldcoordinate = %s\n" % (unique_name, self.worldcoordinate)) fp.write("%s.x = %s\n" % (unique_name, self.x)) fp.write("%s.y = %s\n\n" % (unique_name, self.y)) - fp.write("%s.projection = %s\n\n" % (unique_name, self.projection)) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + fp.write("%s.projection = '%s'\n\n" % (unique_name, self.projection)) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/manageElements.py b/vcs/manageElements.py index 135f388ee..5f2f5fcaa 100644 --- a/vcs/manageElements.py +++ b/vcs/manageElements.py @@ -1415,7 +1415,7 @@ def gettextcombined(Tt_name_src='default', To_name_src=None, string=None, font=N """ %s - :param Tt_name_src: Name of created object + :param Tt_name_src: Name of parent texttable object :type Tt_name_src: str :param To_name_src: Name of parent textorientation object diff --git a/vcs/marker.py b/vcs/marker.py index f2554b53f..be89e8db0 100755 --- a/vcs/marker.py +++ b/vcs/marker.py @@ -487,30 +487,25 @@ def script(self, script_filename=None, mode=None): fp.write("v=vcs.init()\n\n") unique_name = '__Tm__' + self.name - fp.write( - "#----------Marker (Tm) member (attribute) listings ----------\n") + fp.write("#----------Marker (Tm) member (attribute) listings ----------\n") fp.write("tm_list=v.listelements('marker')\n") fp.write("if ('%s' in tm_list):\n" % self.name) fp.write(" %s = v.getmarker('%s')\n" % (unique_name, self.name)) fp.write("else:\n") - fp.write( - " %s = v.createmarker('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.createmarker('%s')\n" % (unique_name, self.name)) fp.write("%s.type = %s\n" % (unique_name, self.type)) fp.write("%s.size = %s\n" % (unique_name, self.size)) fp.write("%s.color = %s\n\n" % (unique_name, self.color)) fp.write("%s.priority = %d\n" % (unique_name, self.priority)) fp.write("%s.viewport = %s\n" % (unique_name, self.viewport)) - fp.write( - "%s.worldcoordinate = %s\n" % - (unique_name, self.worldcoordinate)) + fp.write("%s.worldcoordinate = %s\n" % (unique_name, self.worldcoordinate)) fp.write("%s.x = %s\n" % (unique_name, self.x)) fp.write("%s.y = %s\n" % (unique_name, self.y)) - fp.write("%s.projection = %s\n" % (unique_name, self.projection)) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + fp.write("%s.projection = '%s'\n" % (unique_name, self.projection)) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/meshfill.py b/vcs/meshfill.py index fa2a25ed4..0e72821a0 100644 --- a/vcs/meshfill.py +++ b/vcs/meshfill.py @@ -816,92 +816,57 @@ def script(self, script_filename, mode='a'): fp.write("v=vcs.init()\n\n") unique_name = '__Gfm__' + self.name - fp.write( - "#----------Meshfill (Gfm) member (attribute) listings ----------\n") + fp.write("#----------Meshfill (Gfm) member (attribute) listings ----------\n") fp.write("gfm_list=v.listelements('meshfill')\n") fp.write("if ('%s' in gfm_list):\n" % self.name) - fp.write( - " %s = v.getmeshfill('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.getmeshfill('%s')\n" % (unique_name, self.name)) fp.write("else:\n") - fp.write( - " %s = v.createmeshfill('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.createmeshfill('%s')\n" % (unique_name, self.name)) # Common core graphics method attributes fp.write("%s.projection = '%s'\n" % (unique_name, self.projection)) - fp.write( - "%s.xticlabels1 = '%s'\n" % - (unique_name, self.xticlabels1)) - fp.write( - "%s.xticlabels2 = '%s'\n" % - (unique_name, self.xticlabels2)) + fp.write("%s.xticlabels1 = '%s'\n" % (unique_name, self.xticlabels1)) + fp.write("%s.xticlabels2 = '%s'\n" % (unique_name, self.xticlabels2)) fp.write("%s.xmtics1 = '%s'\n" % (unique_name, self.xmtics1)) fp.write("%s.xmtics2 = '%s'\n" % (unique_name, self.xmtics2)) - fp.write( - "%s.yticlabels1 = '%s'\n" % - (unique_name, self.yticlabels1)) - fp.write( - "%s.yticlabels2 = '%s'\n" % - (unique_name, self.yticlabels2)) + fp.write("%s.yticlabels1 = '%s'\n" % (unique_name, self.yticlabels1)) + fp.write("%s.yticlabels2 = '%s'\n" % (unique_name, self.yticlabels2)) fp.write("%s.ymtics1 = '%s'\n" % (unique_name, self.ymtics1)) fp.write("%s.ymtics2 = '%s'\n" % (unique_name, self.ymtics2)) if isinstance(self.datawc_x1, (int, long, float)): fp.write("%s.datawc_x1 = %g\n" % (unique_name, self.datawc_x1)) else: - fp.write( - "%s.datawc_x1 = '%s'\n" % - (unique_name, self.datawc_x1)) + fp.write("%s.datawc_x1 = '%s'\n" % (unique_name, self.datawc_x1)) if isinstance(self.datawc_y1, (int, long, float)): fp.write("%s.datawc_y1 = %g\n" % (unique_name, self.datawc_y1)) else: - fp.write( - "%s.datawc_y1 = '%s'\n" % - (unique_name, self.datawc_y1)) + fp.write("%s.datawc_y1 = '%s'\n" % (unique_name, self.datawc_y1)) if isinstance(self.datawc_x2, (int, long, float)): fp.write("%s.datawc_x2 = %g\n" % (unique_name, self.datawc_x2)) else: - fp.write( - "%s.datawc_x2 = '%s'\n" % - (unique_name, self.datawc_x2)) + fp.write("%s.datawc_x2 = '%s'\n" % (unique_name, self.datawc_x2)) if isinstance(self.datawc_y2, (int, long, float)): fp.write("%s.datawc_y2 = %g\n" % (unique_name, self.datawc_y2)) else: - fp.write( - "%s.datawc_y2 = '%s'\n" % - (unique_name, self.datawc_y2)) - fp.write( - "%s.datawc_calendar = %g\n" % - (unique_name, self.datawc_calendar)) - fp.write( - "%s.datawc_timeunits = '%s'\n\n" % - (unique_name, self.datawc_timeunits)) - fp.write( - "%s.xaxisconvert = '%s'\n" % - (unique_name, self.xaxisconvert)) - fp.write( - "%s.yaxisconvert = '%s'\n" % - (unique_name, self.yaxisconvert)) + fp.write("%s.datawc_y2 = '%s'\n" % (unique_name, self.datawc_y2)) + fp.write("%s.datawc_calendar = %g\n" % (unique_name, self.datawc_calendar)) + fp.write("%s.datawc_timeunits = '%s'\n\n" % (unique_name, self.datawc_timeunits)) + fp.write("%s.xaxisconvert = '%s'\n" % (unique_name, self.xaxisconvert)) + fp.write("%s.yaxisconvert = '%s'\n" % (unique_name, self.yaxisconvert)) # Unique attribute for meshfill - fp.write("%s.ext_1 = '%s'\n" % (unique_name, self.ext_1)) - fp.write("%s.ext_2 = '%s'\n" % (unique_name, self.ext_2)) - fp.write("%s.levels = '%s'\n" % (unique_name, self.levels)) - fp.write( - "%s.fillareacolors = '%s'\n" % - (unique_name, self.fillareacolors)) - fp.write( - "%s.fillareastyle = '%s'\n" % - (unique_name, self.fillareastyle)) - fp.write( - "%s.fillareindices = '%s'\n" % - (unique_name, self.fillareaindices)) - fp.write("%s.legend = '%s'\n" % (unique_name, self.legend)) - fp.write("%s.mesh = '%s'\n" % (unique_name, self.mesh)) - fp.write("%s.wrap = '%s'\n" % (unique_name, self.wrap)) + fp.write("%s.ext_1 = %s\n" % (unique_name, self.ext_1)) + fp.write("%s.ext_2 = %s\n" % (unique_name, self.ext_2)) + fp.write("%s.levels = %s\n" % (unique_name, self.levels)) + fp.write("%s.fillareacolors = %s\n" % (unique_name, self.fillareacolors)) + fp.write("%s.fillareastyle = '%s'\n" % (unique_name, self.fillareastyle)) + fp.write("%s.fillareaindices = %s\n" % (unique_name, self.fillareaindices)) + fp.write("%s.legend = %s\n" % (unique_name, self.legend)) + fp.write("%s.mesh = %s\n" % (unique_name, self.mesh)) + fp.write("%s.wrap = %s\n" % (unique_name, self.wrap)) fp.write("%s.missing = %s\n\n" % (unique_name, repr(self.missing))) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/textcombined.py b/vcs/textcombined.py index ab8e7b175..813801e42 100644 --- a/vcs/textcombined.py +++ b/vcs/textcombined.py @@ -486,50 +486,48 @@ def script(self, script_filename=None, mode=None): fp.write("v=vcs.init()\n\n") unique_name = '__Tt__' + self.Tt_name - fp.write( - "#----------Text Table (Tt) member (attribute) listings ----------\n") - fp.write("tt_list=v.listelements('texttable')\n") - fp.write("if ('%s' in tt_list):\n" % self.Tt_name) - fp.write( - " %s = v.gettexttable('%s')\n" % - (unique_name, self.Tt_name)) - fp.write("else:\n") - fp.write( - " %s = v.createtexttable('%s')\n" % - (unique_name, self.Tt_name)) + fp.write("%s = v.createtexttable()\n" % unique_name) fp.write("%s.font = %g\n" % (unique_name, self.font)) fp.write("%s.spacing = %g\n" % (unique_name, self.spacing)) fp.write("%s.expansion = %g\n" % (unique_name, self.expansion)) fp.write("%s.color = %s\n\n" % (unique_name, repr(self.color))) - fp.write( - "%s.fillincolor = %g\n\n" % - (unique_name, self.fillincolor)) + fp.write("%s.fillincolor = %g\n\n" % (unique_name, self.fillincolor)) fp.write("%s.priority = %d\n" % (unique_name, self.priority)) fp.write("%s.viewport = %s\n" % (unique_name, self.viewport)) - fp.write( - "%s.worldcoordinate = %s\n" % - (unique_name, self.worldcoordinate)) + fp.write("%s.worldcoordinate = %s\n" % (unique_name, self.worldcoordinate)) fp.write("%s.x = %s\n" % (unique_name, self.x)) fp.write("%s.y = %s\n\n" % (unique_name, self.y)) - fp.write("%s.projection = %s\n\n" % (unique_name, self.projection)) + fp.write("%s.projection = '%s'\n\n" % (unique_name, self.projection)) + tt_unique = unique_name unique_name = '__To__' + self.To_name - fp.write( - "#----------Text Orientation (To) member (attribute) listings ----------\n") - fp.write("to_list=v.listelements('textorientation')\n") - fp.write("if ('%s' in to_list):\n" % self.To_name) - fp.write( - " %s = v.gettextorientation('%s')\n" % - (unique_name, self.To_name)) - fp.write("else:\n") - fp.write( - " %s = v.createtextorientation('%s')\n" % - (unique_name, self.To_name)) + fp.write("#----------Text Orientation (To) member (attribute) listings ----------\n") + fp.write("%s = v.createtextorientation()\n" % unique_name) fp.write("%s.height = %g\n" % (unique_name, self.height)) fp.write("%s.angle = %g\n" % (unique_name, self.angle)) - fp.write("%s.path = '%s'\n" % (unique_name, self.path)) - fp.write("%s.halign = '%s'\n" % (unique_name, self.halign)) - fp.write("%s.valign = '%s'\n\n" % (unique_name, self.valign)) + if type(self.path) is str: + fp.write("%s.path = '%s'\n" % (unique_name, self.path)) + else: + fp.write("%s.path = %s\n" % (unique_name, self.path)) + if type(self.halign) is str: + fp.write("%s.halign = '%s'\n" % (unique_name, self.halign)) + else: + fp.write("%s.halign = %s\n" % (unique_name, self.halign)) + if type(self.valign) is str: + fp.write("%s.valign = '%s'\n\n" % (unique_name, self.valign)) + else: + fp.write("%s.valign = %s\n" % (unique_name, self.valign)) + fp.write("try:\n") + fp.write(" tt = vcs.gettexttable(%s)\n" % self.Tt_name) + fp.write(" vcs.removeobject(tt)\n") + fp.write("except:\n pass\n\n") + fp.write("try:\n") + fp.write(" to = vcs.gettextorientation(%s)\n" % self.To_name) + fp.write(" vcs.removeobject(to)\n") + fp.write("except:\n pass\n\n") + fp.write("#----------Text Combined (Tc) creation ----------\n") + fp.write("vcs.createtext(Tt_name='%s', To_name='%s', Tt_source=%s, To_source=%s)\n\n" + % (self.Tt_name, self.To_name, tt_unique, unique_name)) fp.close() else: # Json type diff --git a/vcs/textorientation.py b/vcs/textorientation.py index 017765afe..5fe1c0b71 100755 --- a/vcs/textorientation.py +++ b/vcs/textorientation.py @@ -340,22 +340,26 @@ def script(self, script_filename=None, mode=None): fp.write("v=vcs.init()\n\n") unique_name = '__To__' + self.name - fp.write( - "#----------Text Orientation (To) member (attribute) listings ----------\n") + fp.write("#----------Text Orientation (To) member (attribute) listings ----------\n") fp.write("to_list=v.listelements('textorientation')\n") fp.write("if ('%s' in to_list):\n" % self.name) - fp.write( - " %s = v.gettextorientation('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.gettextorientation('%s')\n" % (unique_name, self.name)) fp.write("else:\n") - fp.write( - " %s = v.createtextorientation('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.createtextorientation('%s')\n" % (unique_name, self.name)) fp.write("%s.height = %g\n" % (unique_name, self.height)) fp.write("%s.angle = %g\n" % (unique_name, self.angle)) - fp.write("%s.path = '%s'\n" % (unique_name, self.path)) - fp.write("%s.halign = '%s'\n" % (unique_name, self.halign)) - fp.write("%s.valign = '%s'\n\n" % (unique_name, self.valign)) + if type(self.path) is str: + fp.write("%s.path = '%s'\n" % (unique_name, self.path)) + else: + fp.write("%s.path = %s\n" % (unique_name, self.path)) + if type(self.halign) is str: + fp.write("%s.halign = '%s'\n" % (unique_name, self.halign)) + else: + fp.write("%s.halign = %s\n" % (unique_name, self.halign)) + if type(self.valign) is str: + fp.write("%s.valign = '%s'\n\n" % (unique_name, self.valign)) + else: + fp.write("%s.valign = %s\n\n" % (unique_name, self.valign)) fp.close() else: # Json type diff --git a/vcs/texttable.py b/vcs/texttable.py index 3a164b7f0..d162075c8 100755 --- a/vcs/texttable.py +++ b/vcs/texttable.py @@ -541,38 +541,29 @@ def script(self, script_filename=None, mode=None): fp.write("v=vcs.init()\n\n") unique_name = '__Tt__' + self.name - fp.write( - "#----------Text Table (Tt) member (attribute) listings ----------\n") + fp.write("#----------Text Table (Tt) member (attribute) listings ----------\n") fp.write("tt_list=v.listelements('texttable')\n") fp.write("if ('%s' in tt_list):\n" % self.name) - fp.write( - " %s = v.gettexttable('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.gettexttable('%s')\n" % (unique_name, self.name)) fp.write("else:\n") - fp.write( - " %s = v.createtexttable('%s')\n" % - (unique_name, self.name)) + fp.write(" %s = v.createtexttable('%s')\n" % (unique_name, self.name)) fp.write("%s.font = %g\n" % (unique_name, self.font)) fp.write("%s.spacing = %g\n" % (unique_name, self.spacing)) fp.write("%s.expansion = %g\n" % (unique_name, self.expansion)) fp.write("%s.color = %s\n\n" % (unique_name, repr(self.color))) fp.write("%s.backgroundcolor = %s\n\n" % (unique_name, repr(self.backgroundcolor))) fp.write("%s.backgroundopacity = %g\n\n" % (unique_name, self.backgroundopacity)) - fp.write( - "%s.fillincolor = %g\n\n" % - (unique_name, self.fillincolor)) + fp.write("%s.fillincolor = %g\n\n" % (unique_name, self.fillincolor)) fp.write("%s.priority = %d\n" % (unique_name, self.priority)) fp.write("%s.viewport = %s\n" % (unique_name, self.viewport)) - fp.write( - "%s.worldcoordinate = %s\n" % - (unique_name, self.worldcoordinate)) + fp.write("%s.worldcoordinate = %s\n" % (unique_name, self.worldcoordinate)) fp.write("%s.x = %s\n" % (unique_name, self.x)) fp.write("%s.y = %s\n\n" % (unique_name, self.y)) - fp.write("%s.projection = %s\n\n" % (unique_name, self.projection)) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + fp.write("%s.projection = '%s'\n\n" % (unique_name, self.projection)) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/unified1D.py b/vcs/unified1D.py index 6246b3b20..de53f9d29 100644 --- a/vcs/unified1D.py +++ b/vcs/unified1D.py @@ -923,17 +923,17 @@ def script(self, script_filename, mode='a'): "%s.yaxisconvert = '%s'\n" % (unique_name, self.yaxisconvert)) # Unique attribute for yxvsx - fp.write("%s.linetype = %s\n" % (unique_name, self.linetype)) + fp.write("%s.linetype = '%s'\n" % (unique_name, self.linetype)) fp.write("%s.linecolor = %s\n" % (unique_name, self.linecolor)) fp.write("%s.linewidth = %s\n" % (unique_name, self.linewidth)) - fp.write("%s.marker = %s\n" % (unique_name, self.marker)) + fp.write("%s.marker = '%s'\n" % (unique_name, self.marker)) fp.write("%s.markercolor = %s\n" % (unique_name, self.markercolor)) fp.write("%s.markersize = %s\n\n" % (unique_name, self.markersize)) - fp.write("%s.flip = '%s'\n\n" % (unique_name, repr(self.flip))) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + fp.write("%s.flip = %s\n\n" % (unique_name, repr(self.flip))) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" diff --git a/vcs/vector.py b/vcs/vector.py index c6fe67f17..789bb2a29 100755 --- a/vcs/vector.py +++ b/vcs/vector.py @@ -616,10 +616,12 @@ def _setline(self, l): line = property(_getline, _setline) def setLineAttributes(self, line): - ''' + """ Set attributes linecolor, linewidth and linetype from line l. l can be a line name defined in vcs.elements or a line object - ''' + :param line: + :return: + """ vcs.setLineAttributes(self, line) def _gettype(self): @@ -918,16 +920,15 @@ def script(self, script_filename=None, mode=None): fp.write("%s.linecolor = %s\n" % (unique_name, self.linecolor)) fp.write("%s.linewidth = %s\n" % (unique_name, self.linewidth)) fp.write("%s.scale = %s\n" % (unique_name, self.scale)) - fp.write("%s.scaletype = %s\n" % (unique_name, self.scaletype)) + fp.write("%s.scaletype = %s\n" % (unique_name, repr(self.scaletype))) fp.write("%s.scalerange = %s\n" % (unique_name, self.scalerange)) - fp.write("%s.scaleoptions = %s\n" % (unique_name, self.scaleoptions)) fp.write("%s.alignment = '%s'\n" % (unique_name, self.alignment)) fp.write("%s.type = '%s'\n" % (unique_name, self.type)) - fp.write("%s.reference = %s\n\n" % (unique_name, self.reference)) - fp.write( - "%s.colormap = '%s'\n\n" % - (unique_name, repr( - self.colormap))) + fp.write("%s.reference = %g\n\n" % (unique_name, self.reference)) + if self.colormap is not None: + fp.write("%s.colormap = %s\n\n" % (unique_name, repr(self.colormap))) + else: + fp.write("%s.colormap = %s\n\n" % (unique_name, self.colormap)) else: # Json type mode += "+" From 3ededebbe127b5624b3dfffbdc6f5f97e9a0bb6a Mon Sep 17 00:00:00 2001 From: embrown Date: Thu, 12 Jan 2017 09:19:04 -0800 Subject: [PATCH 5/7] Removed old, bad script test --- Test/test_script_for_py.py | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 Test/test_script_for_py.py diff --git a/Test/test_script_for_py.py b/Test/test_script_for_py.py deleted file mode 100644 index 016ce3fe7..000000000 --- a/Test/test_script_for_py.py +++ /dev/null @@ -1,15 +0,0 @@ -import vcs - -list=["boxfill","meshfill","isofill","textcombined","texttable","vector"] -for obj in list: - s='' - tc='' - if obj == 'textcombined': - vcs.createtextcombined('EXAMPLE_tt', 'qa', 'EXAMPLE_tto', '7left') - tc="'EXAMPLE_tt','EXAMPLE_tto'" - code="s=vcs.get%s(%s)" % (obj, tc) - exec(code) - try: - s.script(obj+"_script.py") - except: - raise("Python script creation broke on "+obj+".script()") From 7bbe3a438e5eec5311ff148b87d585c5cccaa765 Mon Sep 17 00:00:00 2001 From: Charles Doutriaux Date: Tue, 2 May 2017 23:34:54 -0700 Subject: [PATCH 6/7] Update boxfill.py --- vcs/boxfill.py | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/vcs/boxfill.py b/vcs/boxfill.py index 4308fccce..629cc9cc8 100755 --- a/vcs/boxfill.py +++ b/vcs/boxfill.py @@ -12,14 +12,8 @@ # Description: Python command wrapper for VCS's boxfill graphics method. # # Version: 5.0 # ############################################################################### -# -# -# -############################################################################### -# # -# Import: VCS C extension module. # -# # -############################################################################### + + import vcs import cdtime import VCS_validation_functions From 01946bdaa7dff98db33fd91fddd4ce599139ecbb Mon Sep 17 00:00:00 2001 From: Charles Doutriaux Date: Wed, 3 May 2017 16:44:41 -0700 Subject: [PATCH 7/7] flake8 --- vcs/isofill.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vcs/isofill.py b/vcs/isofill.py index ab503ac99..a364e862b 100755 --- a/vcs/isofill.py +++ b/vcs/isofill.py @@ -816,7 +816,7 @@ def script(self, script_filename, mode='a'): fp.write("%s.xmtics1 = '%s'\n" % (unique_name, self.xmtics1)) fp.write("%s.xmtics2 = '%s'\n" % (unique_name, self.xmtics2)) fp.write("%s.yticlabels1 = '%s'\n" % (unique_name, self.yticlabels1)) - fp.write( "%s.yticlabels2 = '%s'\n" % (unique_name, self.yticlabels2)) + fp.write("%s.yticlabels2 = '%s'\n" % (unique_name, self.yticlabels2)) fp.write("%s.ymtics1 = '%s'\n" % (unique_name, self.ymtics1)) fp.write("%s.ymtics2 = '%s'\n" % (unique_name, self.ymtics2)) if isinstance(self.datawc_x1, (int, long, float)):