importeren van DWG-bestanden, gemaakt of geëxporteerd via Illustrator
Ik heb de vloerindeling van een appartementsgebouw via een DWG-bestand dat eerst gemaakt is in Illustrator.
Gezien Illustrator een grafisch programma is en geen technisch, komt dat nestand met honderden (sic!) blocks.
Heeft hier iemand ervaring mee om dit bestand te manipuleren dat het eenvoudig(er) kan bewerkt worden in BricsCad?
Comments
-
Does "Blockify" help.
0 -
In my case (IFC import) Blockify simply did not find redundant Block duplicates. One unique Block definition for each same Sprinkler. I would have had to explode all Block References in the drawing first and then run Blockify. I have no proof if it would have worked that way, as by exploding the file would no more be realistically editable, it was lagging more than enough already. Even running Blockify had needed 2-3 days …..
In Bricscad there is also no option to select all related Block References and assign another (e.g. the first) Block (to all References)
So I opened the IFC in Blender's IFC AddOn Bonsai. There I could create my IfcTypes (like Block definitions for instanced copying) and was able to Select all related References (lag free) and apply one of my IfcTypes to each sort. This means purging the former geometry and replace with the Type, which needed a few minutes for a few thousands references.
In the thread starters case it may be worth to select most or all Block References in Drawing and EXPLODE or XPLODE them (but avoid exploding Hatches and such things).
I can never remember which one to use. I usually want the ones that keeps (!) children Geometry attributes of by Layer or by Object.And then optionally run Blockify - in case there is identical Geometry combinations that is worth or wanted to combine into Blocks, to be able to edit all at a time.
1 -
Are the blocks with a common name for the same block ? Sprink1 Sprink2, Door1 Door2 and so on.
Can you post a small test dwg and maybe something can be done. Have an idea start with lisp then maybe convert to .net for speed.
0 -
Yes, the Blocks have the same name and the copies a number suffix. As far as I can see they are totally identically.
The IFC Ex-/Import may have made bad geometry. What might have been Solids (or Meshes ?) came in as a mix of loose 3D Faces, Surfaces and Regions. So an overall crappy source file and unfortunately under NDA.
I think the Sprinklers werent initially Cells in Microstation, maybe anonymous Cells ?
At least only Bricscad imported the IFC with these as Blocks. Vectorworks did not create Symbols as well as Bonsai finds no IFC Types, just IFC objects.But I nearly forgot, searching for and combining identical Block duplicates went from BLOCKIFY into OVERKILL (duplicate Blocks).
Seems I have not yet tested that with the original import DWG.Hmmh, OVERKILL found a few duplicate Blocks, but only those having only a few (5-30) copies, not my Sprinkler Blocks with thousands.
Have to look at it again.
EDIT :
OK, I see I did try that before. It does not find the Sprinkler Blocks. No matter what large Numbers I try In BLOCKIFY Tolerance Settings.
Maybe, because OVERKILL has no access to or does not use BLOCKIFY Tolerance Settings ?0 -
If you have a block with name "sprinkx" then you can find all of them read their insert pt, rotation and scale. I would then insert "sprink1" at that point with correct insertion point and scale etc on a new layer If happy could as a quality check search for the two sprinks at a single point any singles should be identified. Then erase all "sprinkx's" except the master one.
Again just "Wblock" out like 6 sprinklers as a sample dwg no need for a complete dwg. That is not breaching copyright etc
This should get all blocks "sprinks" change name and give it a try. Copy to command Line.
(princ (sslength (ssget "X" (list (cons 0 "Insert")(cons 2 "sprinks*")(cons 410 (getvar 'ctab))))))
1 -
Again just "Wblock" out like 6 sprinklers as a sample dwg no need for a complete dwg. That is not breaching copyright etc
WBLOCK, aha, ok. Didn't know that. Learned something new.
I used COPYCLIP and Paste in Place into an empty file.
(which took around 5 minutes for each step)OK, I deleted everything but the Sprinkler Heads - but DWG was still nearly 500 MB 🤣
(If you look deeper into their geometry, you will understand why)So I deleted the large majority of those too and purged. 26 MB DWG File Attached.
In Blender/Bonsai I could select the Sprinkler "Deflectors" (all tagged as default IfcBuildingProxis) by their Names. Somehow I do not find their names in Properties. Maybe via the new Selection Options, by searching for their "BIM Name" - did not try, but wonder why that does not appear somewhere in Properties "BIM".
0 -
I am surprised the forum allowed 25Mb dwg, just use Wblock next time. If I can download that is what I am going to do for testing.
1 -
just a comment, watch this space slowly working on it.
Yes was working on it now another problem. The blocks whilst they have a common prefix, the size is always scale 1, but the blocks are not one size. Whilst it has used a core sprinkler it has rescaled the sprinkler then made it a block. So a 1 scale is like a 5 scale in another block but properties returns 1. There may be a way around that by setting the block size and comparing a bounding box of the original block so it is rescaled to match.
You have something turned on in the dwg so it zooms in 3d which I dont want just want to work in UCS W. Set that but it returns to the view in 3d. Not sure what you have done.
Even picking a master block I think will have to bedit it so say layer is "0" and color Bylayer, so I can insert a new one on a different layer.
It may need the original block at true correct size, ie the non suffix block. Say "S_KOPF_STEHEND" plus all the others. You may hav eto make these blocks, save in say a DWT and then paste or insert your dwg into that dwt.
Just inserted the dwg into my DWT and now all sprinklers blocks are same size. But still going around in Circles.
0 -
You have something turned on in the dwg so it zooms in 3d which I dont want just want to work in UCS W. Set that but it returns to the view in 3d. Not sure what you have done.
No idea.
Usually I work mostly in 3D only. Or maybe ISO.
If you have nothing selected and deactivate "perspective" in Property Panel - will it look like you need ? ?
0 -
The blocks whilst they have a common prefix, the size is always scale 1, but the blocks are not one size.
Thank you, good find.
I looked at the Instances and a little at the Blocks but so far have not been able to find any differences beides the suffix …..
So this explains why Blockify/Overkill ignores these.But I can't find the scaling issue inside Blocks. Where do you see that ?
For me also all Instances are 1:1 scale. And I do not see differences in Block's geometry. I do not see geometry that could have a Scale and e.g. that filled Circle in the Sprinklers Blocks (for annotation ?) seems to show the same Area in each Block.
And I ask myself why ?
It is only Bricscad that made Blocks from all. Everywhere else these are just BIM Objects, with all their own Geometry definition, copies, not any instancing. Can't imagine those were added to the source file using different scales.0 -
A random block is 0.19 dia in bedit but it is 2.09 in a plan view but it is a scale of 1 so how does that happen ?
I think it is the end for me. I don't have BIM as an option.
0 -
I am now totally confused now too.
If you found issues with the Blocks having some differences, it makes sense that BIMIFY/OVERKILL does ignore the Block duplicates. On the other hand it looks like Bricscad created these Blocks (duplicates) from pretty likely same geometry (?). And I am even not sure if I really understand how BIMIFY/OVERKILL is meant to work and if my example is valid inside that tool design.
It is no current or urgent file, it is already a few years old. It was just an example and testing file of what I may often have to deal with. This is just the HVAC Fire part, and already hard to work with. But I would have four of such HVAC models and Electricity related Model was even worse. Of course in a correct 3D model the data and information would fit into a much smaller file size. But it is kind of the reality how people collaborate …..
0 -
Attached is the modified drawing with all similar blocks replaced to one block definition for each block model, so there are only two block definitions now (and some other geometry).
It should be possible to simplify the geometry inside the block by removing the side faces and extrude a top or bottom face of that part. Unfortunately it some point BricsCAD crashes when doing an extrude of a face so I just left it as it is now.
There is the BLOCKREPLACE command, either from ExpressTools or in the edit section but that invokes a dialog box where you can replace one block at a time with your block of choice.
However if you use -BLOCKREPLACE it works through the command window and by selection options you can select multiple blocks to be replaced except for one instance, then hit enter and then when asked for the block to be used to replace the selected blocks use select object again then then select the one block you didn't select in the previous step.
This works in this case because all similar blocks are on the same layer, i.e. NewLayer 1 and NewLayer4 for each block type (..STEHEND… or …HAENGEND…) in this drawing.
0 -
First you should check how the imported drawing is structured, if similar items/blocks are on the same layer then you can replace multiple similar blocks with the same block definition, see my reply to Zoomer above.
If you have access to the original Illustrator file you could open that one in Illustrator or another program that can open Illustrator files (e.g. VectorStyler or Affinity) to structure the file content and then export to DWG/DXF to make it easier to edit in BricsCAD.
Alternatively you may want to look at the BricsCAD Application store to see if there is a utility for replacing blocks using expressions like BLOCKNAME* where it selects all blocks starting with BLOCKNAME to select BLOCKNAME1, BLOCKNAME2 etc. to be replaced in a way similar as mentioned in the reply above.
0 -
Thanks RSW.
I will look into your file tomorrow.
It should be possible to simplify the geometry inside the block by removing the side faces and extrude a top or bottom face of that part. Unfortunately it some point BricsCAD crashes when doing an extrude of a face so I just left it as it is now.
I did that, but that it makes sense it requires to have a all duplicate Blocks been replaced by a single master Block.
There is the BLOCKREPLACE command, either from ExpressTools or in the edit section but that invokes a dialog box where you can replace one block at a time with your block of choice.
Exactly. Found this. One Block at a time ….
However if you use -BLOCKREPLACE it works through the command window and by selection options you can select multiple blocks to be replaced except for one instance, then hit enter and then when asked for the block to be used to replace the selected blocks use select object again then then select the one block you didn't select in the previous step.
Interesting. I will look into it.
Alternatively you may want to look at the BricsCAD Application store to see if there is a utility for replacing blocks using expressions like BLOCKNAME* where it selects all blocks starting with BLOCKNAME to select BLOCKNAME1, BLOCKNAME2 etc. to be replaced in a way similar as mentioned in the reply above.
Usually the Bricscad Store was Windows only. I wonder why it is not part of Bricscad App (or not even Autocad ?).
I think your "other CAD" is a bit more comfortable with Blocks/Symbols, e.g. delete a Block and get asked to keep instance's geometry or replace with another Symbol. Although I am not sure if you can delete all at atime and replace with a single Symbol there ….
But that does not create Symbols for Sprinklers anyway.0

