cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Visit the PTCooler (the community lounge) to get to know your fellow community members and check out some of Dale's Friday Humor posts! X

Creo Illustrate, Copy 3D figures from one Ci into another Ci

Ramon_Bohne
13-Aquamarine

Creo Illustrate, Copy 3D figures from one Ci into another Ci

Hello all,

In general, the question I have is whether I prefer to work with isolated Creo-Illustrate files for large projects, or preferably just one, where I combine everything together.

 

The problem is, of course, that Creo-Illustrate files are getting bigger and bigger and thus harder to handle.

 

My example:
Let's say I create two separtate Ci files (Ci 1 and Ci 2) for two different pvz files (Assembly-1.pvz and Assembly-2.pvz).
In each Ci I create for example three 3D figures (3D figure 1...3 and 3D figure 4....6).

After some time I realize that it would make more sense to have only one Ci instead of two.

So I copy for example the Ci 1 and name it Ci 1+2. Here are now already the 3D figures 1...3 included.
Then I import the second pvz, i.e. Assembly-2.pvz.

 

So far, so good.

 

Here is my question:
Is it now possible to copy (transfer) the 3D figures 4...6 from the Ci 2 to the new Ci 1+2?

Or do I have to recreate the 3D figures 4...6 in the Ci 1+2?


Attached is the schematic view for what I would like to see.


Thanks a lot and best regards
Ramon

ACCEPTED SOLUTION

Accepted Solutions
TomM
14-Alexandrite
(To:Ramon_Bohne)

Yes and No.

 

No - because Creo Illustrate does not support this workflow at all and I searched and found a way to work around the issue only because my files kept getting corrupt by faulty "Save" functionality.

 

Yes - because I've run into the same issue myself and found a way although it's dodgy at best. I'm showing it only as a proof it can be done, not as something that should be done. First try this on some sample files.

 

You see, this software is based on XML text files packed together with other data in a zip archive. The structure and all sorts of connections between files are driven by xml files. In all honesty I don't have the time right now to get into details cause I'd have to run the procedure myself in order to make sure I describe the steps exactly right and I haven't done it for a year. Might do it another day.

 

Unfortunately the sBOM of both the source and the target need to be exactly the same, symbol libraries as well and each item in the BOM needs to have the same ID number which basically means you can only somewhat reliably combine c3di files which were copies. Nothing could've been added to the BOM in the meantime. Still I found some uses (mainly when due to automatic save bug my file got corrupt, some illustrations lost and I had to rebuild some of them from scratch or copy from an older version).

 

Always operate on a copy of the file and check the results!

Always assign new numbers to the files which are way beyond the last number listed in the target archive! (if the last figureID is 214 the ones that you bring into the file should be assigned something like 300, 301 and so on for the ease of recognition).

 

In short - when you open the c3di file as an archive you'll find PNG images of the thumbnails of the figures, .3df files which are xml files describing everything about each figure and a single "manifest.3di" xml file which combines all the other files and sort of structures them I guess.

df.PNG

I think you have to unzip the target, copy the corresponding PNG and .3df files to the folder (with already changed numbers at their end, otherwise you might overwrite some illustrations), edit the lines in targets manifest.3di:

First open the SOURCE manifest and find the line using ctrl+f searching by figure name. You will usually need to find the first one and last one if they're consecutive (like if you're copying the whole set of figures from the c3di file).

Note there will be multiple instances but you're interested in the one looking like this <galaxy_3di:figure name="Here's the name of the figure you're looking for" id="101" figure_update_required="false" figure_sequence="false" figure_animation="false" itemList_changed="false" thumbnail="figureID_101_thumb.png" figure_filename="Figure_101.3df"/>

Copy all of the text you're interested in pertaining to all the figures you're trying to move.

Paste it into a different notepad.

Edit the red numbers. Always 3 per figure. Assign them the same numbers that you're going to assign to the PNG and .3df files. They must correspond and must be different from the ones used in target file.

You can now find the last figure in the targets manifest.3df file by the same means - ctrl+f and so on but this time you want to paste everything from the opened and altered notepad you've created in previous step. Right behind the last "/>" end of line tag.

Now you need to close the manifest (save changes!).

Now remove the old archive (which you should actually have done right after you've exported its contents) and zip the whole target folder. Change the file extension to c3di. 

 

Some extra info and doubts:

- I'm not sure if you had to export the target archive and then zip it again or you shouldn't actually. I was pondering this question and I'm not sure if I had found a way to just add the files to the archive and edit the manifest or I've actually unzipped-zipped the whole thing.

- I don't know why but sometimes the numbering scheme in the archive and manifest stays as you've put it and sometimes it is restructured to consecutive numbers as it should. In general when you open and save the refreshed target .c3di file the numbering should be restructured, it just doesn't always for some reason. Sometimes it takes a couple of saves. Doesn't really matter unless you need to do this over and over again.

- Sometimes (though it might've been due to mistakes I've made) one of the figures would go missing. I think it was the last one - one after which you pasted the string of text.

- If you're thinking of using source/target with different pvz files you're out of luck I think. I'm sure it can be done but it's going to get complicated. For some stupid reason .ol and structure files are put into separate folders, each has random number and it's different each time you import/export a pvz file into Creo Illustrate c3di file. So you'd have to make sure those align in both archives and the numbers align in all structure files, manifest and maybe .3df files. Now that's too tedious and error prone to even approach.

 

I've done it probably around 10 times and the files work correctly so far. It might be intimidating at first but in the end it's quicker than editing, say 8+ figures, although I can't stress enough how unsupported by PTC this is 😅

It should be treated as the last resort.

 

Good luck

 

View solution in original post

6 REPLIES 6
TomM
14-Alexandrite
(To:Ramon_Bohne)

Yes and No.

 

No - because Creo Illustrate does not support this workflow at all and I searched and found a way to work around the issue only because my files kept getting corrupt by faulty "Save" functionality.

 

Yes - because I've run into the same issue myself and found a way although it's dodgy at best. I'm showing it only as a proof it can be done, not as something that should be done. First try this on some sample files.

 

You see, this software is based on XML text files packed together with other data in a zip archive. The structure and all sorts of connections between files are driven by xml files. In all honesty I don't have the time right now to get into details cause I'd have to run the procedure myself in order to make sure I describe the steps exactly right and I haven't done it for a year. Might do it another day.

 

Unfortunately the sBOM of both the source and the target need to be exactly the same, symbol libraries as well and each item in the BOM needs to have the same ID number which basically means you can only somewhat reliably combine c3di files which were copies. Nothing could've been added to the BOM in the meantime. Still I found some uses (mainly when due to automatic save bug my file got corrupt, some illustrations lost and I had to rebuild some of them from scratch or copy from an older version).

 

Always operate on a copy of the file and check the results!

Always assign new numbers to the files which are way beyond the last number listed in the target archive! (if the last figureID is 214 the ones that you bring into the file should be assigned something like 300, 301 and so on for the ease of recognition).

 

In short - when you open the c3di file as an archive you'll find PNG images of the thumbnails of the figures, .3df files which are xml files describing everything about each figure and a single "manifest.3di" xml file which combines all the other files and sort of structures them I guess.

df.PNG

I think you have to unzip the target, copy the corresponding PNG and .3df files to the folder (with already changed numbers at their end, otherwise you might overwrite some illustrations), edit the lines in targets manifest.3di:

First open the SOURCE manifest and find the line using ctrl+f searching by figure name. You will usually need to find the first one and last one if they're consecutive (like if you're copying the whole set of figures from the c3di file).

Note there will be multiple instances but you're interested in the one looking like this <galaxy_3di:figure name="Here's the name of the figure you're looking for" id="101" figure_update_required="false" figure_sequence="false" figure_animation="false" itemList_changed="false" thumbnail="figureID_101_thumb.png" figure_filename="Figure_101.3df"/>

Copy all of the text you're interested in pertaining to all the figures you're trying to move.

Paste it into a different notepad.

Edit the red numbers. Always 3 per figure. Assign them the same numbers that you're going to assign to the PNG and .3df files. They must correspond and must be different from the ones used in target file.

You can now find the last figure in the targets manifest.3df file by the same means - ctrl+f and so on but this time you want to paste everything from the opened and altered notepad you've created in previous step. Right behind the last "/>" end of line tag.

Now you need to close the manifest (save changes!).

Now remove the old archive (which you should actually have done right after you've exported its contents) and zip the whole target folder. Change the file extension to c3di. 

 

Some extra info and doubts:

- I'm not sure if you had to export the target archive and then zip it again or you shouldn't actually. I was pondering this question and I'm not sure if I had found a way to just add the files to the archive and edit the manifest or I've actually unzipped-zipped the whole thing.

- I don't know why but sometimes the numbering scheme in the archive and manifest stays as you've put it and sometimes it is restructured to consecutive numbers as it should. In general when you open and save the refreshed target .c3di file the numbering should be restructured, it just doesn't always for some reason. Sometimes it takes a couple of saves. Doesn't really matter unless you need to do this over and over again.

- Sometimes (though it might've been due to mistakes I've made) one of the figures would go missing. I think it was the last one - one after which you pasted the string of text.

- If you're thinking of using source/target with different pvz files you're out of luck I think. I'm sure it can be done but it's going to get complicated. For some stupid reason .ol and structure files are put into separate folders, each has random number and it's different each time you import/export a pvz file into Creo Illustrate c3di file. So you'd have to make sure those align in both archives and the numbers align in all structure files, manifest and maybe .3df files. Now that's too tedious and error prone to even approach.

 

I've done it probably around 10 times and the files work correctly so far. It might be intimidating at first but in the end it's quicker than editing, say 8+ figures, although I can't stress enough how unsupported by PTC this is 😅

It should be treated as the last resort.

 

Good luck

 

Ramon_Bohne
13-Aquamarine
(To:TomM)

Hello TomM,

 

Sorry, I tried to understand your explanations, but I couldn't manage it. Overall, the procedure would also be too complicated for day-to-day business in our company.

 

My conclusion is that there is no practicable solution to the problem I have described.

 

Thanks anyway and best regards
Ramon Bohne

TomM
14-Alexandrite
(To:Ramon_Bohne)

Overall it's not really that complicated, the main issue concerns having the exact same geometry (.ol file) structure and not diverging form the exact steps required.

I agree with the summary you've presented - it's not suited for daily operations. But it's the only one I've found.

Roccobarocco
13-Aquamarine
(To:TomM)

Hi Everyone,

I have a similar question. Can i merge together two animations in an easy way?

I create two different file with two different 3D assembly.

File 1:

1.JPG

2.JPG

6.JPG

File 2:

3.JPG

4.JPG

5.JPG

 

And then i put this two files together in a new 3D assembly without animations:

File 3:

7.JPG

With the technique of unzipping the PVZ file I put the animation of File 1 and the animation of File 2 into the file 3.

 

I worked in: 

11.JPG

This thing works and at least I have my animations that works in the new assembly.

But is there a new solution that I can do this type of things inside the program?

The unzip solution in not easy to do in a day-to-day business.

  

  

TomM
14-Alexandrite
(To:Roccobarocco)

Hi,

 

No. As I said, this is a workaround in order to achieve something that PTC does not provide OOTB. 

 

If you don't mind that you can use a free "VLC media player" or other video editing software to merge MPEG4 or other formats published with Creo Illustrate.

Roccobarocco
13-Aquamarine
(To:TomM)

Thanks for the answer. 

It's a shame.

We work with Vuforia for AR, so a media player wouldn't be of any use.

I think that an integrated "copy/paste" function in illustrate for animations would be beneficial for every user , since handling a zipped and scripted file is too advanced for a day-to-day business use.

 

 

Announcements


Top Tags