dxf to dwg that looks reasonable

My old CAD application exports dxf. When I open the file in BricsCAD it's a bunch of triangles.

I can make out the basic shape, but it's really not usable. I checked the command reference and couldn't see any commands that might convert the file to something that looks reasonable.

Am I stuck with triangles or is there a way to get regular solids and eliminate all the extraneous triangles?

«1

Comments

  • Try DMSTITCH. You may need to first convert your triangles to REGIONs, depending on what type of entity that they are. At a guess, I would assume 3DFACES.

    Regards,
    Jason Bourhill
    CAD Concepts


    Come to the Australasia BricsCAD Conference


  • @Jason Bourhill

    Thank you for the information.

    I exported one uncomplicated layer from the old CAD app and opened it in BricsCAD. BricsCAD recognized the triangles as 3D Faces as you figured. DMSTITCH wouldn't do anything, so I tried your suggestion turning everything into regions and then DMSTITCH. It did turn everything into solids but left the triangle lines embedded in the solids. I don't quite get that.

    As expected, it made one solid out of all interconnected triangles because I just windowed all entities for both commands.

    Just to see what would happen, I exported all 43 layers from the old CAD app and repeated the process. REGION reported 112684 entities and finished relatively quickly. DMSTITCH shot my CPU temps to 197 degrees F and finished in about 20 minutes. The output is still unusable but it did tell me I should invest in better cooling and a more powerful CPU. :)

  • @RoatanBill said:
    My old CAD application exports dxf. When I open the file in BricsCAD it's a bunch of triangles.

    I can make out the basic shape, but it's really not usable. I checked the command reference and couldn't see any commands that might convert the file to something that looks reasonable.

    Am I stuck with triangles or is there a way to get regular solids and eliminate all the extraneous triangles?

    That's dependent on the export capabilities of oldCAD. As I understand it, BricsCAD uses the ACIS kernel as the 3D object engine. If oldCAD can export an ACIS file (typical extension SAT) then you can insert that into BricsCAD using the _acisin command and preserve the characteristics of the model.

    BricsCAD Communicator, a separate app, supports importing (and exporting) 3D objects from/to a variety of industry formats. Again, much also depends on the capabilities of oldCAD.

  • And generally Solids are only as intelligent as the data you used to create them.
    If you have a tessellated Mesh freeform object that you managed to convert
    into a Solid, it will still be based on the source.
    It can't recognize that it should be smooth and round.
    Or if there were any redundant extra edges in the source, these will be also
    be still part of the Solid.

    In these cases a Clean or Simplify Solids command will help, if really applicable,
    geometry wise.

  • @Richard Webb

    Old CAD = CYCAS3 out of Germany. I bought a license >10 years ago just before they stopped supporting the product. It's been a good little package and I've gotten my money's worth out of it, but it is definitely time to move on.

    I've tried every export file type they offer and only dxf came close to something recognizable by an import facility elsewhere.

    I don't believe they used a 'kernel'. They used a 'rock' as it was developed in the stone age. :)

  • @Michael Mayer

    I would never do a 'tessellated Mesh freeform' because ... because .., because I don't speak Greek. :)
    Way way way over my head. I had to look up 'tessellated' as that word has never invaded my consciousness before.

    Now I'm going to have to figure out how to use that word in ordinary conversation.

  • Michael Mayer
    edited January 2019

    Just a term and tool from the 3D mesh Modeling Area.

    Opposed to Solids, Meshes have no real curves, Circles don't
    have a center or radius information, they are just Polygons with n+edges.
    Just enough n that it looks round enough, not too much n that it doesn't
    take too long to render or edit.
    3D Mesh Apps are optimized to handle these dumb but high vertex count
    objects (while they will fail if you throw CAD-like many separate objects
    with simple geometry on them)
    A Solid Conversion can't estimate if you wanted a polygonal shape wit
    many edges or if it should be smooth and curvy,
    which would need to redraw something real curvy or NURBS anyway.

    For your DXFs,
    maybe it is worth to open these in a few File Viewers/Converters or any
    other 3D Apps - to try to export them again to Bricscad (?)
    (Rhino Demo or such ?)

  • Thank you @Michael Mayer.

    I've been concentrating on 3D Modeling. I didn't really know what a mesh was. I though wire frame WAS a mesh. Now I see that a mesh is just a bunch of points isolated from the original idea that developed those points.

    I'm probably going to use 10% of what BricsCAD offers because I'm too ignorant to use the rest. The reason for investigating BricsCAD is because I'm going to use it to develop a presentation for a business project I'm working on. BricsCAD has the ability to produce colors, texture, rotations, etc that can 'wow' an audience. It can also allow me to design the day to day metal projects. My current level of CAD ignorance will diminish somewhat as time progresses.

  • You can try DMSIMPLIFY following a conversion to 3D Solid.

    If your existing app is able to output 2D data in dxf form, then it may prove to be simpler, faster, and more accurate to use this info to re-create the 3D solid in BricsCAD. You'll also see a smaller file size & better performance using this approach.

    Regards,
    Jason Bourhill
    CAD Concepts


    Come to the Australasia BricsCAD Conference


  • @Jason Bourhill

    Thank you for the additional command to try.

    I've attached a jpg of the drawing I want to bring over to BricsCAD, one of many. It's minus the exterior walls, interior walls and roof for a bakery / restaurant / bar.

    As you can see, 2D wouldn't buy me much. There's a lot of detail in the Z axis.

    I'm going to redraw it using the old CAD app to provide equipment dimensions and distances between objects. The bulk of the time I spent on that drawing was thinking up the configuration. Now that I have everything positioned where I want it, the work to reproduce the drawing is just spending the time to accomplish it, not much thinking involved. I'm hoping I can use libraries of tables, chairs, etc so I won't have to draw those types of things by myself again. The old CAD app has no libraries.

  • Your old program my have settings to change how a DXF gets exported. Also, if you can show us the list of export options from your old proglram. Then, someone may be able to recommend a different option.

    -Joe

  • @Joe Dunfee

    CYCAS purports to export the following file types: DXF, EPS, SVG, LWO, POV, 3DS, GTS . Trouble is, several of those do absolutely nothing. I believe the developer put some of those in as a stub or placeholder and never got around to putting any code behind them. Support for the product was dropped a short while after I purchased a license.

    For DXF, my only options are "Visible Objects", "Selected Objects", "All objects" and the mode of "2D", "2D Entities Only", "3D", "3D Entities Only". That's it for the dialog. My drawings have no 2D entities so I tried both 3D versions and they produce the same output.

    I'd love it if I could get my old drawings into BricsCAD but, as the saying goes, I think I'm beating a dead horse.

  • @RoatanBill said:
    @Jason Bourhill

    Thank you for the additional command to try.

    I've attached a jpg of the drawing I want to bring over to BricsCAD, one of many. It's minus the exterior walls, interior walls and roof for a bakery / restaurant / bar.

    As you can see, 2D wouldn't buy me much. There's a lot of detail in the Z axis.

    I'm going to redraw it using the old CAD app to provide equipment dimensions and distances between objects. The bulk of the time I spent on that drawing was thinking up the configuration. Now that I have everything positioned where I want it, the work to reproduce the drawing is just spending the time to accomplish it, not much thinking involved. I'm hoping I can use libraries of tables, chairs, etc so I won't have to draw those types of things by myself again. The old CAD app has no libraries.

    You just need a workflow. Divide and conquer is the key.

    1. Export out of your application as DXF.
    2. Open In BricsCAD, convert 3D faces to REGIONs, Convert to 3D Solids using DMSTITCH.
    3. Run BLOCKIFY to convert all repeated items to blocks. Currently it has to be this way, because BLOCKIFY doesn't work with 3D Faces or Regions yet.
    4. Edit each block requiring clean-up using BEDIT. Mainly this will be objects with curved surfaces (tessellated). In these cases it may be better to simply re-model the curved portions, rather than fixing.

    This doesn't have to be done all at once. Once you have them as blocks, you could update as required.

    Regards,
    Jason Bourhill
    CAD Concepts


    Come to the Australasia BricsCAD Conference


  • @RoatanBill said:
    @Jason Bourhill

    I've attached a jpg of the drawing

    Wow,
    what a cool, clean and simple user interface.
    And it runs on Linux !
    :)

    Beside DXF,
    I could read all of your File Formats :
    EPS, SVG,
    (2D Vector Formats)
    LWO, POV, 3DS,
    (3D Mesh Formats, Lightwave, POVRay, "3DStudio")

    But I see no way simply export any Solids from what was Meshes.
    Cinema4D had an option to save DXF as Solids,
    but that will create a Solid from each single 3D Face only.
    Which helps absolutely nothing.

    So it means stitching manually.
    In Vectorworks it works a little easier :

    • Select Faces
    • CMD+ALT+R (Convert to Mesh)
    • Convert to Solid

    But you can only Stitch Elements that don't touch other Elements at its
    Vertices (corners) or worse its Faces. As it would weld them together and
    produce corrupt geometry. You would get a "Surface" instead of a Solid.
    At least it is ok to stitch multiple element at a time - as long as they
    don't touch.
    But even Selection of wanted Faces is very tedious and sometimes impossible
    in a Bricscad (As you can select only both touching Faces, but aren't able
    to explicitly+1-sided "Deselect".

  • @Michael Mayer

    That 'cool, clean and simple user interface' also means that BricsCAD looks like the controls of the space shuttle to me. Coupled with the fact that all the documentation assumes AutoCAD level knowledge leaves a non CAD pro like me hunting for information. I read the description for some of the commands and it might as well be written in Greek as I don't have the background to understand the industry specific jargon.

    As far as migrating my old drawings is concerned, I considered bringing in one layers worth of dxf triangles, converting them as @Jason Bourhill outlined to minimize the clutter and then start a new layer and trace new geometry using the old layer. That would give me 3D spacial positioning as well as the dimensions of all the objects without running CYCAS on another box for reference; everything is inside BricsCAD already.

    I'll try Jason's new suggestions also.

    This morning's email brought a request from BricsCAD tech support for me to get some back traces of errors I've reported. My trial expires in a few days so I'll concentrate on helping resolve Linux glitches. It's rainy season where I am, so I can't cut metal, weld or paint so I might as well sit at a desk and put my computer geek hat back on.

    BTW - I Installed the Quadro video board that arrived yesterday and the errors I thought might be caused by video driver issues definitely aren't. The same crashes occur on 2 different motherboards with 3 different video chip sets and software drivers. The problem is inside BricsCAD code.

  • I have often expressed criticism of user manuals for software. I am sure that writing a good user manual for software that is AutoCAD compatible, the task is both much harder and much more needed.

    The software is very complex, and also has a long history with legacy things that can be difficult to explain. For example, the word "solid" has meant multiple things over the years. 1st it meant a 3 or 4 sided area that was filled in with a solid color (but not a 3d face). Then, it referred to a "3DSolid", which meant a 3 dimensional object, that had volume and a definite inside and outside. Then, just to confuse things more, Autodesk added a new hatch pattern called "solid".

    Even if the software vendors wrote better manuals, the user would still end up having to learn a lot. This must be spread over time. And while a user would prefer to just learn the stuff that their particular tasks need, the reality is that there are a lot of dependencies that can make this sort of segmented learning frustrating.

    So, in the end, the user's hope of an easy on-ramp is simply not possible. But, that does not excuse the software vendors from creating a clear path for the users to follow, to get started and then gradually learn the software well.

    -Joe

  • That 'cool, clean and simple user interface' also means that BricsCAD looks like the controls of the space shuttle to me.

    You can start in BIM workspace, which for v19 got the new reduced Shape UI
    Looks good but I still can't work without thing like .

    • Properties and Layer Palette at the same time
    • Selection Modes Edge/Face/Boundary/Solid
    • Snapping option
    • Zoom Extends
    • Visibiliies
    • Settings
    • Drawing Explorer
    • ....
      In form of expanded Buttons/Icons in Palettes.

    And of course my Mesh To Solids Combo :
    Explode, Region, Stitch, Simplify

  • Joe,
    I am really happy with Bricscads new help System.
    Yes, complex Tools but I find all Information and the Layout is better
    to read than many other Software's Text Walls.

    Of course I also do easier with short Videos from Heidi Hewett,
    Ralph Grabowski, and general short "Start with ...." Videos".
    And especially helpful for me are the new
    "This is the person who created XXX Tool" Series !!!

  • @Joe Dunfee

    I'm a retired professional software developer and software development manager. During many decades of working on mainframe and PC software, I wrote my fair share of documentation. I'm also a software book author (1100 pages). When I view what's available as tutorials, videos, written docs for BricsCAD, I come away with the impression that everything views the product from an altitude of 35,000 feet. There's no detail, just a lot of broad brush strokes that someone that already knows what's going on doesn't need but is insufficient for the uninitiated. It's preaching to the choir. How about us heathens?

    What's needed is a 'How To' manual that starts at the beginning, not 10 feet from the finish line. The book by Ralph Grabowski has the right idea, but it's marred by making assumptions that aren't true immediately after BricsCAD is installed. It also references GUI facilities that aren't available as the product is delivered. That publication came to an end just when things got interesting.

    After 3 weeks of fairly intense investigation of BricsCAD and coming from a non CAD background, I've concluded that the command line is where the action is. The GUI is little more than a way to use the mouse to enter prerecorded keystrokes. If I were writing a BricsCAD book, I'd almost completely ignore the buttons, flyouts, and droplists.

    I'll have to disagree with you that a decent users guide isn't possible. I believe it is, but a CAD pro can't possibly write it because he/she assumes too much knowledge not known to the CAD neophyte.

  • I've concluded that the command line is where the action is. The GUI is little more than a way to use the mouse to enter prerecorded keystrokes.

    I am pretty sure, the large majority of humans wouldn't use Computers at all,
    if they would still work text based only in a Terminal.
    You were a software developer.
    You may have an affinity to abstraction and even prefer Command Line input.
    Like many Scientists, Engineers and other mathematical and tech savvy people
    that may be really happy with Autocad.

    I'm highly visually oriented and for me it is much easier to intuitively click on
    a familiar Icon at a familiar place than typing an abstract command.
    So I am really happy that Bricscad has a GUI and it is part of the help system
    :)

  • @Jason Bourhill

    I tried your suggestion, but on V18 in Platinum mode, I don't have a 'Blockify' command.

  • @Michael Mayer
    As an Electrical Engineer and a software developer, I am extremely comfortable at the command line. Don't get me wrong, I prefer a GUI environment because it's faster than typing and GUI apps are easier to use in most cases.

    For BricsCAD, I think starting off with the command line leads to eventual GUI use once you know what's going on.

    In Ralph's book, he assumed I had a Ribbon - I didn't as the software first came up. He assumed I had flyouts - I didn't as the software was configured at install. That made following along impossible because I didn't know what a mouse click I couldn't access represented. It took me a long time to discover PromptMenu so I could follow along. His Ribbon in no way resembled my Ribbon once I discovered the Ribbon command to turn it on.

    The command line is the starting place, the training wheels that assume nothing. You can step up to the Honda Gold Wing later.

  • Hello Roatan Bill,
    I looked into Cycas decades ago, since it was one of the few available options on Linux, but my AutoCAD background made me quickly turn away - the program lacked much of what I (deemed) needed, but I quite liked the interface and some aspects. I think it is quite a pity the developers gave up on it, but this is just another example of how hard it is to generate substantial income with Linux-software...
    But as to your conversion problem: If I had to deal with such geometry, I would probably load the files in blender, since it has very mature and fast functions to join faces into meshes and clean them, and than reexport to dxf or dae.
    Can you perhaps post one of your files?

    Concerning mesh import in general: Turning polygonal geometry back into analytical (feature recognition) is hard, but not impossible. BricsCAD already has limited capabilities in that respect: if you have e.g. a polygonal pipe, BricsCAD will recognize it as a linear entity, which allows you to switch the section to a circle, thus producing real 'CAD'-geometry. Although this is only a modest beginning, it is already more than most other CAD-packages offer, and I hope Bricsys will expand this feature to include rotational objects an sweeps. Recognizing polygonal fillets looks also not completely out of reach - given a minimum face count as well as an angle threshold, the program could search for connected faces that have a constant width and include a constant angle, and replace them with a cylindrical patch.

    BTW, congratulations, I never heard of any user not coming from AutoCAD that realized so quickly that the command line is where the action is.

  • @Knut Hohenberg

    I tried to post a sample dxf but the forum web interface wouldn't accept it.

    When I export from CYCAS as dxf and open the file or import the file into BricsCAD everything exported is on layer 0. What a mess.

    I exported a simple layer, the exterior walls of a building, and imported it into BricsCAD to get the shell.dwg file. I also exported the entire drawing and imported it to get restaurant.dwg .

    When I went looking for a new CAD app, I got Blender as a suggestion from somewhere. All I knew about it was that YouTube computer hardware geeks use it to torture video boards and CPU chips. I looked it up and concluded it wasn't a CAD app. It's for graphic artists, game developers, etc. I moved on.

    Surprisingly, I understood most of your description for mesh imports. A person looking at a pipe representation instantly knows it as a pipe even though its just a bunch of closely spaced straight lines - approximations to the real thing. Trying to write code to do the same thing would be a challenge. I tip my hat to the folks that did it.

  • @RoatanBill said:
    @Jason Bourhill

    I tried your suggestion, but on V18 in Platinum mode, I don't have a 'Blockify' command.

    In that case you will need to manually create a block of each repeating entity, copy it to where it is needed, and delete the existing non-block entity.

    A quick way to create blocks (Assuming it works in Linux) is with COPYBASE followed by PASTEBLOCK. You can go back later and give these blocks a name in the drawing EXPLORER.
    See this blog post for more
    Create blocks on the fly

    Regards,
    Jason Bourhill
    CAD Concepts


    Come to the Australasia BricsCAD Conference


  • @Roatan Bill
    You are right that blender is not a CAD system - but your model is not really CAD data either.
    As you will have noticed, BricsCAD chokes on the amount of individual face objects in your file - it is simply not prepared for this. I therefore exported the file to r15dxf, and opened it in blender. Since the file contains no layers, blocks or any other information that could be used to group objects, all data initially ends up in one big mesh. But blender handles this with absolute ease - it could cope with even larger unstructured data sets. It also has powerful tools to weld all coincident vertices, to turn triangles into quads and to split the mesh into parts that do not touch, and can export the result to dxf or dae.
    Attached is the model saved again as dwg - it is now much faster than the original, and the faces are organized into meaningful objects.
    In BricsCAD V19, you could convert these mesh objects into solids, but this IMO makes sense only for few of them.

  • @Knut,
    indeed, a lot better after converting the 3dfaces using blender.

    @Bill,
    I needed a test project to try out the new blockify extensions we're developing, your restaurant model is a fine candidate. The model attached here is the result of using blockify and converting some of the block content from 3dfaces to 3dsolids.
    Have a nice day,
    Hans

  • @Jason Bourhill
    @Knut Hohenberg
    @Hans De Backer

    Thank you all for taking your time to work on my drawing. I'll check the documentation for all the mentioned commands to see what they do. I'll also investigate Blender at some future date as I've got enough with BricsCAD at the moment.

    Hans : Since none of what I draw has any "State Secrets" implications, you're more than welcome to use it in any way you choose. :)

  • ^ OMG!

    I mean things like BLOCKIFY are that much impressive in 2D only.
    (Unfortunately I don't have any 2D)
    But if
    "Afterwards, we want BLOCKIFY to identify groups of similar solids automatically – which is a far more complicated problem."
    can happen,
    That would be so valuable for my (imports) work.

    But if there are also enhancements in the Stitching process of all that
    Mesh and Face Stuff (when multiple Object's Vertices, Edges or Faces touch)
    which come in from impors of 3D Files, Revit or Vectorworks plugin objects,
    that would be invaluable.

    Hans, I am very impressed.

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. Click one of the buttons on the top bar to get involved!