Details - Bind Xref's or Inserts?

Discussion in 'AutoCAD' started by Jason Wilder, Feb 5, 2004.

  1. Jason Wilder

    Jason Wilder Guest

    I am attempting a workaround our master details sheets which I currently use
    VBA to create on a job setup.

    Here's the issue I need to work around, perhaps some ideas can be tossed my
    way. I have created 'master' detail sheets that get inserted when a detail
    sheet is setup. If one of those details get changed without being inserted
    on the 'master' sheet, then an older version of the detail continues being
    used in the job setup until someone realizes the 'master' sheet needs to be
    updated (i.e. the updated detail needs to be inserted into the 'master' to
    update the block definition)

    So, one idea was to make the 'master' sheet comprised of xrefs and then
    xref/bind/insert the details, but this won't carry over through
    ThisDrawing.ModelSpace.InsertBlock.

    Another idea was to create a point array for block inserts, then write a
    name array for the blocks that I want inserted - upon creating the detail
    sheet. I'm thinking this might be the better way to go.

    Wanted to get feedback or ideas, perhaps someone has done something similar
    and can give me some pointers.

    Thanks.

    Jason
     
    Jason Wilder, Feb 5, 2004
    #1
  2. Jason Wilder

    David Kozina Guest

    Create a simple, small 'placeholder' drawing, like a target or arrowhead
    (put the subentities on Defpoints, so they won't plot, even if visible on
    screen).

    Xref and alias this drawing as required for your sheet layout.
    One alias per detail spot. (UDS module naming works well for this: A1, C3,
    D5, etc.) This can be automated without to much difficulty.

    Creating new sheets then become a matter of editing the sheet number, and
    then simply remapping the xref placeholders to different details, the latter
    also being fairly easily automated if you use consistent file and alias
    names (think substring matching).

    That's what we've done for about 3 years now (via autolisp programming, not
    vba), and it's worked well throughout all that time.

    hth,
    David Kozina
     
    David Kozina, Feb 5, 2004
    #2
  3. Jason Wilder

    Matt W Guest

    Why not just "insert" the details from the network?? That's what I've done
    for my project setup proggy. This way I know I've always got the most
    recent, then I can explode it and make changes on a job-by-job basis.
     
    Matt W, Feb 5, 2004
    #3
  4. Jason Wilder

    Jason Wilder Guest

    That is what my second option is, just automated by mapping the insertion
    points on our detail grid and then keeping a list of standard details
    somewhere, perhaps using a script file.

    Just haven't decided if this is the option I'll proceed with.
     
    Jason Wilder, Feb 5, 2004
    #4
  5. Jason Wilder

    Jason Wilder Guest

    I think I follow what you're describing for the most part, but is this done
    with a drawing template, or a copy/save of a template drawing somewhere?

    In a sense, this isn't much different than just keeping a point/name array
    for inserting blocks. With your method, I'd still have to Bind/Insert all
    the xref'd blocks.
     
    Jason Wilder, Feb 5, 2004
    #5
  6. Jason Wilder

    David Kozina Guest

    Jason,

    See below...


    Actually, you can setup a sheet layout like this 'on the fly' - anytime you
    need, as well as allow the user to determine the x,y spacing of the details,
    and the number of rows and columns - sometimes the clients we have use
    different sized drawing 'modules', so this becomes a nice feature when that
    happens.


    What for? - Perhaps I need to clarify that the only place we do something
    like this (or need to) is in our plot sheet drawings. All our detail
    drawings are separate drawing files. This allows: 1- Multiple people to
    edit the details on a sheet. 2- Custom sheet setups using only the details
    we really need for a project.

    We maintain a master standard detail library.

    When we start a new project, we determine what details apply and then copy
    them to the project folder.

    Then the details are renamed according to the sheet and location they'll be
    used.

    A simple little graph-paper or Excel table sheet 'mock-up' can be handy in
    determining what details will be used where.

    Whenever we open a detail drawing, we have in place a small routine that
    automatically senses when the drawing has a 'detail-like' filename. When
    that happens, and if there is a bubble block to update, the detail title
    bubble is updated to reflect its identity sheet/detail# derived from the
    filename. Now all the details are set up and numbered correctly. If we
    later need to 'move' a detail to a new location, or a new drawing - we just
    change its filename and then reopen it... (see why?)

    To set up a plot sheet drawing:
    We open a blank template file, set up the titleblock, and save it with a
    name corresponding with the details that will go on it - i.e. SE502.dwg will
    reference details SE502-A2.dwg, SE502-C4.dwg, etc.

    Layout the 'placeholder xrefs' as described in a previous message, and
    above.

    Using an xref update routine, as also described previously - the
    corresponding details matching that sheet number are found and remapped at
    the placeholder locations - A2, C4, etc.
    "A2=SE502-A2.dwg"...
    "C4=SE502-C4.dwg"...

    Any details 'not found' are remapped back to the placeholder drawing.
    One plot sheet set up.

    Now copy the file and rename it to SE503.dwg.
    Re-run the xref update routine.
    Fix the sheet number in the title block
    Another plot sheet set up...

    etc...

    It may sound rather complicated - but the consistency of the operations (and
    file/alias names) really resulted in pretty clean and straightforward
    programming. At least, I thought so.

    Basically, the plot sheets are just a shell - about the only thing of
    importance in them is the sheet number.

    Hope this gives you some ideas,
    David Kozina
     
    David Kozina, Feb 5, 2004
    #6
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.