From: Joerg L. <jo...@us...> - 2012-12-14 20:40:34
|
Hi Michael, I am rather confused about some of the changes below. See there. Btw, your changes also do not seem to be in SVN? At least, they do not appear when I update my checkout. Cheers, Jörg On 14.12.12, m-s...@us... wrote: > Revision: 3308 > http://pyx.svn.sourceforge.net/pyx/?rev=3308&view=rev > Author: m-schindler > Date: 2012-12-14 14:27:47 +0000 (Fri, 14 Dec 2012) > Log Message: > ----------- > fixed some little bugs in the density style of graphs > > Modified Paths: > -------------- > trunk/pyx/pyx/graph/style.py > > Modified: trunk/pyx/pyx/graph/style.py > =================================================================== > --- trunk/pyx/pyx/graph/style.py 2012-10-16 00:04:20 UTC (rev 3307) > +++ trunk/pyx/pyx/graph/style.py 2012-12-14 14:27:47 UTC (rev 3308) > @@ -162,7 +162,7 @@ > return self.gradient.getcolor(vc) > > def donedrawpoints(self, privatedata, sharedata, graph): > - if self.keygraph is _autokeygraph: > + if self.keygraph is not None: > graph.layer("key").insert(privatedata.keygraph, [graph.autokeygraphtrafo(privatedata.keygraph)]) > > > @@ -1976,23 +1976,23 @@ > if v1 is None: > privatedata.vfixed[i] = v2 > elif abs(v1-v2) > self.epsilon: > - raise ValueError("data must be in a plane for the bitmap style") > + raise ValueError("data must be in a plane for the density style") > > def donedrawpoints(self, privatedata, sharedata, graph): > privatedata.keygraph.doaxes() > > values1 = pycompat.sorted(sharedata.values1.keys()) > values2 = pycompat.sorted(sharedata.values2.keys()) > - def equidistant(values): > + def check_equidistant(values): > l = len(values) - 1 > if l < 1: > - raise ValueError("several data points required by the bitmap style in each dimension") > + raise ValueError("several data points required by the density style in each dimension") > range = values[-1] - values[0] > for i, value in enumerate(values): > if abs(value - values[0] - i * range / l) > self.epsilon: > - raise ValueError("data must be equidistant for the bitmap style") > - equidistant(values1) > - equidistant(values2) > + raise ValueError("data must be equidistant for the density style") > + check_equidistant(values1) > + check_equidistant(values2) > needalpha = False > for value2 in values2: > for value1 in values1: > @@ -2024,7 +2024,11 @@ > if not available: > data.write(empty) > continue > - c = privatedata.colors[value1][value2] > + try: > + c = privatedata.colors[value1][value2] > + except KeyError: > + data.write(empty) > + continue > c = self.color(privatedata, c) > if needalpha: > data.write(chr(255)) > @@ -2049,7 +2053,7 @@ > privatedata.vfixed[sharedata.index2] = values2[0]-v2enlargement > vx4, vy4 = t.inverse().apply_pt(*graph.vpos_pt(*privatedata.vfixed)) > if abs(vx4 - 1) > self.epsilon or abs(vy4 - 1) > self.epsilon: > - raise ValueError("invalid graph layout for bitmap style (bitmap positioning by affine transformation failed)") > + raise ValueError("invalid graph layout for density style (bitmap positioning by affine transformation failed)") > > p = path.path() > privatedata.vfixed[sharedata.index1] = 0 > @@ -2116,13 +2120,19 @@ The following things had already been fixed (in a simpler way) by André in the brown pager bug changesets 3331 and 3332. Your changeset seems to be refering to an older revision!? > "/DeviceRGB": "RGB", > "/DeviceCMYK": "CMYK"}[self.gradient.getcolor(0).colorspacestring()] > data = cStringIO.StringIO() > - for i in builtinrange(self.resolution): > - c = self.gradient.getcolor(i*1.0/self.resolution) > - data.write(c.to8bitstring()) > - i = bitmap.image(self.resolution, 1, mode, data.getvalue()) > + if graph.flipped: > + for i in builtinrange(self.resolution): > + c = self.gradient.getcolor(i*1.0/self.resolution) > + data.write(c.to8bitstring()) > + i = bitmap.image(self.resolution, 1, mode, data.getvalue()) > + else: > + for i in builtinrange(self.resolution): > + c = self.gradient.getcolor(1.0-i*1.0/self.resolution) > + data.write(c.to8bitstring()) > + i = bitmap.image(1, self.resolution, mode, data.getvalue()) > > - llx_pt, lly_pt = graph.vpos_pt(0-0.5/(self.resolution-1)) > - urx_pt, ury_pt = graph.vpos_pt(1+0.5/(self.resolution-1)) > + llx_pt, lly_pt = graph.vpos_pt(0) > + urx_pt, ury_pt = graph.vpos_pt(1) > if graph.direction == "horizontal": > lly_pt -= 0.5*graph.height_pt > ury_pt += 0.5*graph.height_pt > @@ -2132,7 +2142,7 @@ > > t = trafo.trafo_pt(((0, urx_pt-llx_pt), (ury_pt-lly_pt, 0)), (llx_pt, lly_pt)) > > - c = canvas.canvas([canvas.clip(path.rect_pt(llx_pt, lly_pt, urx_pt, ury_pt))]) > + c = canvas.canvas([canvas.clip(path.rect_pt(llx_pt, lly_pt, urx_pt-llx_pt, ury_pt-lly_pt))]) > b = bitmap.bitmap_trafo(t, i) > c.insert(b) > graph.layer("filldata").insert(c) > > This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. > > > ------------------------------------------------------------------------------ > LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial > Remotely access PCs and mobile devices and provide instant support > Improve your efficiency, and focus on delivering more value-add services > Discover what IT Professionals Know. Rescue delivers > http://p.sf.net/sfu/logmein_12329d2d > _______________________________________________ > PyX-checkins mailing list > PyX...@li... > https://lists.sourceforge.net/lists/listinfo/pyx-checkins > |
From: André W. <wo...@us...> - 2012-12-14 23:14:41
Attachments:
smime.p7s
|
Dear Jörg, as far as I can see, Michael used a checkout with the old repository url here, the one we had before the Allura move. It is kind of unfortunate, that this repository url is still functional, but at a first sight I haven't seen an option to get rid of it. Best, André Am 14.12.2012 um 21:40 schrieb Joerg Lehmann: > Hi Michael, > > I am rather confused about some of the changes below. See there. > Btw, your changes also do not seem to be in SVN? At least, they > do not appear when I update my checkout. > > Cheers, > > Jörg > > On 14.12.12, m-s...@us... wrote: >> Revision: 3308 >> http://pyx.svn.sourceforge.net/pyx/?rev=3308&view=rev >> Author: m-schindler >> Date: 2012-12-14 14:27:47 +0000 (Fri, 14 Dec 2012) >> Log Message: >> ----------- >> fixed some little bugs in the density style of graphs >> >> Modified Paths: >> -------------- >> trunk/pyx/pyx/graph/style.py >> >> Modified: trunk/pyx/pyx/graph/style.py >> =================================================================== >> --- trunk/pyx/pyx/graph/style.py 2012-10-16 00:04:20 UTC (rev 3307) >> +++ trunk/pyx/pyx/graph/style.py 2012-12-14 14:27:47 UTC (rev 3308) >> @@ -162,7 +162,7 @@ >> return self.gradient.getcolor(vc) >> >> def donedrawpoints(self, privatedata, sharedata, graph): >> - if self.keygraph is _autokeygraph: >> + if self.keygraph is not None: >> graph.layer("key").insert(privatedata.keygraph, [graph.autokeygraphtrafo(privatedata.keygraph)]) >> >> >> @@ -1976,23 +1976,23 @@ >> if v1 is None: >> privatedata.vfixed[i] = v2 >> elif abs(v1-v2) > self.epsilon: >> - raise ValueError("data must be in a plane for the bitmap style") >> + raise ValueError("data must be in a plane for the density style") >> >> def donedrawpoints(self, privatedata, sharedata, graph): >> privatedata.keygraph.doaxes() >> >> values1 = pycompat.sorted(sharedata.values1.keys()) >> values2 = pycompat.sorted(sharedata.values2.keys()) >> - def equidistant(values): >> + def check_equidistant(values): >> l = len(values) - 1 >> if l < 1: >> - raise ValueError("several data points required by the bitmap style in each dimension") >> + raise ValueError("several data points required by the density style in each dimension") >> range = values[-1] - values[0] >> for i, value in enumerate(values): >> if abs(value - values[0] - i * range / l) > self.epsilon: >> - raise ValueError("data must be equidistant for the bitmap style") >> - equidistant(values1) >> - equidistant(values2) >> + raise ValueError("data must be equidistant for the density style") >> + check_equidistant(values1) >> + check_equidistant(values2) >> needalpha = False >> for value2 in values2: >> for value1 in values1: >> @@ -2024,7 +2024,11 @@ >> if not available: >> data.write(empty) >> continue >> - c = privatedata.colors[value1][value2] >> + try: >> + c = privatedata.colors[value1][value2] >> + except KeyError: >> + data.write(empty) >> + continue >> c = self.color(privatedata, c) >> if needalpha: >> data.write(chr(255)) >> @@ -2049,7 +2053,7 @@ >> privatedata.vfixed[sharedata.index2] = values2[0]-v2enlargement >> vx4, vy4 = t.inverse().apply_pt(*graph.vpos_pt(*privatedata.vfixed)) >> if abs(vx4 - 1) > self.epsilon or abs(vy4 - 1) > self.epsilon: >> - raise ValueError("invalid graph layout for bitmap style (bitmap positioning by affine transformation failed)") >> + raise ValueError("invalid graph layout for density style (bitmap positioning by affine transformation failed)") >> >> p = path.path() >> privatedata.vfixed[sharedata.index1] = 0 >> @@ -2116,13 +2120,19 @@ > > The following things had already been fixed (in a simpler way) by André > in the brown pager bug changesets 3331 and 3332. Your changeset seems > to be refering to an older revision!? > >> "/DeviceRGB": "RGB", >> "/DeviceCMYK": "CMYK"}[self.gradient.getcolor(0).colorspacestring()] >> data = cStringIO.StringIO() >> - for i in builtinrange(self.resolution): >> - c = self.gradient.getcolor(i*1.0/self.resolution) >> - data.write(c.to8bitstring()) >> - i = bitmap.image(self.resolution, 1, mode, data.getvalue()) >> + if graph.flipped: >> + for i in builtinrange(self.resolution): >> + c = self.gradient.getcolor(i*1.0/self.resolution) >> + data.write(c.to8bitstring()) >> + i = bitmap.image(self.resolution, 1, mode, data.getvalue()) >> + else: >> + for i in builtinrange(self.resolution): >> + c = self.gradient.getcolor(1.0-i*1.0/self.resolution) >> + data.write(c.to8bitstring()) >> + i = bitmap.image(1, self.resolution, mode, data.getvalue()) >> >> - llx_pt, lly_pt = graph.vpos_pt(0-0.5/(self.resolution-1)) >> - urx_pt, ury_pt = graph.vpos_pt(1+0.5/(self.resolution-1)) >> + llx_pt, lly_pt = graph.vpos_pt(0) >> + urx_pt, ury_pt = graph.vpos_pt(1) >> if graph.direction == "horizontal": >> lly_pt -= 0.5*graph.height_pt >> ury_pt += 0.5*graph.height_pt >> @@ -2132,7 +2142,7 @@ >> >> t = trafo.trafo_pt(((0, urx_pt-llx_pt), (ury_pt-lly_pt, 0)), (llx_pt, lly_pt)) >> >> - c = canvas.canvas([canvas.clip(path.rect_pt(llx_pt, lly_pt, urx_pt, ury_pt))]) >> + c = canvas.canvas([canvas.clip(path.rect_pt(llx_pt, lly_pt, urx_pt-llx_pt, ury_pt-lly_pt))]) >> b = bitmap.bitmap_trafo(t, i) >> c.insert(b) >> graph.layer("filldata").insert(c) >> >> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. >> >> >> ------------------------------------------------------------------------------ >> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial >> Remotely access PCs and mobile devices and provide instant support >> Improve your efficiency, and focus on delivering more value-add services >> Discover what IT Professionals Know. Rescue delivers >> http://p.sf.net/sfu/logmein_12329d2d >> _______________________________________________ >> PyX-checkins mailing list >> PyX...@li... >> https://lists.sourceforge.net/lists/listinfo/pyx-checkins >> > > ------------------------------------------------------------------------------ > LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial > Remotely access PCs and mobile devices and provide instant support > Improve your efficiency, and focus on delivering more value-add services > Discover what IT Professionals Know. Rescue delivers > http://p.sf.net/sfu/logmein_12329d2d > _______________________________________________ > PyX-checkins mailing list > PyX...@li... > https://lists.sourceforge.net/lists/listinfo/pyx-checkins -- by _ _ _ Dr. André Wobst, Amselweg 22, 85716 Unterschleißheim / \ \ / ) wo...@us..., http://www.wobsta.de/ / _ \ \/\/ / PyX - High quality PostScript and PDF figures (_/ \_)_/\_/ with Python & TeX: visit http://pyx.sourceforge.net/ |