Good point. I will work on this today Alexandre
Le 02-08-2014 à 5:29, Peter Uhnák <i.uhnak@gmail.com> a écrit :
Hi Alex,
is there a (simple) way to reset element's shape? When I add a new control point to RTMultiLine I need the trachelShape to be updated accordingly, however it is created only once and I don't see any way how to reset it apart from completely removing the element from canvas and recreating it.
I tried subclassing RTEdge (and altering RTElement>>addConnectedEdge: assert to isKindOf:) and setting trachelShape to nil, however that wasn't enough anyway since the shape is apparently also stored also elsewhere (TRCanvas I would assume).
So do I have to remove it and re-add it or am I missing something?
Also, is there some document(atiton) explaining how all the things interact together (Roassal, Trachel, updates, redraws, ...) or is source code the only thing at the moment?
Thanks, Peter
On Thu, Jul 31, 2014 at 3:22 PM, Alexandre Bergel <alexandre.bergel@me.com> wrote:
I am familiar with RTBezierLine (I mentioned it in the original question), but what I was wondering about was whether controllingElements: should be added to RTMultiLine (so it will be handled internally just like in BezierLine), or leave it as is and let the user handle it from outside - as demonstrated by the example I posted.
Users of the API will decide :-) The way you are interacting with us is the right way. Keep asking questions and requesting for new features!
Alexandre
On Thu, Jul 31, 2014 at 8:24 AM, stepharo <stepharo@free.fr> wrote: this is cool :)
On 30/7/14 20:12, Alexandre Bergel wrote:
Hi Peter!
Iâve just added the orthogonal vertical and horizontal lines in Roassal2. Here are some screenshots.
<Mail Attachment.png> <Mail Attachment.png>
These last script has been made with: -=-=-=-=-=-=-=-=-=-=-=-= | v | v := RTView new.
v addAll: ((RTEllipse new size: 20; color: (Color red alpha: 0.3)) elementsOn: (1 to: 20)).
shape := RTMultiLine new. shape orthoVertical. shape color: (Color blue alpha: 0.3).
RTEdge buildEdgesFromObjects: (1 to: 20) from: [ :n | n // 3 ] to: #yourself using: shape inView: v.
v elements @ RTDraggable @ RTPopup.
RTTreeLayout on: v elements. v open -=-=-=-=-=-=-=-=-=-=-=-=
Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On Jul 26, 2014, at 3:57 PM, Peter Uhnák <i.uhnak@gmail.com> wrote:
Hi,
is there any support for orthogonal lines in Roassal2? I've seen something similar (ROOrthoVerticalLineShape), however nothing of that sort in Roassal2. I would imagine it to behave similarly to RTBezierLine - having controllingElements to specify the corners. (While ROOrtholines did it automatically I was looking for something more manual, so it can go in both directions - thus the controllingElements).
Second thing I wasn't able to figure out is whether it is possible to create line from element to itself. All *AttachPoint classes aren't really able to cope with that. The best result I got was from Vertical/Horizontal AttachPoints (combined with BezierLine), however I would like to be able to specify which side it would start on and end on. Ideally not just middle of sides, but arbitrary part of the shape (I imagine that might be hard for non-rectangular shapes).
Thanks, Peter
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.