
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Hello,
I'm in the process of teaching myself how to work with dynamic blocks, with the eventual goal of creating varying instances of them using lisp routines. I'm pretty new, so bear with me if this is a lot simpler than I'm making it...
I have a simple dynamic block with 2 array actions defined and working how I want them to. Now i'm wondering if and/or where it is possible to change the size of the arrays explicitly (not just by dragging the handle), and edit individual elements of the array. Eventually, I'd like to do all this with lisp, but for now I just want to do it within AutoCAD so i can get a grasp on WHAT exactly I need to manipulate when I write the lisp program.
I've attached the file I'm working on to this post. The very end goal of this exercise is to end up with a lisp routine that creates an instance of "block" (as it's temporarily called in the file), ask the user (or a reference csv/txt file) how big it should be (# of lines - you'll see what I mean in the file), and change the values of the arrayed text items to values that will be pulled off of a csv file.
Obviously I have a long way to go, and as I said I'm learning, so I do not expect anyone to build this for me, just take a look at what I have and kind of point me in the right direction for my next steps.
Some specific questions:
1. Is what i'm trying to do possible?
2. Should I be arraying text objects and trying to explicity edit each one (it will be automated, not the users job), or should I be using attributes? I feel like I should actually be using attributes as that will make it easier for me to parse information from the completed project, but I can't seem to find out how, if it's even possible, to procedurally generate (array of attributes?) more attributes to match the number of lines being used.
3. Have I gone about this all wrong and should I blow it up and start over from a completely different way of going about it?
Solved! Go to Solution.