BMINSERT creating blocks, not XREFs
Hi, I sometimes get blocks when I use BMINSERT. Other times I get XREFS (what I want and expect). Here are two example files. I try BMINSERTing "lower enclosure minimal.dwg" into "new drawing.dwg" and get a block reference. Why? How do I get an XREF instead?
I'm running version 19.2.03 x64 Platinum on Windows 10 64 bit.
Comments
-
Invoke BMUNMECH in "lower enclosure minimal.dwg" and save it under another name, then BMINSERT that file into "new drawing.dwg" - you will get an xref.
BricsCAD does not leave the decision whether to insert a file as a component (anonymous block) or as an xref to the user, but decides on its own: If the inserted file has a mechanical structure, it gets inserted as a component, if not as an xref.
The logic behind this looks questionable: insertion as a dynamic component (anonymous block) makes only sense to me if the file is parametric (has exposed parameters), but even in this case, there might be use cases that could make insertion as a static component (xref) desirable.
I hope BricsCAD will put the user in the driver's seat again sometime...0 -
Hi Eric,
If you open the components that you are inserting with BMINSERT, then you can set how the component will be inserted from the Mechanical Browser. If you don't see this property, then you need to run BMMECH to convert the dwg to a component.
FWIW I got an externally linked component (Xref) when I did a BMINSERT of your lower enclosure file. I would check that you aren't using INSERT or BIMINSERT which will give different results.
Regards,
Jason Bourhill
CAD Concepts0 -
@Jason Bourhill
When you _BmInsert the file you do get an externally linked component, but not an xref.0 -
Thanks Knut, I do find that UNMECH gets BMINSERT to create XREFS.
What I want is:
-have nested references
-when I change a referenced drawing, the change shows up in reference instances in other drawings
BMUNMECH seems to do that.I am guessing that BMUNMECH will mean that I can't use constraints, i.e. parameters. I had hoped to use that later, but tough luck I guess.
Thanks Jason, I was using BMINSERT. This result might depend on Bricscad verson. I don't see that the "Insert as" property in the Mechanical Browser makes any difference with regard to XREFS. Neither of the two choices of "External component" and "Local component" seem to get an XREF. In fact, both BMUNMECH and BMMECH make the "Insert as" property in Mechanical Browser go away.
Jason, Thanks for reproducing my experiment.
The screen shot shows original, UNMECH, and MECH views of the Mechanical Broswer. Which begs the question, what is 'original' and could I get back to that if I wanted?
0 -
I meant "Roy, Thanks for reproducing my experiment"
0 -
@Roy Klein Gebbinck said:
@Jason Bourhill
When you _BmInsert the file you do get an externally linked component, but not an xref.Yes, didn't inspect closely enough. More specifically, It's coming in as an anonymous block. Previously I've only seen this behaviour when working with parametric blocks. These switch to anonymous when you change a parameter of the inserted instance, similar to how dynamic blocks behave.
For some reason BricsCAD is treating the component like it has parameters that have changed on BMINSERT. It seems to be something to do with the properties of the file. I did a test (see attached) where I copied the solid to a new drawing file, then BMINSERT'd that. In this case it came through as an XREF.
@Eric Ratliff
I suggest you raise a support request with Bricsys and include the example files you posted here.
Regards,
Jason Bourhill
CAD Concepts0 -
Jason,
I posted a support request. It includes the following paragraph, as well as my original question here.
If I run BMUNMECH in "lower enclosure minimal.dwg" and save it, it will insert as an XREF. Problem seems solved. But, what if I want a 'mechanical structure'? Is this intended behavior?
0 -
I put this in the suport request too:
"Also, this change from XREF to block happens to references that used to be real "XREF"s. They become blocks at some time I am unaware of."0 -
Were the inserted components perhaps created in V18?
They have changed the parameter update algorithm in V19. I was/am experiencing several issues with V18 parametric components, e.g. when creating an array the component would get lost and upon dissolve/explode it would not return the array to individual parametric component instances but as "dumb" solids. This happened in V18 and in V19 as well when using a component created in V18. With the same component created in V19 it works properly (i.e. dissolving/exploding the array gives individual parametric component instances).
It might be worthwhile to recreate the component in V19 if it was originally created in V18 to test if the issue still happens with the V19 created component.
0