AutoCAD Architecture Forum
Welcome to Autodesk’s AutoCAD Architecture Forums. Share your knowledge, ask questions, and explore popular AutoCAD Architecture topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Blocks corrupted

4 REPLIES 4
Reply
Message 1 of 5
Anonymous
3709 Views, 4 Replies

Blocks corrupted

In AutoCAD Architecture 2014 64bit I have this project that I was creating, it's a building that will then be moved to 3dsmax to be rendered. While furnishing the final rooms I came up with a strange problem, my blocks are getting "scrambled" so to speak, as in torn apart and "randomly" spilled out in the sorrounding areas of where they are located (according to the top view, where everything looks normal).

I tried several computers (even 2013 vs 2014 and a fresh install) so I know it's not software related, it's something corrupted in the file, however, no amount of running audit or recover seems to fix it.

 

At this point I'll have to start from scratch if I can't fix it.

 

Attatched are pertinent screnshots of the issue.

 

4 REPLIES 4
Message 2 of 5
David_W_Koch
in reply to: Anonymous

It appears that you are inserting the Imperial multi-view block I_Appl_Refrig_Side-Side.  This works fine for me if I insert it into a drawing with Imperial units, but if I insert it into a Metric unit drawing (in this case, millimeters) with unit rescaling active, I can reproduce your results.

 

Here is what is happening:  The 2D blocks used for the I_APPL_REFRIG_SIDE-SIDE_P (top and bottom view directiions), I_APPL_REFRIG_SIDE-SIDE_F (front and back view directions), I_APPL_REFRIG_SIDE-SIDE_R (right view direction) and I_APPL_REFRIG_SIDE-SIDE_L (left view direction) view blocks are all blocks with nested linework, but no nested block definitions.  These are rescaled properly, and because the insertion point of each of these is at the insertion point of the Multi-View Block Definition, they stay where they belong.

 

The I_APPL_REFRIG_SIDE-SIDE_M view block, used for the other view direction in the General Display Representation, and all view directions in the Model Display Representation, is a different story.  There are three nested instances of a block called 3DBLOCK, which is a "unit block" consisting of six 3D Faces arranged as a cube, one unit long on each side.  On instance of this block is scaled to represent the refrigerator body, and its insertion point matches that of the Multi-View Block, so it comes in at the right place, and the unit scaling is applied, so it comes in at the right size.  The other two blocks represent the refrigerator doors.  The unit scaling gets them to be the correct size, but the insertion points are not at the Multi-View Block insertion point, and the distance that each is from that insertion point is NOT scaled when the unit scaling is applied.  So they end up being 24 mm from the back of the refrigerator, instead of (24*25.4) mm from the back.  Likewise, the bottom edge of the doors ends up 3 mm above the bottom of the refrigerator, rather than (3*25.4) mm.  The door handles are not nested blocks, but consist of 3D Faces and Polygon Meshes.  I am not quite certain why these end up where they do (X and Z location appears to be ok, but they are offset in the Y direction such that they are beyond the extents of the refrigerator body), but I assume some similar mis-translation is at work here.

 

You should not have to start from scratch.  All you would need to do is redefine the I_APPL_REFRIG_SIDE-SIDE_M block and relocate the door panels and door handles to be in the correct 3D positions.  I would highly recommend that you rename the view blocks, replacing the initial "I" (Imperial) with "M" (Metric) and do the same for the Multi-View Block name as well.  That way you will know it is for Metric drawings and if the out-of-the-box Imperial view blocks should already be in a drawing, that will not affect your revised Metric refrigerator.

 

You may also want to redefine the other blocks within your metric file.  I found that the block definitions got properly rescaled when the imperial Multi-View Block was inserted into a metric file, but if I tried to insert one of the block definitions in that file, ACA "remembered" that the original block came from an Imperial source and applied a scale factor of 25.4.  If you never use the block definitions on their own, it may not matter, but I found the behavior annoying.


David Koch
AutoCAD Architecture and Revit User
Blog | LinkedIn
EESignature

Message 3 of 5
Anonymous
in reply to: David_W_Koch

Thank you very much for your detailed answer! I'm quite new to 3D modeling, so while I got the jist of what you were saying (that the fridge is defined by several blocks and that those that are used for the top view are automatically scaled correctly but those for the other views are inserted in the wrong points), I'm not sure I understood it 100%. I also don't know how to redifine my blocks to solve the issue. Just to clear it up then, the problem is because I'm using imperial blocks in a metric drawing (and this isnt supposed to work i.e. it's not something I should be doing to begin with). If this is the case, and I can't use imperial blocks in a metric drawing, where can I get a wider variety of metric-compatible objects?

 

Thanks

Message 4 of 5
David_W_Koch
in reply to: Anonymous

Turns out I was wrong about the main refrigerator body nested 3D block as well - that is not in the correct place relative to the Multi-View Block insertion point, which is supposed to be in the middle back of the refrigerator.  In the Imperial version, that puts the insertion point 18" from the center; when imported into a metric drawing, the insertion point ends up 18 mm from the Multi-View Block insertion point, instead of (18 * 25.4) mm.  So the door handles are in the correct spot (since they are not nested blocks, the scaling affects their offsets from the parent block's origin, whereas the offset is not scaled for nested blocks (as previously noted, and, in my opinion, a bug).

 

I hope to post back soon with some more information about how ACA Multi-View Blocks are constructed and a corrected sample so you can see what I did to fix the "3D" view block.


David Koch
AutoCAD Architecture and Revit User
Blog | LinkedIn
EESignature

Message 5 of 5
David_W_Koch
in reply to: David_W_Koch

I found some slight discrepancies between the model view block and some of the other view blocks in the original Imperial I_Appl_Refrig_Side-Side Multi-View Block, as inserted from the DesignCenter (AEC Content tab > Custom Applications > AutoCAD Architecture > Imperial > Design > Equipment > Food Service > Refrigerator > Side-Side).  This same content file is referenced by the Side-Side tool palette tool available in the Design Tool Catalog - Imperial (Equipment > Food Service > Refrigerator).  I took the liberty of fixing the discrepancies, and also adding graphics to the plan view block to represent the handles.

 

In case you (or others reading this thread) are not familiar with the way Multi-View Blocks [MVB] work, you may find the following article of interest:

http://architects-desktop.blogspot.com/2006/10/multi-view-block-creation.html

 

I will try to explain the issue with inserting the Imperial Side-Side content (which inserts a MVB called I_Appl_Refrig_Side-Side) in more detail.  The attached image file, Side-Side_Imperial-vs-Metric.png, shows the out-of-the-box verision of the I_APPL_REFRIG_SIDE-SIDE_M block ["M" view block], which is assigned to the Other view direction in the General Display Representation and to all view directions in the Model Display Representation for the I_Appl_Refrig_Side-Side MVB.  The left side is the result when inserted in a drawing with the unit set to inches.  On the right side, the image shows the result of inserting the block in a drawing with the unit set to millimeters.  Both images have a blue "X" at the block insertion point.  The right image also has the top and bottom view block, I_APPL_REFRIG_SIDE-SIDE_P, inserted at the same point, in red.

 

The "M" view block is composed of several pieces.  There are three instances of a block called 3DBLOCK.  This block consists of six 3D Faces, each a square one-unit on a side, arranged to create a one x one x one cube.  The insertion point of this block is at one corner of the cube, with the cube extending along the positive X-, Y- and Z-axes.  The block is defined as being unitless, but as the parent block has units of inches, ACA will remember that it came from a source where the units were in inches.  One instance of this block is inserted at (0,-18, 0) relative to the block insertion point and has X-, Y- and Z- scale factors applied to represent the refrigerator body [36 W x 24 D x 67 H].  Another instance is inserted at (24, -18, 3) relative to the block insertion point and has X-, Y- and Z- scale factors applied to represent the freezer door [12 W x 2 D x 64 H].  The third is inserted at (24,-5.5, 3) relative to the block insertion point and has X-, Y- and Z- scale factors applied to represent the refrigerator door [23.5 W x 2 D x 64 H].  There are also some 3D Faces and Polygon Meshes that are not nested within a block, to represent the handles for the doors.

 

When content with a different drawing unit is inserted into a drawing (such as an inch-based refrigerator MVB into a millimeter-based drawing file), ACA will apply scale factors to account for the difference in unit size.  In this case, everything is scaled by a factor of 25.4, to account for the fact that one inch is 25.4 times larger than one millimeter.  For the "2D" view blocks that display for the top, bottom, front, back, left and right view directions, there are no nested blocks, and these all get scaled as you would expect. The "M" view block, however, is a different story.  The door handles are scale appropriately, and appear at the correct distance from the MVB insertion point.  The 3DBLOCK instances all get scaled up by 25.4, so they are the correct size, but the insertion points remain unscaled, so the back bottom midpoint of the main refrigerator block is no longer at the MVB insertion point, and the freezer and refrigerator door blocks are not set correctly, either (in fact, they overlap and are completely within the refrigerator body.  You can see the relative misplacement in the image by comparing the red plan block, where things should be, and the locations of the items in the "M" view block.  Only the handles are in the right spot.

 

Several other interesting things to note.  The "2D" view blocks were rescaled correctly, but ACA continued to consider them as having come from a source with inch units, so if I inserted another instance of these view blocks, that instance would have a factor of 25.4 applied to the X-, Y- and Z-scales.  I redefined each of these in the metric content file so that these would not get that factor applied.  The 3DBLOCK block was redefined to have the cube side lengths set to 25.4, so the scale factors assigned to the blocks within the "M" view block remained at the "inch" values.  Since I wanted to make my metric content fully millimeter based, I redefined the 3DBLOCK block within my millimenter source file to again be unitless, with one unit sides, and then I scaled the instances within the "M" view block with the millimeter equivalent scale factors.  I also found that inserting my Metric content refrigerator into an Imperial file that already had the 3DBLOCK file present, and defined as a unitless one-unit block (but implied inches) did really wierd things to the metric content, so I renamed the metric version to 3DBLOCK_M.  It still has similar scaling issues (except everything is too far away from the insertion point, instead of too close), but at least the sizes are not too big.  Likewise, I renamed all of the view blocks, substituting an initial "M" for the initial "I", so there would no conflicts between view blocks should both the imperial and metric versions be inserted into the same file.

 

Once I renamed and redefined the 3DBLOCK_M block to be a one-unit cube, the instances in the "M" view block all shrank down, but were correct relative to one another, so all I had to do was scale all three of them by 25.4 relative to the view block insertion point to get them where they needed to be.  That made redefining that view block easier than I originally thought it would be.

 

The other attachment to this post, Side-Side Refrigerator Imperial and Metric.zip, contains four drawing files.  Imperial Side-by-Side Refrigerator.dwg is the file where I built the revised version of the Imperial refrigerator, with corrected view blocks.  The file shows a SW Isometric view of the individual view blocks, as well as an instance of the MVB.  Metric Side-by-Side Refrigerator.dwg is the equivalent file where I built the Metric refrigerator.  I then created two AEC Content files with the CREATECONTENT command, Side-Side.dwg for the Imperial refrigerator and Side-Side_M.dwg for the Metric one.  These have to be placed somewhere in or under the AEC DesignCenter Content Path, as defined on the AEC Content tab of the Options dialog.  I do not like to mix my custom content with the out-of-the-box content (makes it easier to back up and less likely to be lost when moving to new versions).  You can put your custom content somewhere else, and "include" it in the AEC DesignCenter Content Path by placing a Windows shortcut in the folder specified in the Options dialog (or in a folder below that folder, if you prefer).  Doing so will include the folder to which the shortcut points and all of its subfolders in the content path and you will be able to access AEC Content files stored in them from the AEC Content tab of DesignCenter and create tool palette tools that reference that AEC Content.


David Koch
AutoCAD Architecture and Revit User
Blog | LinkedIn
EESignature

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

Post to forums  

”Boost