1D Shape should always have the same length

Started by Jumpy, May 10, 2010, 01:54:38 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Jumpy

Hello,

in the attached drawing, is my current troublemaker. It is a shape with some geometry sections which change the look of the shape, following a selection in the Shape Data and represents a temperature sensor that changes it's look depending on it's field of use. That is OK so far and working.

It started live as a 2D Shape, but a new requirement is, that it should be able to glue to (somewhere on the geometry!!! of) other 2D Shapes. So I couldn't use 2D gluing and transformed it to an 1D Shape.

Problem is that it should not change its length, when a shape, it is glued to, moves.
It should only be glued to with it's tip that is at EndX/Y, so I tried sth. with the Guard function in BeginX/Y referencing EndX/Y+4mm, but that doesn't work.
Especially because the shape should be used horizontal and vertical, that is in 0 deg, +/- 90 deg and +/- 180 deg.

I tried to implement that dependency in the guard function but that led to a circular statement that you can see in the shapesheet.

I hope you understand, what I want that shape to do, and maybe have an idea how to accomplish that.

Thank you,
Jumpy

Yacine

#1
Hallo Jumpy,

if I have understood you well, the problem is very easy to solve.
The trick is to set values in the dirX and dirY fields of the connection points. MS has somewhere in the web a nice article about this. (should find it  ::))

It works for both 1D and 2D shapes as my answer attachment shows.

Gruß

PS: forgot to mention that I changed also the connection type on both sides to 2 (inward + outward). A smarter "shapesheeter" would change the type to either 0 or 1. But I am too lazy (I mean "effective") ;).

PPS: Wow! did I just invent a new profession: the "shapesheeter"?  ;D
Yacine

vojo

#2
so yaccine...your drawing has the flaw jumpy cites (outer circles move when intercircle hieght is changed).

Either there is some really big disconnect between your environment and mine.....or your understanding of the desired goal vs mine...or you are 0 for 2...or or or

Yacine

#3
I told you to write  S L O W L Y, I'm slow to understand.

The sensors shall not change their sizes, but stay connected to the containers. I addition, they should by able to be used in several angles. You need to write to me even slowlier, I am still not getting your objection.

Jumpy! we need you to arbitrate.
Yacine

wapperdude

#4
At least on V2007, Yacine's solution seems to work.  Both 1D and 2D shapes glue to a main shape, and travel along when the main shape is moved without resizing.

Additionally, you could set the protection to lock the width, height.  For the 2D, it may also be necessary to lock the VrtxEdit in the shapesheet.

Wapperdude
Visio 2019 Pro

Jumpy

#5
Hi Yacine,

thank you for your first try (yes, that means I need another one).

The small problem is, that the Sensor may not change it's size. Your's do that, but I think a proper Guard or protection would take care of that.

The big problem is, that it would be an exception, to glue it to a connection point of a shape.
The normal case is, that it could be glued anywhere on a shape and therefore needs to be glued to the geometry, where I can't specify directions and types of a connection point.
The user should not be bothered with creating a connection point where he needs it, which would eventually be a possible compromise, and he should, if possible never know that there is sth. like a ShapeSheet, where he could do horrible things to my poor shapes  ;D

Hope my problem is more clear now and you or one of the other guys here has an idea.

As I go to bed know, because a classwork about PCIe and SATA is waiting for me tomorrow, I wish you a good and productive night and hopefully an idea is waiting for me after school...

Jumpy  8)

Yacine

#6
Hi Jumpy,

how interesting. I so often tend to underestimate, problems raised in this forum. Mea culpa maxima.

It took me a while, but I some how found a solution to your problem, and you won't like:
- The 2D-Shape is the one you need.
- You don't need any additional settings.
- BUT, when you drag your sensor to the arbitrary geometry to which you want to glue it, you need to wait a moment (3-5 seconds?) till Visio finishes it's internal calculations and offers you a gluing to a point of that geometry  (your container/vessel). (Watch also my snapping settings)
- The Sensor will be directed either inwards or outwards depending upon it's initial orientation. (So bad!)

I am not sure that one can explain this behaviour to D.A.U.s  (I mean Not-Geeks), thus this solution seems to me not very viable.

I often do need sensors in my P&IDs and chose the opposite approach. The shape is only connected by a line to it's measuring point, but does not moves nor rotate itself. Could that be a solution for you? (Check the P-"basic"-Sensor in the attachment).
Yacine

Yacine

#7
Your sensor solution raises another question.
Namely, is it better to put the different configurations in geometry sections or in sub-shapes?

I personally tend to prefer the group / sub-shape solution because it is more flexible in matters of different formats for elements of a certain configuration. It seems to me also more maintainable as it requires less logics and can easily be extend. It may be a little bit heavier, but I actually found only one disadvantage, that is when you export to DXF the non-active sub-shapes appear as well.
Yacine

Jumpy

#8
Yacine: Thanks.

Your 2D sensor looks good to me. I didn't know that you can glue ConnectionPoints Type 2 to geometry sections.
I thought I had tried it out, but didn't work. Obviously that was wrong.

The Shapes it shall glue to are only boxes, not circular, so sensor's only coming from left, right, top, bottom and that worked fine in your example.
I expierienced 2 times the mentioned orientation problem, but reglueing the sensor a little bit left or right of the spot and it worked again, thats sth. the users could (for a start) live with I think.

I still have copies from the sensor as a 2D Shape, so it won't be to difficult to test your idea on my shapes, when I'm back at work.

------------
Normally in multi shapes I tend to use the "group and hide what shall not be seen" variant, too. Don't know why I've done this different this time.
------------

The sensor has connection points at it's head, too. There you can connect a wire(shape) that connects to a Control untit of a valve or an engine somewhere.
Another idea for the next generation of my solution could be to work only whith the wire shape an give it custom made line ends. But I have to think about that for a little while longer.

Jumpy

#9
It worked, especially after I set DirX/Y to 0 mm again, because since then I didn't have the orientation problem again. Don't know why.

I fail to understand what this fields really do and what happen if I change the type of the row.

wapperdude

#10
Took a little while to find this, but, I knew it was out there -- VisioGuy did an article on connectivity directions, see this:  http://www.visguy.com/2006/10/12/connection-point-directions-types/

Wapperdude
Visio 2019 Pro

Yacine

#11
Quote from: Jumpy on May 11, 2010, 06:16:33 AM
the next generation of my solution could be to work only whith the wire shape an give it custom made line end.

Hi Jumpy,
The all-in-one connector may be a pleasant idea that would save some mouse clicks, but there are several points to consider:
- connectors don't orient to oblique shape borders (eg round bottom of vessels)
- if you happen to share your document with customers / externals the line patterns can get lost. (experienced it personally and needed to explain that the shown lines had to be understood differently)
- you may want to display only the container with it's sensors, without peripheral equipment.

May be you could save the sensor with it's cable as master and ungroup on drop.
Yacine

Jumpy

#12
That are very good considerations, Yacine. Thank you. Maybe the Sensor as Line End of a Wire Shape is not the good idea I thought it was.

Yacine

#13
alter Schleimer. Müssen aufpassen, dass die Tapete nicht abblättert.  ;D
Yacine