## How to shrink a shape to a constant width perpendicular to the original?

Started by Jennifer, September 24, 2018, 09:30:13 AM

0 Members and 1 Guest are viewing this topic.

#### Jennifer

My subject line is probably poorly worded. Let me explain.

I want to create a heart shape that is the result of a fragment operation of two heart shapes where one is 0.5" smaller than the other as measured on a line perpendicular to the tangent line at every point.

If I wanted to do this for circle shapes, I just create 2 shapes with radii that differ by 0.5" (diameter by 1.0"), then select them both and fragment. But with these non-symmetrical, shrinking the second shape does not produce a uniform width.

In the attached image 01, the black shape is the master. The green and blue shapes were created by changing the width or height by 1.0" with the aspect ration locked. The red shape was created by changing both the height and width.

The circles are exactly 0.5" in diameter.

T=The second attached image shows that I want. I got this my making the line 0.5" think and then overlaying a second shape with a line width of 0.49" set to white.

Using Visio 2019, part of Office 365 on Windows 10

#### bmwk100dk

Hi Jennifer
I'm not quite sure what you want, to me it sounds like you could use the offset function under operations in the delveloper tap. And if you just want a heart shaped rim, then just subtract the shapes.

Kind regards
Bo

Yo, Bo!
Yacine

#### Jennifer

Quote from: bmwk100dk on September 24, 2018, 10:21:27 AM
Hi Jennifer
I'm not quite sure what you want, to me it sounds like you could use the offset function under operations in the developer tab.
This looks like exactly what I wanted. The attached image shows what I got using 0.5" as the offset. The circles are 0.5" in diameter. The offset looks to be exactly 0.5" except at the points.

This function would be slightly more useful if it had an option to choose something like Inside, Outside, or Both.

QuoteAnd if you just want a heart shaped rim, then just subtract the shapes.
I have been using Fragment. I just tried Subtract. Interesting. It appears to subtract the area of the smaller shape from that of the larger one, correct?

Out of curiosity, I tried a more complicated shape as shows in the second attachment. It's not clear to me what it is doing in the more general case.

Thank you.
Using Visio 2019, part of Office 365 on Windows 10

#### Jennifer

Quote from: Yacine on September 24, 2018, 11:11:54 AM
Yo, Bo!
How did you get the arc (rounded) tip? I got the sharp tip from my Subtract operation.
Using Visio 2019, part of Office 365 on Windows 10

#### Yacine

#5
Quote from: Jennifer on September 24, 2018, 04:29:22 PM
How did you get the arc (rounded) tip? I got the sharp tip from my Subtract operation.

On the image I posted I labelled the round corner as "arc, graphical". Not sure if it's the right english name. It's an arc from the standard visio shapes, where you have the centre as 1 point and 2 more points for the arc ends. I put the centre on the sharp tip and the ends on the offset ends.

Check the VSD.
Yacine

#### Jennifer

Quote from: Yacine on September 24, 2018, 04:42:02 PM
Quote from: Jennifer on September 24, 2018, 04:29:22 PM
How did you get the arc (rounded) tip? I got the sharp tip from my Subtract operation.

On the image I posted I labelled the round corner as "arc, graphical". Not sure if it's the right english name. It's an arc from the standard visio shapes, where you have the centre as 1 point and 2 more points for the arc ends. I put the centre on the sharp tip and the ends on the offset ends.

Check the VSD.
OK. And why did you do that? I don't understand the (rounded) point you were trying to make.
Using Visio 2019, part of Office 365 on Windows 10

#### Yacine

#7
Because the ends of the offset would not converge to a common point (while keeping their curvature). Adding a circle segment is one trivial solution to close the curve.
Closing the offset ("smoothly") by other means, would require modifying their curvature - IMHO much more complicated.
Yacine

#### Jennifer

Quote from: Yacine on September 24, 2018, 05:38:53 PM
Because the ends of the offset would not converge to a common point (while keeping their curvature). Adding a circle segment is one trivial solution to close the curve.
Closing the offset ("smoothly") by other means, would require modifying their curvature - IMHO much more complicated.
OK. My solution was to use the "outer" offset shape, which does form a single shape with a pointed tip. So if I wanted a shape with a 0.5" "border", and the inner offset shape did not converge, I would shrink the original shape by 0.5" (1.0" in each dimension) and then take the outer Offset shape.

Thanks to everyone for all the help.
Using Visio 2019, part of Office 365 on Windows 10

#### Yacine

#9
Jenny, you're one of the few people of the forum capable of pushing a subject that seems trivial at first glance to a level where it gets interesting.
The matter with this one (subject), is that closing the offset curves is not trivial at all.Your examples look good, but both my outer and inner offsets where open and would need a "kind of procedure" to close them.
I honestly wouldn't know where and how to start to solve automatically and smoothly the "closing" issue.
I look forward to reading yours or other's contributions to the question.
Yacine

#### Jennifer

Quote from: Yacine on September 24, 2018, 07:47:19 PM
Jenny, you're one of the few people of the forum capable of pushing a subject that seems trivial at first glance to a level where it gets interesting.
(chuckle) Thanks. My motto is, "anything worth doing is worth overdoing". I think I stole that from Oscar Wilde.

QuoteThe matter with this one (subject), is that closing the offset curves is not trivial at all. Your examples look good, but both my outer and inner offsets were open and would need a "kind of procedure" to close them.
I honestly wouldn't know where and how to start to solve automatically and smoothly the "closing" issue.
I look forward to reading yours or other's contributions to the question.
I have no idea how to close these shapes, either. It sounds like the geniuses at \$MSFT need to add another option to the Offset operation dialog.
Using Visio 2019, part of Office 365 on Windows 10

#### Jennifer

In case my reputation for taking things way too far is lagging, here is the results of a little more empirical research into the Offset operation.

The first attachment illustrates how the Subtract operation works when one shape is wholly contained within the other and when it is not (overlaps). When it is, the area of the inside shape is subtracted from that of the other. When they overlap, the area of the foreground shape is subtracted from that of the other.

The second attachment illustrates some cool effects that can be achieved using Subtract. In the first example, little stars are cut out of the heart. These are actual holes, as illustrated in the second example showing a Swiss cheese heart with a mouse behind it. The last example shows an outline of a lake made into a birder using Offset & Subtract. The inner Offset shape has a discontinuity at A, which would need to be closed.

OK. Now I'm done -- at least for now.

Using Visio 2019, part of Office 365 on Windows 10