Object references in Shapesheets

C

Chelmite

I'm trying to build some "smart" shapes that will scale properly when the
shape is stretched.

I've drawn one object (Shape.5), an outline of a square.
It has four connection points.
Each connection point is specified with a formula such as the following to
calculate the midpoint.
Connections.C.X=(Geometry1.X1+Geometry1.X2)/2
Connections.C.Y=(Geometry1.Y1+Geometry1.Y2)/2

Another object is some text that's supposed to be aligned with a connection
point.
Its cells look like:
Width=GUARD(TEXTWIDTH(TheText))
Height=GUARD(TEXTHEIGHT(TheText,Width))
PinX=Sheet.5!PinX-Sheet.5!LocPinX+Sheet.5!Connections.C.X
PinY=Sheet.5!PinY-Sheet.5!LocPinY+Sheet.5!Connections.C.Y
LocPinX=Width*0.5
LocPinY=Height*0

So far, this is dandy. These two objects are inside a Master Shape on a
stencil.
When I make an instance of the shape, I can scale as I'd like.
However, the pieces of the cell can be selected and modified.

If, inside the Master shape, I create a group with the square and the text,
as soon as I group the two objects, the text moves down close to the origin
of the page instead of staying linked to the connection point of the square
inside the group.

What's the correct formula for tying an object to a point on another object.

Thanks for your help
P.S.
I'm using Visio 2003 on Windows XP, SP3.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top