# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: cr33dog@gmail.com-20100528024410-pcizqpvh16x4q9qx # target_branch: bzr+ssh://bazaar.launchpad.net/~inkscape.dev\ # /inkscape/trunk/ # testament_sha1: ea6ad23709362a842145e5b2a31331a91840a41c # timestamp: 2010-05-27 21:44:40 -0500 # base_revision_id: kris-degussem__-20100524104454-5oo1o9767b9ob0ip # # Begin patch === modified file 'share/extensions/dots.inx' --- share/extensions/dots.inx 2008-04-18 15:49:46 +0000 +++ share/extensions/dots.inx 2010-05-28 02:44:10 +0000 @@ -6,6 +6,7 @@ inkex.py 20 10px + 1 path === modified file 'share/extensions/dots.py' --- share/extensions/dots.py 2009-02-06 21:23:26 +0000 +++ share/extensions/dots.py 2010-05-28 02:44:10 +0000 @@ -30,28 +30,17 @@ action="store", type="string", dest="fontsize", default="20", help="Size of node label numbers") - - - def separateLastAndFirst(self, p): - # Separate the last and first dot if they are togheter - lastDot = -1 - if p[lastDot][1] == []: lastDot = -2 - if round(p[lastDot][1][-2]) == round(p[0][1][-2]) and \ - round(p[lastDot][1][-1]) == round(p[0][1][-1]): - x1 = p[lastDot][1][-2] - y1 = p[lastDot][1][-1] - x2 = p[lastDot-1][1][-2] - y2 = p[lastDot-1][1][-1] - dx = abs( max(x1,x2) - min(x1,x2) ) - dy = abs( max(y1,y2) - min(y1,y2) ) - dist = math.sqrt( dx**2 + dy**2 ) - x = dx/dist - y = dy/dist - if x1 > x2: x *= -1 - if y1 > y2: y *= -1 - p[lastDot][1][-2] += x * inkex.unittouu(self.options.dotsize) - p[lastDot][1][-1] += y * inkex.unittouu(self.options.dotsize) - + self.OptionParser.add_option("-e", "--erase", + action="store", type="inkbool", + dest="erase", default=True, + help="Erase the selected path") + + + def lastAndFirst(self, p): + # closed + if p[-1][0] == 'Z': + del p[-2] + def effect(self): for id, node in self.selected.iteritems(): @@ -70,14 +59,18 @@ a = [] p = simplepath.parsePath(node.get('d')) - self.separateLastAndFirst(p) + self.lastAndFirst(p) num = 1 for cmd,params in p: if cmd != 'Z' and cmd != 'z': + if num == 1: + dot_r = str(inkex.unittouu(self.options.dotsize) / 1.5) + else: + dot_r = str(inkex.unittouu(self.options.dotsize) / 2) dot_att = { 'style': style, - 'r': str( inkex.unittouu(self.options.dotsize) / 2 ), + 'r': dot_r, 'cx': str( params[-2] ), 'cy': str( params[-1] ) } @@ -91,7 +84,8 @@ params[-1] - ( inkex.unittouu(self.options.dotsize) / 2 ), num ) num += 1 - node.getparent().remove( node ) + if self.options.erase: + node.getparent().remove( node ) def addText(self,node,x,y,text): # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWSyqlS4AArR/gEx0RUBZ5/// ewLEGr///3BQBYMvCm7aW5dVnr3mmqBJQRMIyYmKno9MhMo2mUPU00D1AaNqaaAlEo8kxpPTVP0o NqYgaaGgAA0AAASgSZFPJlT9T1R5Tank1DZTQafqgGQADQAyVMgaAAAABo00ZGjTJoAABJIRpiJo 1PE1NNTNU9NJvVM0I/UyJ6hpkyD1HqSihtpbnuu2RshGWt7/Ivlvx+3Z8YGwtbISM1veYwhc1Rs6 pY53wJJ+xROZTKYiCoSShQGPJz3T8pzSuRlGMYDGL9fcPF8W/hBmpZkcYoWWussfikhcxgnxtoM/ h401lO5jR29up1n+F/vK1T/aGgtz1/WfFc3XjWcWj9TaAmyrTYQFMZOMs79dnJVZ6+aKuFNg/PBh Ntl/WuSpry1KiT2z7kCIb7ovz0N7cfmvgIGnkaLrYK65DNDJEPYyltlzV4TDi06TmsgK3i9C39Am sU/C6oDi3Br9nUgksGUHDJy7WMDRHRsiQP1Fz3brEdbKDCvyFWA+uFUEjekGZVrO2sDb7aCfJTSJ wHARO0eUavdUf2vEV99bhOGIgTSGXqfYKBbcK+Qroa6Yz+naqOHUtJHSBiaSjftpotMJiFvdkWKc rqNVX8FxTZV00Ds75Uglgeu4YpmQHCsVYHQZjjS3OMiwBwpMi3BRM4NY0C+1RMhD5lkAkVjCIldr RtZXCiLWTVwDpGujgOkJSsnzC4XSLbjUlBhSRI3ICvONF1tLZOmVzWEEQxEYo1xWYlGFiLfVzyWt cKGvpHVvjUayahLIY0CozKGrVmYnoFUB5M8uzLYGTjGRpR1HOMwDBKGoSJvaM7ydpgZKI2UmLhie O4eVyxLpc5geVeqBaOA2mJVCJMpvWBUXlxQcvIDfx+tIs6L2Uua4zcnBC1QRV61HwOtkfJj72O4y L55tWO3B4cjoNg6qqyYZXaZG33b18ubRNyjsrxQLs14gNFUVfma4o8fmnjbEz6eCzmSKU0FZEYxC ZydVxseFrlrYt4/eaRg4ylB1hwxV9+eqrGbRUlCKxHFpWGOqOuCWqdI4/2OETjGoFV7OGddYZjcs lfLqI5BDGTmiNq65HGYLbAIMqwoC5s++VApfvKlCxrNBiAPBrUmOyJoHz1bV9KvPxM8lHvEfYdji wzbSEF2DLlLjEitXVumNxyE5GwWWbZGG2VFrybcBaKThx+5QIIxdyG+Nvxsv/DHa1QyyE0UqcHKs kMtEwtdUHTyvYbVwubjYaQWX5cOQwGhBlpG6gTD4iVjJpUCsz5haxu8wNBlLyPQPTiRcj0Ex2T11 SkC4PFtEWGtJmFE3NBz29uRXKzABmsTll26fPT4u6hdAG6OstykqCR08VDirkC8DFFm0RLx8zfUh 3TWEYIUREBQ7Tw9lYXiNlo6qiQKsANIsGkWWxp3dKLdRHq2oMgSaVcPmpKrQok7t3YwlWu+WPJzi PXagcBGeib0DDUkg5cOYy6LZkYKqA9mYTMiQOHo8SG0f7hcrx6sXjFFAIMKDhaa8a1zKHcuoK+Aj /Ym8RMS72RyV5EibXWsop0Qe9ywJ1MwDUPLiufsmfG1X4ROGv6get4EVI9xqC/zW0oNUf8y9QGSn xAnuA6QMec87vnmQeukQz7kVnm/gqDEyrlr0kgbL2uM2T4krKeLNLaklfVkG6JKV6RWHU/zBDndU q3kIqWCPIOGbrJC6ZbOvlycPip9mAywV4i81Dxgs0NZYlYxgLKxDNholZaTOjF6jyM6lRxpAVWyH 5VL/BqCdE5TuHGhJg3PoLUqF7y6ExMTcODFPLC80fs467LMi2hV3liwgdjSTcwE9iD0lTAw4ceH4 gdwoV7ROQYaaem1PFCDG/wE8pXjRG6jgP/F3JFOFCQLKqVLg