Paper Space Block Insert Scaling Woes

Paper Space Block Insert Scaling Woes

bstolz
Participant Participant
3,355 Views
8 Replies
Message 1 of 9

Paper Space Block Insert Scaling Woes

bstolz
Participant
Participant

I'm an AutoCAD newbie, relatively speaking. I've been learning many things as I go and searching these forums has been a great help. I've recently come across an issue that I can find no reasonable resolution to and I suspect there isn't one that will satisfy me but I'm hoping to throw it out there and see if anyone can help.

 

I maintain a library of blocks that I have personally massaged into working the way I want. I have always used the UNITS command to set the units of the block before I save it (I only just realized that DWGUNITS might be more appropriate). This has more or less seemed to work overall. Blocks that I don't want scaled I set to Unitless because that makes sense to me on how it should be handled. I would have expected that inserting a Unitless block into a drawing with specified units would leave the block scale at 1:1 since there can be no conversion.

 

Moving to the actual drawings I manage, everything seems to have always worked using my methods when I'm inserting things into my model space. Blocks get scaled correctly and everything is happy. But most of my personal drawings have consistently scaled the model space in inches. I've recently been asked to start managing other drawings as well that I did not originally create and many of those are scaled in feet. This, so far, hasn't seemed to cause too many issues. Blocks that I insert appear to scale correctly in the model space.

 

But the problems appear in the paper space of these other drawings. Paper Space units are set in the Page Setup Manager for printing. I'm not super happy about this, but I can live with it as long as it is consistent. The Paper Space units for these drawings are in inches. Whenever I insert a unitless block into my Paper Space on these drawings, its scaling is all wrong.

 

Now logically it always appeared to me that the block has a units listed, the model space has a units listed and the paper space has a units listed. If you want to insert a block into one of these two spaces, AutoCAD should look at the block units and the destination space units and automatically scale the block to match the destination units. But this doesn't appear to be what actually happens.

 

Instead there is a INSUNITS setting (coincidentally the setting that shows up in the UNITS prompt). INSUNITS doesn't care what the model or paper space units are, it instead overrides that and converts the block to the units listed there. Therefore even though my paper space is in units of inches, its still inserting the block in units of feet and making it much smaller than its supposed to be.

 

That said, as mentioned earlier, I also just came across the DWGUNITS setting. This finally pulled my confusion together into a coherent problem. I checked my "unitless" blocks only to find out the DWGUNITS are actually set to inches and I can't actually set the DWGUNITS to Unitless.

 

So here is my specific issue. I want to be able to insert my blocks and have them correctly sized for the paper space or model space units without having to change the INSUNITS setting (or any other setting) every time I insert a block. Additionally, I'd like to have a method against which I can create "Unitless" blocks that don't get scaled no matter which scale the block is inserted into. Does anyone have a solution that I can implement once and have it stick?

 

As a side note, the approach AutoCAD seems to have taken to resolve this seems pretty hamfisted IMO. Just give every space its own Units setting and just scale the block's model space units to match the destination space units and allow for Unitless to be an option on either end. I can't imagine a need for INSUNITS to exist since I can't imagine a reason that I would want to insert a block at a scale different from the destination space.

 

tl;dr: I want to be able to insert blocks into paper spaces and model spaces that have different units without having to change settings each time I insert a block. Is this possible?

0 Likes
3,356 Views
8 Replies
Replies (8)
Message 2 of 9

pendean
Community Legend
Community Legend
Is the block sized for paperspace use, or is it for modelspace only? You can't have it both ways sadly, blocks don't work like that and there is no variable to address the dramatic scale change.

In other words: a house at 1:1 scale (modelspace) does not fit on a letter sized sheet of paper. (paperspace). Get it?

0 Likes
Message 3 of 9

bstolz
Participant
Participant

In this case my blocks are specifically designed for Paper Space. But they were designed with DWGUNITS in Inches (I'd prefer to have them Unitless). Of my drawing sets, though, some have Model Spaces in Inches and others have Model Spaces in Feet. Therefore the drawings have had their INSUNITS set to match those settings. Regardless of the Model Space units, though, the Paper Space units are ALWAYS in inches. This is due to the way AutoCAD handles print settings by defining how many drawing units equal a paper unit (and which paper units to use).

 

But if I insert a block that is designed for Paper Space using units in Inches but the INSUNITS have been set to Feet to match the Model Space, then the block gets scaled to match the INSUNITS. This is despite the fact that there is a DWGUNITS setting and a Plot Style Paper Space Units setting. Inserting blocks ignores those settings and just uses the INSUNITS.

 

All of my blocks that were designed for Paper Space in Inches get inserted at 1/12 scale because INSUNITS is in Feet. INSUNITS SHOULD be in Feet because the Model Space is in Feet.

 

Does this make sense?

0 Likes
Message 4 of 9

scot-65
Advisor
Advisor
Pendean is spot-on.

Personally, everything I create is unitless. For me the
headaches are reduced to just the blocks/files from others
that do have other than unitless. Not everyone will agree.

While in model space, run the command PLOT and try to
replicate the exact look of what will be printed had you
used paper space. Specifically, look in the area "Plot scale".
The information inside this box will tell you what the scale
factor is if the model space block will be when inserted in
paper space (provided the paper space plot shows 1:1
which, for the most part should -and- the block has a
model space scale factor of 1.0).

This concept also applies to the text height, DIMSCALE and
DIMLFAC. Try inserting a new text object in paper space
using your default settings found in model space and see
what happens - command MTEXT.

And welcome to these forums.

???

Scot-65
A gift of extraordinary Common Sense does not require an Acronym Suffix to be added to my given name.

0 Likes
Message 5 of 9

bstolz
Participant
Participant

Thank you for your response.

 

It sounds to me like I was right with my first expectation that there is no solution. The way was designed with three different scales that don't actually care about one another is utterly befuttling. One would expect that maintaining proper units of measure on objects would make inserting those objects into other spaces much simpler. But in fact the path that was chosen by the AutoCAD developers makes it actually more difficult (as shown by your statement that you keep everything unitless).

 

Part of my issue stems from the fact that our drawing sets come from two different needs. One need is for large scale site layouts on the order of square miles in area. The other need is for intricate details related to electrical control systems. The site layouts do not need scaling in inches as that creates exceptionally large numbers in the coordinates. The electrical details need tolerances of less than an inch which becomes difficult when working in feet. Meanwhile, we have one paper space object for our company drawing frame which is used by both drawing types. Therefore the paper space is identically scaled (1 drawing unit = 1 paper space inch).

 

I personally work on the electrical side. This means my drawing and model spaces share scales. I can insert an object into model or paper space and it is always the right size because no scaling is required. I try to keep the blocks that are designed for paper space as unitless, but AutoCAD does not allow DWGUNITS to actually be unitless, therefore they default to inches. This still doesn't at first seem to be a problem because the paper space scale is in inches, but since AutoCAD ignores paper space AND model space units when inserting a block and instead uses INSUNITS, it doesn't matter if the units match. Instead I either have to keep switching INSUNITS when inserting into model space or paper space or I have to fix the scale of every block I insert into my drawings after I insert it.

 

The thing is that the auto-scaling of blocks when inserted is a useful feature. When building my electrical drawings, I frequently download a CAD file from a manufacturer that is in metric units. This makes inserting it into my drawings very simple since it automatically scales to imperial. My problem is when I don't want it to scale a block and I try to tell the block not to scale itself when it is inserted, but there is apparently no actual option to do that even though the idea of "unitless" exists which is exactly what I would expect to perform this action.

 

Sorry to keep reiterating the same information, I just cannot believe someone would design AutoCAD this way. It makes no sense to me. INSUNITS should not exist as it is completely unnecessary. Automatic scaling should just use whatever scaling the space that you are inserting into already uses. I cannot come up with a single use for the current method and it appears to cause more grief than helpfulness.

 

Thanks again for attempting to help. I'll be on my grumbley way now.

Message 6 of 9

EspenR-J
Explorer
Explorer

Having the same problem, only we work in metric "meter" and "millimeter". Larger map based drawings for pipe networks etc. we draw in meter units. Smaler details etc. we draw in millimeter drawings. We use same title block for both drawing templates only then inserted block needs to be scaled in one of them.

Insunits, insunitsdeftarget and insunitsdefsource all set to "0" seems to work but is not an ideal solution for other blocks inserted in modelspace.
It's possible to compensate in LISP code, but it just seems so unnessesary to do so, when we have all these unit variables that should take care of this automatically??
Hopes Autodesk fix this some time in the future:)

Regards, Espen
0 Likes
Message 7 of 9

cadffm
Consultant
Consultant

Define the block to your needs.

Insunitsdeftarget and source are helpers for files withe the wrong unit setting,

so for usual they should set to 0

 

You need your titleblock always in mm(your papersize is defined in mm(or?).

Draw the title block in mm, but set the units to unitless.

 

Until this point you get no trouble.

The only thing is: if you want insert other blocks with unit setting (not unitless),

they will scale.

 

The Problem is: you can not have all possibilities of the program perfectly side by side, this is not possible(and for some things a problem).

And because of this, there is no solution - just workarounds.

 

 

Blocks with a "real size", set unit to what it is.

Sebastian

0 Likes
Message 8 of 9

bstolz
Participant
Participant

In my original post for this, I was almost certainly using AutoCAD 2017 or 2018. InsUnitsDefSource and Target didn't exist at that time. They do now (2019+) which has added insult to injury. It appears they have taken some steps to resolve some of the complaints, but have, in turn, created others.

 

-DWGUNITS - This command sets the units of the model space. It also does a bunch of other things that it hasn't always done. One of those things that it does is that it asks if you want to scale objects when they are brought into a drawing. This option seems to create problems for me though I haven't been able to create a consistent setup that validates exactly what it is doing. Either way, I turn it off and then the scaling of blocks works better.

 

-INSUNITS - This command tells both the model space and the paper space what units to use as the "destination" units when inserting a block. The DWGUNITS don't matter at all, only this. Furthermore, it also tells the block what "source" units to use when it is inserted. If the block is created with DWGUNITS set to feet and INSUNITS set to inches, the block will insert as if its units were inches. This is utter insanity in my opinion, but it is what it is.

 

-INSUNITSDEFSOURCE & INSUNITSDEFTARGET - These override the "destination" and "source" units when a block's INSUNITS are set to unitless and the model space INSUNITS are also set to unitless. I'm not sure what the point of this is but it causes utter chaos whenever anything else is set to unitless and these are not. Set them to unitless now and leave them that way forever. They are badly designed and implemented.

 

I've been training new engineers to set all three INSUNIT variables to 0 by default. Then set the model space DWGUNITS to whatever you want. Then if you need something scaled, set just INSUNITS to match the DWGUNITS, insert the block, then set it back to unitless. 99 times out of 100 this works exactly how you want it to work. Then you also don't need to remember to fix scales when working in your paper space.

 

Why can't the developers at Autodesk get rid of all this confusion. Here is a simple set of steps to make everything work correctly.

  1. Get rid of all the INSUNIT variables, they don't work.
  2. Allow DWGUNITS to be unitless.
  3. When creating a block, the DWGUNITS of that block will be the units that the block uses for source units when being inserted.
  4. When inserting a block into model space, the DWGUNITS of the model space will be what the block will be scaled to when being inserted.
  5. When inserting a block into paper space, the units of the paper space are what the block will be scaled to when being inserted.
  6. Allow the user to choose not to auto-scale a block when it is being inserted.

Done. All this confusion is fixed, no crazy sets of variables that cause a major confusion when inserting objects. One variable, one "to scale or not to scale" query, and that's it. If a block isn't being scaled correctly when being inserted into a drawing, that means that either the block's DWGUNITS are wrong, or the DWGUNITS of the model space being inserted into are wrong. They should fix that on their own and not depend on some hacky bandaid to do the work which, in turn, causes people who do it correctly to have to work 2 or 3 times harder to achieve what should be simple.

Message 9 of 9

EspenR-J
Explorer
Explorer

Tanks for your replay.

Yes, titleblock are always in millimeter according to ISO paper size.

And we always draw objects in real size, no matter what space they are to be used in.

I agree with you, but I think @bstolz makes a good point in the next post.

Regards, Espen
0 Likes