Jump to content


Recommended Posts

Hello all!


Let me first say that I've been looking through some of the threads on this forum and am blown away by the knowledge and creativity some of you possess. It's ridiculous the things you guys are able to do with AutoCAD.


With that said, I'm hoping someone can help me solve a difficult problem I've been having. I've never created dynamic blocks and am learning as I go. I've scoured the internet looking for the answer for my needs and have experimented for hours but am still left without a working block.


--A quick note before I begin, I'm using AutoCAD LT 2016 for all of this--



What I'm trying to do is create a dynamic solar panel block that can accomplish three things:


1. Dynamically fill a distance (up to 310' for fire code) with solar panels


2. Have three visibility states representing different angles for the solar panels


3. Have a solar panel counter that is visible within the properties but doesn't actually show up in the model


Bonus: Dynamically fill an area with solar panels with the same requirements



So far I've been able to accomplish #1 and #2 but to a limited degree. I can fill a distance just fine but if I change visibility states, the length is reset back to it's original. I need to be able to change visibility states without the length going away.


#3 is the real problem. I have tried dozens of Attribute Definition combinations but can't seem to find one that works.


The bonus would be nice to accomplish and I was able to do so with some success but didn't try to implement the visibility states or counter given the difficulty I've found just trying to make the lengthening block.



I'm sure there are those of you that could create my block in no time at all and while I do appreciate that, what I'm really wanting is to learn what mistakes I'm making and how to do fix them myself. I've attached both the block that I've made as well as a file (posted on this very forum) that essentially recreates what I'm trying to accomplish (with a few tweaks e.g. I'm limited to using architectural units and I don't want a visible counter).


Any help or direction would be greatly appreciated!



Fixed Solar Module 1.dwg

Link to comment
Share on other sites

As they say a picture is worth a thousand words, so attached is a block that hopefully does what you want. It would take forever to try and describe the slight adjustments. Your block is well done, just a few simple changes, but it is things that you pick up by practicing.

The fact that swapping between visibility states results in your array going back to the starting point is that you have used 3 linear parameters, one for each visibility state, this isn't neccessary, a single linear parameter can be used so long as it is visible in all three states, you only need to select different objects that are visible, but all the objects are included in the same selection set. (I hope that makes sense).

To get a count I used an attribute that contains a formula and set it's visibility property to invisible. I had to adjust the length of your linear parameter, Architectural units are fine but not very accurate at reporting distances (your linear parameter was actually 4'-11 4/64" and a bit!!).

I hope this works as you want, if you need help understanding any of the points please ask, I know how frustrating it can be figuring out what is what in dynamic blocks.

Fixed Solar Module 1(2).dwg

Link to comment
Share on other sites

  • 1 year later...

Hi Steven-g,


Your solution sounds like what I'm looking for; I wonder you wouldn't mind elaborating on the formula?


I have a dynamic block with an array (on a linear parameter) and I want a way of counting the number of iterations of the block.


I think your formula would at least count the number of iterations per block insert, although in an ideal world I'd like to be able to quickly calculate the total number of visible blocks (all the insertions of the block and their iterations).

Link to comment
Share on other sites

The formula in the original post, is used to find how many objects are in the array, the linear parameter "distance1" was 1' 7-23/64" longer than the array offset? and the resulting length is just divided by the array offset. You just just have to find the correct numbers by measuring or using the properties toolpalette. To find the values for all blocks in the drawing you will need to use ATTEXT, or if you use full Autocad I think Dataextraction will do it.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...