15 |
def p(*s): |
def p(*s): |
16 |
print 'mindMapView2D', s |
print 'mindMapView2D', s |
17 |
|
|
18 |
|
dbg = 0 |
19 |
|
|
20 |
class MindMapMainNode2D(view.buoy.AbstractMainNode2D): |
class MindMapMainNode2D(view.buoy.AbstractMainNode2D): |
21 |
def __init__(self, plane, view2d, focus, controller): |
def __init__(self, plane, view2d, focus, controller): |
95 |
|
|
96 |
def render(self, vs, node, |
def render(self, vs, node, |
97 |
matchingParent, box2screen, box2plane): |
matchingParent, box2screen, box2plane): |
98 |
|
self.matchingParent = matchingParent |
99 |
|
|
100 |
if dbg: |
if dbg: |
101 |
dbg1 = vs.unitSqCS(box2screen, "U") |
dbg1 = vs.unitSqCS(box2screen, "U") |
125 |
self.nodes.put(node, pl) |
self.nodes.put(node, pl) |
126 |
|
|
127 |
self.doMindMapCS(vs, paper2screen, node, 0,0, 0, 1) |
self.doMindMapCS(vs, paper2screen, node, 0,0, 0, 1) |
128 |
self.drawMindMap(vs, node) |
self.drawMindMap(vs) |
129 |
|
|
130 |
def drawMindMap(self, vs, node): |
def drawMindMap(self, vs): |
|
|
|
131 |
i = self.net.n.keySet().iterator() |
i = self.net.n.keySet().iterator() |
132 |
while i.hasNext(): |
while i.hasNext(): |
133 |
n = i.next() |
node = i.next() |
134 |
pl = self.nodes.get(n) |
pl = self.nodes.get(node) |
135 |
if pl == None: continue |
if pl == None: continue |
136 |
c = [ pl[0] ] |
c = [ pl[0] ] |
137 |
|
|
138 |
it = self.net.n.get(n).keySet().iterator() |
it = self.net.n.get(node).keySet().iterator() |
139 |
while it.hasNext(): |
while it.hasNext(): |
140 |
n2 = it.next() |
n = it.next() |
141 |
pl2 = self.nodes.get(n2) |
pl2 = self.nodes.get(n) |
142 |
if pl2 == None: continue |
if pl2 == None: continue |
143 |
c.append(pl2[0]) |
c.append(pl2[0]) |
144 |
if dbg: p('info:', pl2[0], pl2[1], pl2[2]) |
if dbg: p('info:', pl2[0], pl2[1], pl2[2]) |
147 |
def pc(conns, cs): |
def pc(conns, cs): |
148 |
vs.put(conns, cs + c) |
vs.put(conns, cs + c) |
149 |
|
|
150 |
|
# draw fillets |
151 |
vob.fillet.light3d.drawFillets(self, vs, pc) |
vob.fillet.light3d.drawFillets(self, vs, pc) |
152 |
|
|
153 |
|
# draw text etc.. |
154 |
cs = vs.coords.translate(pl[0], 0,0, -100) |
cs = vs.coords.translate(pl[0], 0,0, -100) |
155 |
self.putNodeContent(vs, n, cs) |
vs.matcher.add(self.matchingParent, cs, node) |
156 |
|
self.putNodeContent(vs, node, cs) |
157 |
|
|
158 |
|
|
159 |
def getLinks(self, fen, node): |
def getLinks(self, fen, node): |
211 |
|
|
212 |
s = self.getNodeSize(deepnes) |
s = self.getNodeSize(deepnes) |
213 |
cs = vs.coords.orthoBox(into,0, x-s/2.0,y-s/2.0, 1,1, s,s) |
cs = vs.coords.orthoBox(into,0, x-s/2.0,y-s/2.0, 1,1, s,s) |
214 |
p(cs, xy, angle, s) |
if dbg: p(cs, xy, angle, s) |
215 |
return [cs, x, y, angle] |
return [cs, x, y, angle] |
216 |
|
|
217 |
def getXY(self, x0, y0, angle, deepnes): |
def getXY(self, x0, y0, angle, deepnes): |