connection point for connectors

De
December
Posts: 58
Joined: Fri Jul 01, 2016 7:02 am
Platform: Mac

Tue Jan 31, 2017 4:53 pm Post

Aha. I think I've been unclear here: sorry! It's very hard to talk about these things w/out pictures! Thank you for putting your graphic in — I should have put one into my own post, but alas have forgotten how to upload images into phpBB...

Let me try to clarify: I'm not trying to draw connectors between items in the SAME stack. As you observe, it's redundant: they're already 'connected' by virtue of being lined up into a sort of list. And it is indeed hard to see how you could draw lines between stacked items which are visually illuminating — even with the full freedom of pen and paper!

What I want to do (and seems to me Scapple could usefully support) is something else: to draw connections between two different stacked lists. That is, to visually mark the correlation between (say) item 1 in column A and item 6 in column B.

(column A)
                (column B)
Item 1 text text text text text
              Item 1 more text more more more
Item 2 text text text text text
              Item 2 more text more more more
Item 3 text text text text text
              Item 3 more text more more more
Item 4 text text text text text
              Item 4 more text more more more
Item 5 text text text text text
              Item 5 more text more more more
Item 6 text text text text text
              Item 6 more text more more more

The problem here is one of angles: if you are connecting two items that are more or less level with one another, the connector will emerge from the sides of the appropriate items. That is, the line will actually LOOK like it is connecting them! But if the connection runs at a sharp angle, from the top of one stack to the bottom of the other, the geometry will make the line appear to connect two other items, located closer to the middle of the stacks.

My thought was that the simplest way of getting round this was just to give users the option of forcing the lines to be drawn from side/bottom/top where desired, rather than the middle of the text box. To keep things simple, the precise anchor point could still be mandated by the program (presumably the centre point of the side). But this modification would make it possible to construct much denser sketches than is currently possible, and to take real advantage of the stacking feature.

To put it another way, at the moment Scapple is chiefly aimed at the very first, wild, totally freeform brainstorming of ideas across a wide canvas, where there's plenty of room for connectors to stretch out. But with a few modifications, seems like it could also cater to the next stage of mental organization, where you try to marshal your first doodled thoughts into some kind of logical order — in which the sorting of things into stacks and lists, while maintaining the connections between them becomes important. Think of it as a sort of intermediate phase between the napkin doodle and an actual outline (when one moves to Scrivener!). Not sure if this is an aspect you're interested in pursuing, but I hope so — it would vastly expand Scapple's usefulness as a brainstorming tool!

In case you are...I hope you don't mind my taking the liberty of suggesting a few key improvements to that end:

a) allowing users to specify which edge connections are anchored to.

b) allowing users to specify whether connection lines are drawn OVER or UNDER any intervening boxes. (Sometimes the connector is more important to see than every last letter of the text it crosses!).

c) providing a simple Group/Ungroup function, so users can manually group together text boxes they want to move around together. I know you can do this via magnetic background shapes or connectors, but honestly sometimes that feels like a very long way round just to be able to manipulate boxes in a simple intuitive way like any drawing program would do....

Just some ideas to file away for when Scapple floats to the top of the pile again! And thank you again for your patience with all my queries. Scrivener does have a way of producing enthusiasts, doesn't it? :)

Online
User avatar
gr
Posts: 2219
Joined: Wed Feb 14, 2007 3:57 am
Platform: Mac + iOS
Location: Florida

Wed Aug 05, 2020 2:56 pm Post

AmberV wrote:We played with a model that used the edges, but it didn't work out perfectly and was just adding clutter, so it was removed for 1.0 and the idea deferred for a later release. We have it on the list to look at again when there is more time to give it the proper treatment it deserves.


I would like to advocate for the resuscitation of the "nearest-corner" connection preference.

There really does need to be a "nearest corner" option for how connections are made. The current mode which always targets the middle of the node makes maps of even just moderate complexity visually unresolvable -- one must move nodes around to discern which node is actually connected to which. I find this true in every serious use I have made of Scapple. A nearest-corner preference would resolve such visual ambiguity in the main.

An app or document preference for nearest-corner would be great. Even if you had to neutralize certain frills (rounded, cloud, blat corners) for this option, it would be entirely worth it, imho.

So, I hope the nearest-corner project gets back on the Scapple development list.

-gr

p.s. Perhaps one would need to hold that there are five possible points of contact - four corners and the middle (this last being desirable for columnar arrangements, for example). Couldn't help but puzzle about what an algorithm for resolving the corner choice would be -- sort of a two body problem. Does a two-pass system unfailingly get the right pairing? My intuition suggested this procedure: Start at middle of node #1, calculate which of the five hotspots of #2 is closest to that. Choose that hotspot on #2. Then in a second pass calculate which of the five hotspots on #1 is closest to the chosen spot on #2. Seems sort of sensible, but I couldn't figure what a crucial test case might be. Okay, I am getting out my compass and straight-edge... Don't make me come over there!
gr : Scrivener user : not affiliated with Lit^Lat
Image
"Nothing, like something, happens anywhere." —Philip Larkin

User avatar
lunk
Posts: 4252
Joined: Wed Aug 21, 2013 4:24 pm
Platform: Mac + iOS
Location: Sweden 64° N

Wed Aug 05, 2020 6:22 pm Post

gr wrote:An app or document preference for nearest-corner would be great. Even if you had to neutralize certain frills (rounded, cloud, blat corners) for this option, it would be entirely worth it, imho.

I disagree. That would make the connection point jump around when you move an item. With more complexity comes more problems, not less.
I am a user, writing non-fiction and science, using:
* Mac Scrivener 3 on a Macbook 12”, MacBook Pro 13”, and iMac 27”, running different OS.
* iOS Scrivener 1 on an iPhone 11 Pro, iPad Air 9.7”, and iPad Pro 12.9”, all running the latest iOS

User avatar
devinganger
Posts: 2206
Joined: Sat Nov 06, 2010 1:55 pm
Platform: Mac, Win + iOS
Location: Monroe, WA 98272 (CN97au)
Contact:

Wed Aug 05, 2020 10:07 pm Post

lunk wrote:
gr wrote:An app or document preference for nearest-corner would be great. Even if you had to neutralize certain frills (rounded, cloud, blat corners) for this option, it would be entirely worth it, imho.

I disagree. That would make the connection point jump around when you move an item. With more complexity comes more problems, not less.


Which is why this would be an "app or document preference" so that users who understand the implications can use it and those who don't are not forced to.
--
Devin L. Ganger, WA7DLG
Not a L&L employee; opinions are those of my cat
Life has a way of moving you past wants and hopes

Online
User avatar
gr
Posts: 2219
Joined: Wed Feb 14, 2007 3:57 am
Platform: Mac + iOS
Location: Florida

Thu Aug 06, 2020 6:55 pm Post

lunk wrote:
gr wrote:An app or document preference for nearest-corner would be great. Even if you had to neutralize certain frills (rounded, cloud, blat corners) for this option, it would be entirely worth it, imho.

I disagree. That would make the connection point jump around when you move an item. With more complexity comes more problems, not less.


Lunk, thanks for this. I appreciate your pitching in to help think about this. I would like to distinguish between 1) the goal of making more discernible what is connected to what and 2) how this might be achieved. I am not hearing any disagreement about point (1), so maybe we agree on the goodness of that (if not also its importance).

Your point seems to be a concern about implementation. Undue or disconcerting jumpiness seems like a valid thing to worry about. I don't pretend to know how to implement anything, but you may have seen better into the implications of the little extracurricular sketch I made of an algorithm. For my own part, it is not intuitively obvious to me that the sort of procedure I sketched would make unhappy jumpiness, just as I was uncertain if it would pick the intuitively correct corner to cleave to. But maybe it would.

Just as a thought experiment, let's try to imagine an implementation that would mute any concern you have. Devinganger is right, if it is a Preference you personally need not be "concerned". But at the same time, we should also be interested in someone with your same concern who also really wants to be able to better visually resolve what is connected to what. (For all I know, I might be such a one!) So, how could we achieve the benefit of corner cleaving without undo jumpiness?

Consider: First, let's note that the visual connection point (point of incidence) on a node moves around when you move things already, because the incidence point of the connection line slides along the frame when you move either node. Now, imagine the target of connection remains dead center, but we "magnetize" the corners, so when the incident point gets close enough to a corner it snaps to it. Magnetization of zero gives you the equivalent of how Scapple works now. Magnetization of 100% gives you the equivalent of the suggestion as I first posed it (always snap). Now just imagine we set the magnetization level to the highest strength that you would still be comfortable with. Assuming that level is not zero,* you (or the doppelganger of you we are imagining) now get (some of) the benefit of corner attachment but can mitigate any level of jumpiness you might find disconcerting. And maybe it would even turn out there is a mag level which could be set that would be pleasing to all!

Again, it is not intuitively obvious to me that there would be disconcerting jumpiness in connections on the earlier initial picture. But it just may be useful to demonstrate to our favorite developers that there would be (even if so) reasonable ways to achieve better visual discernment via some kind of corner-cleaving algorithm.

I will be happy just to get the corner-connection Wish back on the table.

Best,
gr

* Surely there is a sweet spot there even for your most obstreperous evil twin!
gr : Scrivener user : not affiliated with Lit^Lat
Image
"Nothing, like something, happens anywhere." —Philip Larkin

User avatar
lunk
Posts: 4252
Joined: Wed Aug 21, 2013 4:24 pm
Platform: Mac + iOS
Location: Sweden 64° N

Thu Aug 06, 2020 8:46 pm Post

I played a little with this and I don’t think that "attach to nearest corner" ever looks better than "attach to center".

IMG_1405.jpeg
IMG_1405.jpeg (897.76 KiB) Viewed 440 times


IMG_1406.jpeg
IMG_1406.jpeg (934.92 KiB) Viewed 440 times
I am a user, writing non-fiction and science, using:
* Mac Scrivener 3 on a Macbook 12”, MacBook Pro 13”, and iMac 27”, running different OS.
* iOS Scrivener 1 on an iPhone 11 Pro, iPad Air 9.7”, and iPad Pro 12.9”, all running the latest iOS

Online
User avatar
gr
Posts: 2219
Joined: Wed Feb 14, 2007 3:57 am
Platform: Mac + iOS
Location: Florida

Fri Aug 07, 2020 1:52 am Post

Okay, Lunk, now I am not sure you are really trying. It is not hard to demonstrate a case where nearest corner "looks better" both in the crucial sense of showing more clearly the information content of the diagram as well as aesthetically. The following is surely a case in point. And a relevant one, because it is in precisely such conditions that middling muddles the very information the chart is supposed to capture.

by middles.jpg
by middles.jpg (45.3 KiB) Viewed 431 times


By Corners.jpg
By Corners.jpg (44.29 KiB) Viewed 431 times


There are certainly use cases where you may want middling for aesthetic reasons. That seems fine. No one is arguing against that. What is puzzling here is that you seem to want to press something further which would deny the obvious virtue exhibited in the above cornering diagram.

-gr

P.S. I note that in your squared off, non-overlapping case, your preferred middling diagram looks as nice as it does only because the particular chart is so arranged that the point of incidence in each case sort of approximates the center point of the inside side. This is an accidental feature of your diagram, not the fruit of middling. If you move those boxes at different distances vertically from the others, middling can produce much the same kind of "off-sides" points of incidence you do not like in your corners chart.
Last edited by gr on Fri Aug 07, 2020 2:31 am, edited 1 time in total.
gr : Scrivener user : not affiliated with Lit^Lat
Image
"Nothing, like something, happens anywhere." —Philip Larkin

Online
User avatar
gr
Posts: 2219
Joined: Wed Feb 14, 2007 3:57 am
Platform: Mac + iOS
Location: Florida

Fri Aug 07, 2020 2:29 am Post

For what it's worth, here is a real world example of a scapple map I happen to be working with at the moment.

Exhibit C.jpg
Exhibit C.jpg (272.53 KiB) Viewed 425 times


-gr

P.S. Lunk, your squared-off-node diagram (middling version) made me think the in cornering algorithm the centers of sides perhaps ought also be contact points (or "magnetic" in the sophisticated version). In which case, your preferred second diagram would turn out even better (!) because the connections would hit the midpoint of those inner sides (which they are only approximating the good look of now).
gr : Scrivener user : not affiliated with Lit^Lat
Image
"Nothing, like something, happens anywhere." —Philip Larkin

User avatar
lunk
Posts: 4252
Joined: Wed Aug 21, 2013 4:24 pm
Platform: Mac + iOS
Location: Sweden 64° N

Fri Aug 07, 2020 6:16 am Post

gr wrote:the centers of sides perhaps ought also be contact points (or "magnetic" in the sophisticated version).
That would be a better idea, as it would be possible to use also with note shapes without corners.
But even so the connection point would sometimes "jump" when notes were moved, unless you could lock it to only use note sides and not top or bottom.

A philosophical comment: isn’t the problem, you are showing an example of, a typical example of a situation where the original philosophy behind Scapple collide with the way you want to use it? The way I see it Scapple was meant for a fairly unordered, unstructured connection of notes spread out, like shown on the L&L web site. You are trying to use it for a very ordered and structured situation, with columns of neatly stacked notes etc. I have seen something like your image in connection with some other app which produced something like your image, but can’t remember where. Possibly an iOS app.

Isn’t it all a question of spatially unstructered notes versus spatially very structured notes in a kind of grid, i.e two different use cases? I think Scapple was designed for the former.
I am a user, writing non-fiction and science, using:
* Mac Scrivener 3 on a Macbook 12”, MacBook Pro 13”, and iMac 27”, running different OS.
* iOS Scrivener 1 on an iPhone 11 Pro, iPad Air 9.7”, and iPad Pro 12.9”, all running the latest iOS

De
December
Posts: 58
Joined: Fri Jul 01, 2016 7:02 am
Platform: Mac

Fri Aug 07, 2020 5:21 pm Post

Jumping back in here after a long time, so I may have missed some of the finer points of the discussion above; apologies if my comments are off base!

From my point of view, attaching to the center of sides (or top/bottom), rather than corners, would definitely be the most clear, flexible and elegant. But the key thing for me would be being able to CONTROL where the attachment point is on an item-by-item basis. By all means, have center-of-box as the default (works well in the majority cases), but the option to draw connectors where you want them (eg. select a box + connector and rt-click to choose the anchor point for that particular connection) would be transformative. Or is that too complicated to program? Basically, the ideal would be to do with Scapple what one instinctively does with pencil and paper, viz draw a line where it will fit — something that only human intelligence can figure out! The way Scapple is now, I'm constantly having to make crazy little adjustments to the whole scapple whenever I add a new box just to ensure connection lines remain clear; it would be much easier just to manually shift a connector or two, rather than try to outsmart the whole algorithm. Not sure paper and pencil wouldn't be simpler!

FWIW I'm not just working with stacks (though I think that was my original example): I find this an issue with free-form, thinking-aloud type scapples too. I know some people brainstorm by jotting ideas down anywhere on the page and relying on a network of lines to make the connections clear, but I think in very spatial terms, grouping and organizing my ideas spatially as well as by connectors — to me, that's the only way thoughts are visually legible (how do you indicate hierarchy without spatial organization?). To put it another way, I think geometrically, not topologically. And so long as your boxes have to be in a particular spatial relation, the problem of placing the connectors becomes vital. This is particularly true if you have a lot of boxes you want to keep all visible on a single laptop screen: removes the option of spreading things out to untangle your connections!

I could give real-life examples if I knew how to get an image into this post. Is there a simple way to insert an image here, or do I need to upload it to a host site first? : )

User avatar
AmberV
Posts: 24332
Joined: Sun Jun 18, 2006 4:30 am
Platform: Mac + Linux
Location: Ourense, Galiza
Contact:

Tue Aug 11, 2020 1:16 pm Post

lunk wrote:That would be a better idea, as it would be possible to use also with note shapes without corners. But even so the connection point would sometimes “jump” when notes were moved, unless you could lock it to only use note sides and not top or bottom.


December wrote:From my point of view, attaching to the center of sides (or top/bottom), rather than corners, would definitely be the most clear, flexible and elegant. But the key thing for me would be being able to CONTROL where the attachment point is on an item-by-item basis.


Just to jump back in here and explain my earlier brief comment, since this seems to be going on—this inevitable line of thinking is exactly what lead to the idea be shelved. Nearest-corner, as a simple checkbox that enables a basic algorithm, produces erratic results that encouraged more fiddling with relative positioning—while one of the design goals was to minimise the feeling that one needs to do that at all. Consider how typing enough to line-wrap would quite possibly cause a whole chunk of connectors to shift their opinion on what is nearest, in a stack, for example, in a way you had carefully avoided by positioning it otherwise, before.

The best solution for this problem is one that requires quite a bit more programming, on the visual side and internally. You need to graphically depict the nine snap points each note/shape has and make line endings interactive in some way, at a minimum, both of which are significant departures from its current infrastructure (and indeed it feels a bit heavy-handed in Scapple’s otherwise simple UI). All of that needs to be on top of a default toggle (centre vs auto-nearest), and may then lead the software even further away from its core design—because now there is another visual thing to manage. If the default goes from good to wild mess after editing a few notes in a stack, are you going to move on and keep working, like you do now, or are you going to feel compelled to start clicking on tiny little anchor points and dragging lines around to get it looking right again (for the moment)?

And that’s probably why the idea has stayed on the shelf, since then. The automatic solution is the one that really fits in with Scapple’s core ideal of not having a thousand fiddly things to manage, but since it doesn’t work well (especially so in a program that is chaotic in its layout rather than one that works more like classic illustration software), the solution that lets you solve erratic trigger point issues takes the design into a heavier design management place than the rest of the software.

lunk wrote:Isn’t it all a question of spatially unstructered notes versus spatially very structured notes in a kind of grid, i.e two different use cases? I think Scapple was designed for the former.


Well this is true, but one thing I’ve learned is that no matter how hard we pitch that this is meant to be a messy scratch pad for visually oriented thinkers—people who grid will grid. There’s nothing wrong with that, to be clear! One can use a sheet of paper however they like. Some will take ten minutes with a ruler and protractor to carefully mark out positions before drawing up an idea. Others will spill ink all over the table in an effort to work more quickly. We don’t really care how you use Scapple. :)
.:.
Ioa Petra'ka
“Whole sight, or all the rest is desolation.” —John Fowles