PDA

View Full Version : large assembly count


stefano_ME30
06-21-2003, 10:32 AM
after loaded an assembly, how to have the total number of elements (subparts and subassembly)?

many thx

stefano

P.S.:I'm still in fight with Pro/E guys that want not to believe how huge could be an assembly on OSDM :)

Andy75
06-23-2003, 01:32 AM
You can try with this simple lisp...

Andy75
06-23-2003, 01:34 AM
(in-package :my-package)
(use-package :oli)

(defun inq-obj-tree-list (obj)
(cons obj
(apply #'nconc (mapcar #'inq-obj-tree-list (sd-inq-obj-children obj)))
)
)

(sd-defdialog 'Check_Numero_Parti
:dialog-title "Check Numero Parti"
:variables
'(
(result :initial-value nil)
(ASSYS :title "Gruppi"
:prompt-text "Selezionare uno o piu' gruppi da controllare"
:value-type :assembly
:multiple-items t
:initial-value nil
:modifies :contents
:after-input (dolist (one_assy assys)
(setq result
(append
(remove-if-not 'sd-inq-part-p
(inq-obj-tree-list one_assy)) result))))


)

Andy75
06-23-2003, 01:36 AM
oohhps

stefano_ME30
06-23-2003, 10:08 AM
many thxs!

stefano_ME30
06-25-2003, 09:05 AM
this was what it said!

very nice job Andy

ciao

Stefano

Steve
06-25-2003, 12:15 PM
Hi Stefano!

If I may ask, how many components are in your assembly, and what kind of computer system / operating system are you running it on?

Thanks!


Steve

stefano_ME30
06-25-2003, 02:27 PM
75588 :)

very huge!!

Dell650 2 giga ram dual xeon w2k.

The assembly use allot of shared parts, so I think the numbers of models could be not more of 3000 and 1000-1500 subassembly.

It seems the macro counts elements in general (isn't it Andy?).

Could be interesting to have this macro counting parts unshared, shared parts and subassembly separated.

This assembly use 1450 mega of ram loaded.

stefano

P.S.:I think Pro/E guys will be surprised! :)

Andy75
06-25-2003, 10:32 PM
"...It seems the macro counts elements in general (isn't it Andy?)..."
...you're right. It would be a little more difficult to discriminate if a part has been already mentioned in the count-part loop. Maybe it could be inserted a sub-macro that reads the ID of a part, check if this is written in a text file (or in the memory) and , just if not, increase of one unit the number of parts, after this write its ID somewhere and check for the next part.

But I don't have the time to check it , in these days. Or even, maybe there is some kind of different-easier way??

Finally, remember that I'm not a really experiend lisp programmer...he he :D :D

Steve
06-26-2003, 06:42 AM
Hi Stefano!

Say, when you go to make a drawing of such an assembly, how long does it take to generate/regenerate the views?

Steve

stefano_ME30
06-26-2003, 12:41 PM
in true it is very hard thing to manege this assembly, but I was surprised how it can runs.
the problem is when you work on it for hours the redo eats resurce and system slow down.
but I can say not so bad in general.
I would like to be more precise so I will take some time working on it, tell me if you want some particolar test.
The loading time is depending on the network speed, we use files archive on a HP-UX server with only 100mbit netcard, so it is not truly fast, setting on graphics windows makes allot of difference rotating models, but I can work not so bad.
In general we load this assembly only for to check all around on it and dont try to have long redo history.
I will send some more detailed.

stefano

P.S.:see on the bench posts for to have more information on pc configuration, it is the last post on dual D650.

stefano_ME30
06-26-2003, 12:44 PM
Andy it seems not true!

u have a great skill on lisp language.

stefano