CAD/CAM discussion forum > Other CAD/CAM Technology > importing assemblies from Solidworks

importing assemblies from Solidworks

    
  Subscribe Topic

Rank: 1

Deri

Newbie

posts: 0

Registered: 2005-10-29

Message 1 of 16

 importing assemblies from Solidworks
20-12-2005 01:12 . pm   |   View his/her posts only
Hi Folks
I'm in the process of moving from Solidworks to VX and need to export several fairly large assemblies, keeping the existing sub assembly and part names intact. If I export an assembly from SW as a Parasolid file, then re import it to SW, it keeps the structure and names intact, which I figure means that that data is stored in the parasolid file.
When trying to import it to VX, all I seem to get is one part. I've tried the following methods:
1. Doing a straight open of the parasolid file, with the "Auto activate PArt" both on and off
2. Creating a new part and importing, again with "Auto activate part" both on and off.

Ive tried both V12 and V16 of Parasolid.

***EDIT: I don't seem to be getting the "Parasolid import form" mentioned in the help - working with VX11.5, any ideas why not?

From what I understand from the help files, with "auto activate part" switched OFF, it should import the parasolid file as seperate parts? At the moment it doens't seem to make any difference
What am I doing wrong to explain why I can't get the assembly in as required?

The same thing is happening with STEP files - they are imported as seperate parts, but not with the corresponding part names from Solidworks.

Also - Solidworks uses a Y-up space - anybody have any tips on efficiently re orientating your models on import?
Thanks
Deri

Rank: 1

ChrisWard2k2

Newbie

posts: 2

Registered: 2011-11-22

Message 2 of 16

20-12-2005 08:58 . pm   |   View his/her posts only
Hi Deri

I have actually sent a response to your Reseller, IDS, concerning the import of your SW Step files. The STEP files you are producing with SW are not correctly annotated by SW, they do not contain the required Object Identifier. This is possibly because you are not exporting the correct file type or "flavour" (Must be STEP Assembly type), or maybe the SW developers have simply got the STEP schema wrong (possibly they have, since you can round-trip files successfully?). A little bit of experimentation with SW could lead to success.

Parasolids (I have not seen your file) is a completely different story. Firstly, it is not really a neutral file format - this fact is in evidence when you try importing the same parasolids file into different CAD/CAM applications that are actually parasolids based - the results are often different! So, it is fair to describe parasolids files, when used for data exchange between different systems, as "dumb". What attributes data can and cannot be harvested from them is variable and the format itself changes often, it is a moving target so to speak.

One effective solution is to batch export the components from SW as one Object per file (global datum), then batch import into VX. Use the VxDAL "BatchImport" to get the data into VX, and "MultiComp" to auto-build a VX component assembly.

After all the models are imported, you can run the VxDAL "Rotate90", which will run through your Root Object List and rotate all of the models for you at the rate of about 1 per second.

FREE DOWNLOADS



Rank: 1

Kevin

Newbie

posts: 0

Registered: 2004-4-26

Message 3 of 16

21-12-2005 07:19 . am   |   View his/her posts only
Hi Deri,

Why not post an image of your boat assemblies to show everybody just how complex you mean....I think your issues are going to become more important to many VX users over time. Chris is there a Transmagic SolidWorks importer available? If not, what are the chances of getting something like this into VX. Certainly in the UK SolidWorks is probably the biggest 3D player these days and getting native files into VX will go a long way to encouraging people to switch.

Rank: 1

ChrisWard2k2

Newbie

posts: 2

Registered: 2011-11-22

Message 4 of 16

21-12-2005 09:15 . am   |   View his/her posts only
Hi 3dMonkey

Well, firstly, please read my response to Deri! I think it is possible to to get much better results from Parasolids (perhaps the TM bolt-on already is better), but because Parasolids is not a neutral format, it gets changed too often for reliable data exchange between different systems. If parasolids-based systems cannot cope with these changes, how do you expect non-parasolids systems to fair? STEP (and IGES) on the other hand are good choices for this task, and as I stated above, it is also possible to batch export-batch import, which we have already tested with a sample set of files from Deri (100% success).

The complexity of the geometry is a completely seperate issue, and it does pose a real problem if you want to send VX data to SW, because SW is going to struggle to describe the data accurately if it is a sexy shape. Having seen Deri's boat geometry, it is not complex from a VX perspective, either as geometry or as an assembly, but of course that does not mean trouble-free exchange of data.

Rank: 1

Deri

Newbie

posts: 0

Registered: 2005-10-29

Message 5 of 16

21-12-2005 01:48 . pm   |   View his/her posts only
Hi Chris / Kevin
Thanks for the feedback folks. I've tried using the different flavours of STEP output from Solidworks (203 and 214), but they don't allow you to delve very deep in to the controls of the output to define anything - the only options are:
Output as: "Solid/Surface Geometry" or "3D Curves"
The 203 version allows you to add data on owner, creator, product description, but I can't see anyway to define it as "assembly" type or similar.

Kevin - do you have Solidworks 2005 or 6? I'm on 2004 and wondered if there were any extra's on 2005 or 6 to control the export.

Chris - the problem with the batch export/import of every component file in Solidworks is that Solidworks doesn't export the part with a reference to the overall master origin, only the sub assembly origin, so when I import them to VX, all the part files pile up on the origin, as they have no way of knowing where they should be relative to that origin. If push comes to shove, I can probably get around this by dissolving a lot of the assemblies in Solidworks and then exporting, but I'd rather find a more elegant solution.

To summarise:
STEP files: exported from Solidworks with part name data in wrong location, meaning that VX imports the assembly structure correctly, but doesn't pick up the names.

PARASOLID: Assembly exported from Solidworks with part name data and assembly structure, but on importing to VX, for some reason VX doesn't pick up on the structure and imports it as a single entity. I don't appear to have the second "Parasolid import form" that is mentioned in the help files apprearing during the import phase, which may be part of the problem and the "auto activate part" switch seems to make no difference. Chris, can you confirm that there is another form named "Parasolid import form" that is supposed to pop up after I choose the file I want to import, and let me know what's on it?

BATCH IMPORT: Exporting part files as either STEP or parasolid, Solidworks doesn't make a record of the relative location of the part origin to the master world origin, only the local sub assembly origin, resulting in all files ending up centred at VX origin on import. Chris - I think we tested this at a sub assembly mode, which is why it appeared to work OK.

I appreciate that most of these things VX has no control over!

Kevin - Chris has seen the sort of things I'm doing - like he said, the hull shapes aren't particularly complicated for VX - drawing boats from the imported IGES data (VX deals with the trimmed IGES data from Maxsurf far better than Solidworks ever did) is a doddle. Unfortunately I have a few in Solidworks that I need to get in to VX so that I can modifiy them in the future.
I tend to agree with Kevin that a robust method of exporting /importing Solidworks data would be a big boon to VX - Solidworks seem to be be set on fighting it out for new seats with Inventor. However, I can also see what Chris means, but surely coming in to VX wouldn't be as much of a problem?

Anyway, I'm knocking off for Christmas, so if you have any cunning thoughts on these matters over your Turkey and cranberry sauce, please let me know! I'll return the fray next week.
Cheers and Nadolig Llawen as we say over these parts
Have a good Christmas everyone
Deri

Rank: 1

Kevin

Newbie

posts: 0

Registered: 2004-4-26

Message 6 of 16

21-12-2005 01:52 . pm   |   View his/her posts only
Hi Chris,

I did read your response and it is perfectly valid, but my point is, as someone who has been involved with implementing and training users in a range of CAD systems - including SolidWorks - that 99% of users don't want to have to work around issues, they just want to open a SolidWorks part, assembly or drawing file as it is in VX or any other application they have switched to, and see what they had in SolidWorks. I know this isn't easy, but I think it is worth pursuing this goal - after all that is exactly what SolidWorks. SolidEdge, Pro/E and the rest are aiming at. Why should VX be any different? If a new user can just open up a native SW or Pro/E file from VX (and it works!!) then half the battle to persuade to switch is won. But the biggest reason for offering this is that in many instances the new VX user doesn't have access to the SolidWorks application - just the SW files. Then it becomes a merry go round of trying different formats with SW users who frankly don't give a monkey's about what problems you are having getting data into VX. Their attitude (which I can relate to) is "why not just use SolidWorks (or whatever)?"

Rank: 1

Kevin

Newbie

posts: 0

Registered: 2004-4-26

Message 7 of 16

21-12-2005 02:10 . pm   |   View his/her posts only
Deri,

I stopped using SW at 2002, but have used it for some projects (using customer's dongles) right up to 2006. To be quite honest I have never attempted to import VX data into SW or vice versa. I have used Ashlar Vellum Cobalt a lot though (importing and exporting via ACIS perfectly). As for STEP its a long time since I have exported SW as a STEP file. Usually it has been Parasolid or ACIS. I did try to get ThinkDesign STEP files into SW but there were loads of errors to do with tolerances for most files. I think this is a the primary issue with the non mainstream kernels (in my experience). kernels like VX and Think3 can handle loose tolerances much better that Parasolid and ACIS (and presumably ShapeMaster (Inventor) and Granite One (Pro-E)). This make importing OK but makes exporting from VX to others tricky sometimes if the build tolerance is a bit loose.

It is a concern to me as I don't want to spend days working on a file constantly adjusting tolerances to get features to "take" and then find the recipient cannot import the data properly.

What we really need is a verification mode that a user could, say, select a target CAD system, and then analyse the VX model to see what will export and what will not given the limitations of the target system, and also flag up problem areas or feature sets. Better would be a system that restricts feature creation to stay within the limits. You could call it "target based modelling" ;-)

This may not be sexy or push the boundaries of 3D CAD but it would make life a hell of a lot easier for most users.

Rank: 1

ChrisWard2k2

Newbie

posts: 2

Registered: 2011-11-22

Message 8 of 16

21-12-2005 08:42 . pm   |   View his/her posts only
Hello All

Tip: If you are having problems related to computational tolerance with IGES files output by VX, try changing the VX tolerance before exporting. For example, most VX Users have the default tol of 0.01. Via Edit Preferences, change the tol to 0.001, then export. For some CAD systems/versions, this will make a posative difference. For others, you may need to try the exact opposite and loosen the tol.

Rank: 1

ChrisWard2k2

Newbie

posts: 2

Registered: 2011-11-22

Message 9 of 16

21-12-2005 08:50 . pm   |   View his/her posts only
Hi Kevin

Other VX Users will say that the holy grail is 100% perfect DWG. The fact is, we are talking about proprietry formats that the other companies do not wish to share (None of the parasolids apps use vanilla parasolids format for their own databases, one of the reasons why even parasolids apps are incompatible with each other's files). I'm sure SW are very well aware that if VX could read thier files directly, it could have a negative impact on their current customer base. However, even if this goal was more possible to acheive than it really is at the moment, we would probably be wasting our development time because SW is likely to morph into Catia in the future, complete with a new Dassault file format...........

Rank: 1

ChrisWard2k2

Newbie

posts: 2

Registered: 2011-11-22

Message 10 of 16

21-12-2005 09:36 . pm   |   View his/her posts only
Hi Deri

It is likely that later versions of SW export more compliant STEP files. In fairness, they are not the only ones to struggle with the STEP standards, everyone in our industry has problems because the standards documentation is so vast, it is near impossible to fathom. VX Corp has actually published free scripts which help other developers to get it right. Yes, that means we have helped our competitors, but if everyone does STEP better, it has to be good.
I think there must be a way that you can set the components to global ordinates in SW. Perhaps not as part of the exporting dialog, but, dare I mention it, with a macro? You want the Component's origin in Assembly Space to be copied into the component model, and then the model moved from its own origin to this.
Another solution would be to run a VxDAL after import of SW's STEP. The VxDAL will extract the SW Component names from the STEP file and re-name the Root Objects in VX. We could use this approach if the VX Root Object list is comprised only of the currently imported Objects. Let me know if you think this would be viable for your project.
Concerning Parasolids import, I have found the note in the online help that you mentioned. I have never seen an extra options form pop-up during import, it would seem that the help is erroneous.

Rank: 1

Steve

Newbie

posts: 0

Registered: 2004-10-9

Message 11 of 16

22-12-2005 08:44 . pm   |   View his/her posts only
Chris, actually many of your competitors do just that. Grab the parasolid info out of the solidworks *.sldprt part. I know this is what Delcam does with PS-Exchange. IIRC, the Vanilla Parasolid info is buried in the .sldprt file format.

On another note, I have yet to succesfully import a step assembly from anyone. ProE, Solidworks, or Cimatron(icky, pooey, yuk, don't even ask the crap I have to go thru to get THESE files in) all the same results as complained above. But these same Step assembly files will open up in Solidworks(when written from Proe), and in ProE(if written from Solidworks) properly as assemblies.

I can try and dig some of these assemblies I've had trouble with, and upload them if you think it will help.






Rank: 1

ChrisWard2k2

Newbie

posts: 2

Registered: 2011-11-22

Message 12 of 16

23-12-2005 09:19 . am   |   View his/her posts only
Hi Steve

Thanks for the offer of your STEP files. It would certainly be interesting to see them (except anything output by Cimitron ). The SW issue is simply that they do not use the correct keyword. Deri has an early version of SW, I expect later versions have more to offer. However, this has a lot to do with the interpretation of the standard, obviously the various CAD/CAM development teams do not set-out to deliberately get it wrong. What gets difficult for the VX team at times is that, we can do something 100% right, but because a bigger vendor does things their own way, we are deemed to have got things wrong We consequently jump through a lot of hoops. The VX IGES translator is particularly mature and we have special detection code that, for example, finds common write errors made by ProE and imports the data as though ProE had saved the file correctly. In the case of Deri's SW STEP files, we will be able to do the same thing. Initially, to help those customers that need it now, I will write a VxDAL for this.

Rank: 1

Deri

Newbie

posts: 0

Registered: 2005-10-29

Message 13 of 16

03-01-2006 08:32 . am   |   View his/her posts only
Hi Folks
Hope you all had a good holidays!
Chris, I got a friend who has SW2006 to export some of the frame assemblies as both Parasolid and STEP - it looks like the dialogue boxes for exporting hasn't changed since 2004, so there are no extra controls. Thanks for putting my mind to rest on the "phantom form" in the import of parts.

From messing about with a couple of simple STEP files in a text editor, it appears that Solidworks is putting the part name data under
SHAPE_REPRESENTATION ( 'test01', ( #131 ), #133 )

rather than under
ADVANCED_BREP_SHAPE_REPRESENTATION ( ', ( #45, #131 ), #133 ) ;

which is where VX seems to need the data to be able to read in the part names? If I edit these manually, VX appears to read it all in fine, with the correct part names assigned to the right geometry. But this is impractical for a full assembly.
How much of a hassle would it be to write a macro that copied the data over to the correct location.

I've tried importing one of the big assemblies as STEP and all the geometry seems to come over fine, split up correctly, with the assembly hierarchy simplified. If we could get the part names re allocated correctly, then that would be a pretty fast and robust way of importing Solidworks assemblies.
I'd happily write up a brief tutorial on how to transfer assemblies from SW to VX, if it'd be of assistance.
Thanks for all the input - I've got a clearer idea of how the whole exort / import and CAD data structure works now.
Cheers
Deri

Rank: 1

ChrisWard2k2

Newbie

posts: 2

Registered: 2011-11-22

Message 14 of 16

03-01-2006 06:15 . pm   |   View his/her posts only
Hi Deri

You mean you have a clearer idea of how it doesn't work

A VxDAL to re-name the Root Objects is a practical solution, I will write one. In time, VX will be able to recognise a SW-produced STEP file and gather the correct object names (from the wrong locations).

Rank: 1

Deri

Newbie

posts: 0

Registered: 2005-10-29

Message 15 of 16

04-01-2006 04:36 . am   |   View his/her posts only
Indeed!.......
Thanks for that Chris - I'm sure it'll be a big boon to a fair few users, especially those coming over due to the Solidworks/Inventor slap fest - from what I saw with Solidworks 2006, they seem to have basically provided the user with a facsimile of AutoCAD, the ability to open AutoCAD drawings right up to V2006 in any version of ACAD and work with DWG files directly in Solidworks - generally trying to short circuit Autodesk on all fronts! Not sure what this is doing to the 3D productivity and modelling side of things though......
Keep up the good works!
Cheers
Deri

Rank: 1

ChrisWard2k2

Newbie

posts: 2

Registered: 2011-11-22

Message 16 of 16

25-01-2006 10:50 . am   |   View his/her posts only
Hello everyone

I have uploaded a Util that extracts the STEP file Object Names and offers you a one-click method of re-naming a VX Object with the STEP name. It automatically truncates the STEP name if it is too long for VX. To use this Util does require knowledge of the data (i.e., you need to know that Widget01 is Widget01). For those customers that are simply transferring legacy data from SolidWorks this is not a problem, but if you are importing a suppliers/customers data, you are going to need a STEP viewer that can find the Object names. The free IDA STEP viewer is one such beast:

http://www.ida-step.net/tiki/tiki-index.php

IDA (LKSoftWare) are not associated with VX Corp.

I had hoped to provide a fully automatic solution but unfortunately this is not possible with the STEP files output by SolidWorks because the Objects are not saved in a sequential order.

Many thanks to Deri for his example STEP files.

FREE VxDAL DOWNLOADS

See also
X