Community
Dynamic Blocks Forum
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

OOTB Multiple Visibility States - SOLUTION!

152 REPLIES 152
SOLVED
Reply
Message 1 of 153
Libbya
60033 Views, 152 Replies

OOTB Multiple Visibility States - SOLUTION!

I have done a fair amount of thinking on how to create multiple visibility states without using the broken vis-add-eng LISP and have come up with a workaround solution!  Obviously, doing all the itterations for multiple visbility states is a bit cumbersome, but at least there IS a workaround.  See attached.

 

 

152 REPLIES 152
Message 101 of 153
logan.lewis2B7ZD
in reply to: Libbya

"Don't use the double lookup method for 32000 visibility states.  Someone else even made a lisp routine for making/defining the visibility states and the end result was that after you have input an absurd number of states, the block is extremely slow to work.  

 

When the number of visibility states becomes daunting then either use the scaling method for making things visible or a dot, or split it up into separate blocks.  "

 

I only have 47 visibility states that I actually need to use, but setting them up the way I want to means I need to make an absurdly long table for all input permutations.  I was hoping to find a way for it to ignore some of the input data if it is not relevant, but it is really glitchy.  See what I mean in the test block I linked above.

Message 102 of 153
Libbya
in reply to: logan.lewis2B7ZD

You don't need an absurdly long table for switching.  You're just not doing it right.  🙂  You only need the 47 visibility states and only need 1 row per visibility state for switching.  

Message 103 of 153
logan.lewis2B7ZD
in reply to: Libbya

That is awesome. 

 

I tried something similar without using "[0.)" in the empty cells.  Obviously it didn't work.  That is exactly what I was missing. 

 

Thanks!

Message 104 of 153
Libbya
in reply to: logan.lewis2B7ZD

I'm not sure if that is just a typo or the reason it didn't work for you, but the range value syntax must must be [0,) not [0.).

Message 105 of 153
logan.lewis2B7ZD
in reply to: Libbya

Typo.  Edit:  I didn't even think that any kind of syntax commands would work there.  That makes me wonder what else can be done in lookup tables. 

Message 106 of 153
Libbya
in reply to: logan.lewis2B7ZD

You can use a variety of values for any cell of the table.  Each value should be separated by a comma.  Range values use either brackets or parentheses or a combination.  The value next to the bracket is included in the range.  The value next to the parenthesis is not included in the range.  When the value on one side of the range is missing and a parenthesis is used, the range includes all values that direction.  In your particular case I could have used quite a few different methods, but that was what popped out at me as simplest to type.  🙂  For example, a single cell could include the following: 1,3,[7,10).  That cell would be true for the values of 1, 3, and all values from 7 to 10 including 7 and not including 10.

 

The input table of a double lookup can be read only, so you can also have multiple rows that equal the same lookup value on the input table. 

 

The output table (in this case visibility) must 'allow reverse lookup' so it must have a single row matched to each lookup value. 

 

Hope that helps.    

Message 107 of 153
kpennell
in reply to: Libbya

this is quite the thread you have going. 🙂

 

I've read through most of the 106 or so posts, but I'm getting something with the descriptions and sreen shots.  Do you know of a youtube video that describes how to accomplish this?

 

My goal is to have a pull down for a 'field weld', and another pull down for an 'all around weld' symbol.

Message 108 of 153

This is my crappy video showing the steps.
https://youtu.be/AWtZ9jMmLGE
Civil Reminders
http://blog.civil3dreminders.com/
http://www.CivilReminders.com/
Alumni
Message 109 of 153
Anonymous
in reply to: Libbya

Hi Libbya,

 

Thank you so much for the solution! I am able to follow your steps and almost achieve what I wanted...

 

My block allows one to select different types of level tag and each tag has the option to show or hide an arrow indicator. I've also added flip actions to allow flipping of the arrow. I've followed all your steps and all things are good except that I noticed a glitch in my block. After I flip the arrow to certain locations, the lookup for selecting different level tag became unresponsive (the block doesn't respond when I select any level tag).

 

I'm out of my wits to figure out what causes this glitch. Hope you are able to help me on this. I've attached my block here.

 

Thank you very much in advance!

Message 110 of 153
ojuris
in reply to: Anonymous

hi!

Problem is when you use flip actions coordinates X or Y of point parameter Position1 changes but it mustn't.

1. I add point parameter in both flip actions

2. create 2 new flip parameters - both thru 0,0 coordinate and 1. vertical and 2. horizontal. In both actions add point parameter.

3. create 2 double lookups to make flip parameters work together - vertical with vertical and horizontal with horizontal.

 

Now when you flip coordinates not changed for point parameter.

 

 

 
 
Message 111 of 153
Libbya
in reply to: ojuris

The X or Y values of the point parameters within the block are always relative to the base point or block origin if there is no base point parameter added.  If a base point parameter is added and then its position is changed dynamically, position of any point parameters are affected.  In other words if you have a point parameter at 1,1 relative to the base point at 0,0 and then you move the base point to 2,0 without moving the point parameter the same way, then the point parameter value will change to -1,1.  Make sense?

 

There's a simple method to fix the issue.  Add a chained point/move to the 0,0 point (at the same location as the base point).  Add the base point and any point parameters that are used as lookup input parameters to the selection set of the new move action.  Remove the base point parameter and any input point parameters from the selection sets of any other move, stretch, flip, rotate, polar actions.  Add the new chained point/move to the selection set of any action you would like to affect the base point position.  Whenever the base point position is changed, the position of the input point parameters will be changed in the same manner, and so their position X and position Y (relative to the base point) will remain constant and unchanged. 

 

See screencast.

 

 

Message 112 of 153
jrr
Contributor
in reply to: Libbya

You are a the master of dynamic blocks.

Can the length of the box around text be adjustable to the length of text string?

Message 113 of 153
Libbya
in reply to: jrr

Not automatically.  Text string length cannot drive dynamic parameter changes.  You could add a linear/stretch to the box and do so manually or you could add the linear parameter to your lookup table and have the distances set for the different text lengths.   

Message 114 of 153
Anonymous
in reply to: ojuris

Hi ojuris,

 

Thank you for your help. Do you mind send me the CAD file in version not later than 2015? Sorry as I'm still using AutoCAD 2015 hence can't open your attached file.

Message 115 of 153
Anonymous
in reply to: Libbya

Hi Libbya,

 

Thanks much for your help! I followed your steps and it solved the problem! 👍

Message 116 of 153
ojuris
in reply to: Anonymous

2013 version

 
 
Message 117 of 153
Anonymous
in reply to: ojuris

Hi ojuris, thanks for the file. That's an interesting solution as well. Thank you. 😃

 

 

Message 118 of 153
Anonymous
in reply to: Libbya

Hi Libbya,

 

Btw thanks for your time explaining the concept. Didn't know dynamic block can works in such complex way and thus have more potential. 😃

Message 119 of 153
AutoMarcus
in reply to: Libbya

Hi Libby

Is there a chance you could please do a youtube video instruction for slow people like me trying to get their head around this?

Message 120 of 153
Anonymous
in reply to: Libbya

Hi Libbya,

 

Sorry I just realised there's another glitch in my block (Refer to attached CAD file). When using the block, from the visibility option at the top select TOW - TOP OF WALL LEVEL; then from the visibility option at the arrow select Show Arrow on Short Side. After this, when I select any other type of LEVEL it will change to FL and stuck there no matter what options I choose until I turn off the arrow.

 

This issue only happens after using the short arrow. Fyi only TOW LEVEL contains this additional short arrow. Greatly appreciate if you could help me on this please. 🙏

 

Thank you!

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Customer Advisory Groups


”Boost