Possible to Create Spatial Offset from Line to Shape/Object?
1 Attachment(s)
I have a particular style from Illustrator that I'm trying to replicate. I'm pretty close (and I can live with what I've got).
The one thing I'm 'graffling' with a little is seeing if it's possible to create a spatial separation between lines and objects while still using magnets. So, for example, I've got a line connected to an object using objects. Good. But they're in direct contact with each other and I'd like to create a small visual space between them that Omnigraffle manages. (I just prefer the way it looks). In the attached example, you can see the spacing from the line that starts from the circle with 'BEGINNING...' in it and then terminates on the rectangle with 'Process (1)' in it. (This example I did w/ Illustrator). Some shapes in the example don't have the spacing (like the line relative to the circle). That's fine- if I could figure out a way to do it I'd be fine just doing it across the board. |
2 Attachment(s)
I would do this with [B]File > New Resource > New Stencil[/B] making myself a new stencil containing a set of the basic shapes I needed, in which each shape was grouped ([B]Arrange > Group[/B] ⌘⇧G) with a similar but slightly larger shape, which:
[LIST=1][*]is behind it,[*]shares its centre,[*]has neither fill nor stroke,[*]and has the magnet pattern that you want[/LIST] to simply provide the invisible fringe. Once you have prepared your stencil, you can drag from it as many copies as you need of each specially prepared shape, and there will automatically be gaps at the start and end of any connecting arrows between such shapes. (And, of course, if you submit your new stencil to [URL="http://www.graffletopia.com"]Graffletopia[/URL], you will find it available through the stencil window on any machine on which you subsequently use OmniGraffle). [IMG]http://forums.omnigroup.com/attachment.php?attachmentid=2676&stc=1&d=1357201732[/IMG] [IMG]http://forums.omnigroup.com/attachment.php?attachmentid=2677&stc=1&d=1357206004[/IMG] |
To automate the process of building a stencil of shapes with invisible margins, you could:
[LIST=1][*]Select some shapes with the required dimensions and magnets,[*]run the script below.[/LIST] (Adjust the value of [I]pMargin[/I] to fine-tune the gap between arrows and shapes) (Perhaps you could use this to derive a margin-framed version of an existing process stencil) [CODE]-- GROUP THE SELECTED SHAPE(s) WITH A LARGER (INVISIBLE) FRAMING SHAPE WHICH HAS THE SAME PATTERN OF MAGNETS -- TO ALLOW FOR A MARGIN OF SPACE BETWEEN THE SHAPE AND THE START/END POINTS OF CONNECTING LINES property pTitle : "Make invisible frame for selected shape(s)" property pVer : "0.05" property pMargin : 15 property pDoubleMargin : pMargin * 2 on run tell application id "OGfl" tell front window set lstSeln to selection if length of lstSeln < 1 then return set lstNewSeln to {} repeat with shpBase in lstSeln set shpBase to contents of shpBase if class of shpBase is shape then set {lstOrigin, lstSize, lstMagnets} to {origin, size, magnets} of shpBase -- Calculate the position and dimension for the framing shape repeat with i from 1 to 2 set item i of lstOrigin to (item i of lstOrigin) - pMargin set item i of lstSize to (item i of lstSize) + pDoubleMargin end repeat -- Make a frame (copying the magnets from the base shape) and group the two tell its canvas set shpFrame to make new shape at end of graphics with properties {fill:no fill, draws stroke:false, draws shadow:false, magnets:lstMagnets, origin:lstOrigin, size:lstSize} set end of lstNewSeln to (assemble {shpFrame, shpBase}) end tell end if end repeat set selection to lstNewSeln end tell end tell end run [/CODE] |
Rob, I can't imagine a more perfect answer. Thanks.
|
All times are GMT -8. The time now is 01:11 PM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.