#### Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

# Converting all dims in an English drawing to Metric

After most of the work had been done on a project, we learned that the permitting officials require that it must be dimensioned in metric units. This was a few months ago, and at the time they said that it didn't matter if the metric units were primary or the alternative dimensions. So, I edited all my dimensions to add the alternative dimensions in metric, and spent several hours going through and adjusting dimension scales and positions to make sure the longer dimension text didn't overlap things. It went surprisingly fast for my 33 page set of drawings, since most of them are in one drawing file. Though other vendors who did some of their own drawings had to do the rework themselves.

True to form for any bureaucrat, we are now informed that the metric dimension must be primary.

I am thinking that, for my drawings, that I will just edit the dimension style. The actual units for the drawing is inches. On the dimension primary units, i will give them a scale factor [ x .0254 ] to convert to meters, and then the alt units will x 39.37. (Note that the alt linear scale factor is times whatever value is in the primary unit space). I can see how the double-conversion process may introduce some rounding errors, but since this is a large building, I don't think the errors would be large enough to matter.

Of course, I will maintain my original set of drawings, and we will consider them to be our main working document. Any changes done will have to be done on both the working set, and on the metric set separately. The public works department in the country where the project will be done will only get PDFs, and they are the only ones who require that the metric unit be primary.

I considered just using the "Metric as Primary" drawing set as the only set. But, with the dimensions having such a weird set of conversion factors, I though it would cause a lot of confusion to have to work with that drawing. Working with it right away would work fine, but a year from now I would have forgotten all the special treatment that this drawing received.

Perhaps others have had to go through this, and can suggest another approach, if they think it would work better, or any pitfalls I should look out for.

-Joe

• Curios what a typical sheet looks like on this.

• Surprising, I was under the impression that for building-scale stuff, metric guys typically used centimeters as the default um, not meters.

But regardless, why not just scale the entire drawing, so that the distances are natively in the units you want to dimension? Then edit your dimstyles from fractional into decimal, adjust the decimal places, exo, asz, etc.?

• The drawings are industrial architecture drawings of a refrigerated warehouse.

The main reason that I don't scale the entire drawing by .0254, and change the "insertion units" to be meters, is that we just don't work in metric. Our chamber has a 6" insulated wall, set 3" from the outside wall, etc.

Any conversion is always a rounded number. For example that .0254 value, though it is legal for trade it is not the exact value. It is used most of the time, but the real value is different. So it is easy to get things like lines that are not parallel. This happens if one side is perhaps offset from another by 25mm and then the other side is offset by a slightly more accurate conversion from metric, then the line is no longer horizontal. And if I even check it by viewing the end points, it will likely still appear to be horizontal because the discrepancy is off beyond the 4 decimal places I typically have my display units set for.

This job has certainly motivated our company to avoid doing flat quotes for engineering. The above changes were not something that the original quote included, and should have been handled as a change order with an additional cost.

-Joe

• edited May 2020

Here we use Meters for Dimensions and "think" Buildings in Meters.

But when you try to work in Meters or any other INSUNITS than Millimeter
you will always get into trouble later. I often tried but you will always run
anywhere into a dark corner in Bricscad later where Unit conversion does
not work, only partially work or does not make sense.
(The other reason is that we have "Comma" on our NumBlocks here as a
separator, which Bricscad does not accept for Number Input)
So I gave up and tried Millimeters.

I have no clue about and no experience with 2D and Dimensions,
but I tried my first Bricscad Dimensions.

1. Is it true that you can not specify the displayed Dimension's Units in Dimension Styles ?

2. When I wan't Meters instead of INSUNITS, I have to add a scale Factor ?

3. There is no option to show Units behind the Dimension's Numbers, you have

And more important,
4. my Template's Dimension Style has a default Number Text Size of 2,5 mm which took some time
for me to realize that Dimension's Numbers are not missing.
So is it not a good idea to use Dimensions in Model Space ?
Or do I need to add an extra giant Dimension Style when doing so ?
Do you use Dimensions in Paper Space Annotations only ?
Is this the reason for those endless Scale Options for any Element in Paper Space/Viewports ?

• Michael Mayer, a lot of the concerns you have are there because of how AutoCAD chose to implement their program. BricsCAD must follow their approach, since they (and their customers) are committed to the DWG format.

Personally, I very rarely use dimensions in paper space. The reason is that there are ways for them to break and show the wrong value. So I prefer a dimension that can be trusted 100%. A dimension in paper space must be "associative" with the object it is dimensioning, to properly determine the dimension value. But, circle centers and diameters are never associative. So, if a circle is changed in model space, the paper space dimension is no longer valid.

It is not Bricsys' fault, because the behavior standards of dimensions are from AutoCAD. BricsCAD might be able to do some improvement to the interface, to help the user understand how the various unit settings interact. But, in the end, it is a confusing thing.

I put all my dimensions in model space, and have giant dimensions. I have multiple dimension styles, with different sizes. I prefix all my dimension style names with the number it is scaled by and then put the units, followed by an alternate unit if it is used. So, there is 2-Fraction, 10-Arch, 10-Arch-Meter. Also each dimension size is typically put on its own layer, so that I can choose a proper size in a viewport. This doesn't normally cause any redundant dimensions, since rarely would I show a dimension for something very small while also showing the dimension for a large object.

My approach can cause a large, complex drawing, to have many layers, so it does require some layer management techniques. For example, I created a macro that turns off all layers with the word "dim" in them, except for the current layer I am on. So, that way, I can quickly get all the stuff I don't want to see, out of sight.

You CAN choose the display units for a dimension style. Since you are metric, you only use decimal units. If you want to display meters, but your drawing's base units are mm, you must tell the dimension style to divide the length by 1000 (or rather, multiply by 0.000.) And then, you can, if you choose add a M suffix to indicate meters, if it is needed. I would make the dimension style name make these settings apparent, so you can choose the correct dimension style easily.

Yes, dimension settings are complex, and take a while to master. To give you a bit of history, when AutoCAD first was introduce, it didn't "know" what units were being used. If you drew something one unit long, it could have been 1 inch, 1 meter, 1 angstrom, or 1 light-year. The units were often indicated on the title block of a drawing, so dimensions didn't need to show what units were being used. It was just normal hand drafting technique carried into the CAD format. Each company had its own typical standard for base units. In the U.S. inches became the default base unit for the CAD files. There were special units settings in dimension styles to show them as decimal inches, or fractions, or feet-inch units.

-Joe

• edited May 2020

Joe,

Maybe you could xref your working file into a special file for metric dimensions, scaling the xref at 2.539999983.

I think you'd have to turn off the xref'd dimensions layer, and copy all the dimension entities from the working file and paste them into the metric file, scaling them by the same factor and changing their DimUnits property to Decimal.

• Thanks for putting out some ideas.

But, if I do the xref, then the dimensions in the new drawing may/may not be associated with the objects. Circles are never associative with dimensions, and associative dimensions are, in general, not reliable, and can easily loose their associativity or otherwise be messed up and show incorrect values. So, any edits are prone to not getting their dimensions updated on the metric drawing.

And of course, re-doing all those dimensions is not a happy thought.

-Joe

• edited May 2020

No, they won't be associative in the Metric file. But you won't work in that file, so it won't matter.

If you make any changes in the working file, you'll have to copy/paste the dimensions again. But it's just one copy/paste operation of all the dimensions at once, plus one scale operation for all of them and one change to the Properties panel while all the dimensions are selected.

• Thanks @Joe Dunfee

That helps.

I think Autocad, at least since the late 90ies, had 30 years of time to fix that
ignorance of real Units with its still negative influence around the whole App.
And as a customer of the Direct Modeling and BIM inside Bricscad I could still
bite in my knee why at all "that" Autocad was chosen as a base.
(I know the reasons but still could cry what Bricscad could be today if they had
tried to design a better Microstation, Vectorworks, Archicad, Allplan, ....
/rant over

Associative
I also think it would be better to dimension in Model Space.
Or if you think about replacing Elements linking to the associative Dimension,
in Model Space you may notice, Viewport associative Dimension may not realize (?)

OK_2,
so I will create giant Building sized Dimension Styles with Font Sizes in Meters

OK_3,
so I will add Scales + Suffixes in my Dimension Styles.

(So for a proper File Template, I think I will also have to care about
crazy Text Styles, auto Object Tags/Room descriptions, ....)

For @Joe Dunfees Problem,
In VW I would just activate my alternate Units for a Dimension Style and choose
Inches. Dimensions and Texts are Scale dependent there.
Basically much more tedious in Bricscad, but basically also what you already do.
Applying a new Dimension Style(s) with different Scale and Suffixes.

But that is unfair from my side, as when converting from Metrical to Imperial,
Feet/Inches are much more forgivable in equalizing the rounding of numbers,
as there fits a lot of deviation in those fractional Inches.

If you have a 4" Member, it would show 101,6 mm, while we would use a 100 mm Beam.
And I think it is quite hard to get these decimal deviations away by rounding only.
And I am not sure it is a good idea to fake with a little bit smaller Scale Factor, when
dimensioning over large distances (?)

• I avoid almost anything being associative. Every entity that has that has serious bugs, especially hatches.
As for dimension styles, we avoid relying on them being very organized.
Instead we use overrides on whatever style a thing happens to be.
I'm not getting the real problem though. The number in a dim comes from the dim geometry, and you can apply factors to that easily.
The big problem is usually how things jump when you scale them, so you end up with overlap and so on.
Its always that part that wastes my time.
If the numbers are somehow hard coded, I would use a lisp to reset them, or properties dialog.
I wish I could see a picture to show this better.

• @Michael Mayer said:
I think Autocad, at least since the late 90ies, had 30 years of time to fix that
ignorance of real Units

Often a standard is more important to keep, than to improve and change. Autodesk did decide to improve things, and rather than fix AutoCAD they started fresh with Inventor. But, note that the parametric 3D modelers, with their equivalent of a "paperspace dimension" will have issues with disassociated dimensions. So, it is not just a problem in the DWG format. Though, on the plus side, the disassociated dimensions at least show the fact by changing colors.

When I inquired about the issue of disassociated dimensions on this forum a year or two ago, I vaguely recall that someone wrote a utility to change the color of any disassociated dimensions. But, the forum does not permit me to search for multiple terms that are "AND", and I have been unable to find it.

Even with the problems with paper space dimensions, many people do use them. I think the decision tends to be based on how complex a drawing is. On a simpler drawing, if you make a change, it is easy to check the paper space dimensions to see if they are correct. But, if you have many pages, with many dimensions, then it is harder to check to see if the dimensions are correct.

One situation where I often use paper space dimensions, is if I want to use the drawing as a block in another drawing. When you insert a drawing into another, anything in paper space is left behind. But, dimensions in model space would be brought in, and add a lot of unnecessary things to the drawing.

-Joe

• edited May 2020

I only ever needed to use one dimension style. In AutoCAD, there was a setting in dimstyles that you specify the scale to be as per paperspace. The way to use this is to dimension in the layout tab, but through the viewports that you made to see the objects in model space. Just needed to remember to lock the viewports or sometimes you start zooming in and out and mess up the scale and layout in the viewport. I had that setting saved in my drawing template that I migrated to Bricscad. I don't see it listed in their dimstyle editor, but I suspect it's the Dim scale overall setting, under the Fit group. It shows it as set to 0. Maybe someone from Bricsys can confirm?

• I forgot the term myself, but I think it is a setting when the dimension (or other annotation) automatically changes the text size. But, the idea of something changing on its own, and perhaps overlapping other text, never appealed to me.

-Joe

• edited May 2020

Denis,
I too use one dimension style for everything, in Bricscad just as I used to do in Autocad. And I put all my dimensions in model space. All the properties defined in my dimension style are sized for a dimension entity in paper space. The dimension entities I use in any particular drawing just have that drawing's scale factor applied to them. It's called DimScaleOverall in the Properties panel, but I use a custom command that sets it for all the dimensions and leaders in a selection set.

``````;;; -- Show and change the ScaleFactor property of dimensions and leaders ---
(DEFUN c:SF (/ n ss1 ent1 obj1 oldSF newSF)
(SETQ ss1 (ssget '((-4 . "<OR")(0 . "DIMENSION")(0 . "LEADER")(-4 . "OR>"))))
(initget 6)
(setq ent1 (ssname ss1 0))
(setq obj1 (vlax-ename->vla-object ent1))
(setq oldSF (rtos (vlax-get-property obj1 "ScaleFactor") 2))
(SETQ newSF (GETREAL (STRCAT "\nEnter ScaleFactor <" oldSF ">: ")))
(IF ss1 (REPEAT (SETQ n (SSLENGTH ss1))
(VLA-PUT-SCALEFACTOR (VLAX-ENAME->VLA-OBJECT (SSNAME ss1 (SETQ n (1- n)))) newSF) ) )
; (if ss1 (sssetfirst nil ss1))
(princ)
) ;``````
• Anthony, I can see the advantage to your approach, if I later need to convert to some other units. That way I wold only have to edit one dimension style. I am in the process now of converting the drawng. The editing of the dimension styles took around 1 1/2 hours. What is going to take longer, is going to each page and making sure each dimension is displaying correctly.

In a few instances, I manually turned on the alternative dimension style, and so that override of the dimensions style causes it to display incorrectly once I edit the dimensions style's own conversions.

The other thing that messes up, is if I type a dim text override, that has some formatting code to put the alternative value below the primary value. For some reason, that will not update, even though I did not change the value itself, and used <>, which should give me whatever the dim style shows. But, after a bunch of experimenting, I ended up having to just the codes, and just put <> in alone. But, I had already decided to just show metric, and no English units, so I didn't need to stack the two values.

-Joe

• Converting between units should be a simple matter of updating the value of DIMLFAC for the dimension style used. This can be done using a script. Attach a sample drawing (created in inches) along with 2 scripts. One sets the dimensions to inches, DIMLFAC = 1. The other set the dimensions to mm, DIMLFAC = 25.4.

To switch you simply drag and drop the desired script.

Works for dimensions in model space or paper space.

Regards,
Jason Bourhill

• @Joe,

To find the articles on disassociated dimensions in this forum thy a Google search with the text:

"disassociated dimensions" site:forum.bricsys.com

• Jason, thank you for that script, though it would not work for me exactly as-is. This is because some of the dimensions are in Archectural units (feet-inch fraction) , some are decimal feet, and some are fractions alone. So, while most of the primary units need to be meters, some are in CM.

But, it seems to be a fairly comprehensive routine, especially for a script. I didn't know scripts could be that complex.

-Joe