Visio Guy

Visio Guy Website & General Stuff => Suggestion Box => Topic started by: hughmcc on November 06, 2016, 02:03:59 PM

Title: Shape sheets and programming
Post by: hughmcc on November 06, 2016, 02:03:59 PM
I am a long time Visio user but not a Visio programmer. 
BACKGROUND: I had a lengthy exec management career at an energy related company.  To scratch my "engineer/geek" itch, I went back to work for about 10 years as a technical writer and used Visio (the last company Visio version used was either 10 or 13).  Ninety-Five percent of Visio usage was for P&IDs (Process and Instrumentation diagrams), Process flow diagrams (PFDs), and equipment drawings.  I retired a couple of years ago at the age of 72.
MY QUANDARY:  My personal Visio copy (still 2007 Professional) was/is used for company's work at home, building elevations and plans, multilayered building electrical planning, device/machinery drawing, fun things I was curious about (bullet ballistics, etc.), DIY plans,and "thought sketching".  As a curious person and engineer (chemical), there have been so many times I wished I could do more with VBA for Visio and with the Shape sheet.  Up to this point, the Visio references that I have seen/purchased get into the basics but only give a quick mention of programming and of how to "program" the shape sheet.  And the references do not seem to be oriented toward engineering/mechanical users.  When I was told the training company used Visio I thought "Why do they use an application for drawing org charts?"  It sometimes seems the evolution of references is rooted in its office-type applications.  Programming/Shapesheet discussions assume experience with VB or VBA for Word, Excel, etc. but Visio does not seem to parallel these.  Does this have something to do with Visio's non-MS origins?
The Developer Reference: DR for Visio 2007 is no longer available online but is attached to the installed Visio program.  Perhaps the online DRs and discussions for later Visio versions have improved the how-to concepts.  The 2007 DR goes into great detail but there is no beginning or end....just a massive bowl of information soup with no easy way to start eating it!!
QUESTION: Is there some online course or reference or undiscovered book/reference that takes one from "soup to nuts"  with regards to programming for Visio (and the shapesheet).  Years ago I started some VB and the process seemed to be fairly straight forward ("hello world", "clicking camera") as it starting from the basics and advanced.  After reviewing VBA for Word, that also seems to be do-able.  But Visio does not seem to have that clear instruction oriented reference (other than some pretty basic stuff). The concepts do not seem to be put together in a digestible whole.
SIMPLE EXAMPLES OF SOMETHING I WOULD WANT TO DO (without having to go buy an expensive program like, say, SolidWorks):
>Animation (auto or manual):  Converting linear motion to circular or vice-versa (think steam locomotive  steam piston driving a wheel)> with variable/parameter change menu.  Part of this would be protecting the Y-position of one end of a fixed length rod while it is being driven by its attachment to a rotating wheel or doing the converse by moving that rod's one end along the x-axis to rotate the wheel. The protected end could be sliding along a guide rod graphically.
>animation of moving equipment and fluids (examples: reciprocating engine, reciprocating compressor, centrifugal pumps/turbines/compressors)
>menu to select different layer views of various compressor systems (oil, steam, controls, etc.) so only that only a particular system's components are displayed when discussed in a particular section of a training manual.  "Build" the compressor in layers with some components of a particular system are also shared/common to another system.  Prevent jumps over hidden lines (see below).  (Example: approximately 30-plus layers on a drawing.  Various combinations of layers had to be turned on/off to get the right image.  I put the instructions in a hidden layer but the manipulation was all manual as opposed to being automated with a simple pop-up menu.  I wanted to have an update-able "master system" drawing so that a separate drawing was not required for each compressor system presentation.  This avoided the problem of system drawings being out of sync since updating multiple drawings leads to errors and additional labor due to all drawings not receiving all updates (i.e: changes in accessory equipment, various fluid lines, valves, controls, etc.).  Worked great and was fun to do but very intense and maybe not so much fun for a following tech writer!
>better connector control (I used connectors 95% of the time for process lines (since one can easily move instruments and equipment with only minor work on the lines)). From the example above, I found (this was a steam turbine driven gas compressor) that subsystems' (control oil, steam seal, lubrication, electrical control, shutdowns, etc.) lines and components can interfere with each other when displaying/printing a single subsystem.  A lot of manual manipulation was needed to make sure that line jumps worked out properly; in some cases, graphic "jump"or "no-jump" objects were added to show the proper jump or hide jumps caused by hidden lines. .  In other words, if a subsystem was hidden when another system was being discussed, it is disconcerting to see a line jump caused by a hidden line.  And changes in direction along connector paths did not always allow the line jump behavior ("never", "always", "always to other", "to neither", "as page specifies") to work out.  Can lines (or connectors) be programmed to behave differently depending upon a  particular selected scenario ( when, say, control oil system is to be displayed, the control oil lines will not "be required" to jump a line that is on a hidden layer)?

PS: If you haven't passed away by the time you read this, time is of the essence.  LOL

Title: Re: Shape sheets and programming
Post by: Surrogate on November 06, 2016, 04:46:10 PM
some links for you