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

Community Tip - You can change your system assigned username to something more personal in your community settings. X

model "de-obfuscator" program anyone?

bockpa
1-Newbie

model "de-obfuscator" program anyone?

I have been exploring, and trying to implement,best practices for Pro/e. This hasopened me to the idea of "horizontal modeling" and "top down design". Isense my users think these concepts are a waste of time. The biggest challenge I face is how to get users to "see" a good model / modeling style from a poor one. It's hard to label all our CAD data as "poor" and try to explain better ways. The legacy data really is the burden I bear when trying to improve our revise-ability and model robustness.

On a tangent I have been playing around with building a mapkey that "fixes" a model that wasn't initially createdfrom a start part. Part of the solution I learned about from a great speaker atthe World Event 2008 (that Ican't find thename of). What it would do is exportthe list of model parameters to disk, then execute a seperate program that would examine the fileagainst a known list of our parameters.It would build a new mapkey in a config.pro file thatwould add the needed parameters.When the program ends, control returns to the mapkey which would load the new config.pro file from disk, thereby adding the mapkey to the system. Lastly, the mapkey would call thenew mapkey that goes forth and adds the appropriate parameters. Hopefully I could make this solution also go after missing layers, etc.

An evenlofter goal of mine, would be to help people embrace best practices by building jlink programs that would analyze model structure and implement improvements. For instance, One goal is to put a datum "framework" at thetop of a model tree that allows us to "hang" geometry features on the framework to reduce geometry to geometry parent/child relationships, i.e horizontal modeling. It may be possible for a jlink program to analyze feature dependancies, create some of the datum framework and then modify the features touse the framework.

Another ideais toreplace geometryreferenceswith datum references in assembly constraints. I would rather have components assembledusing datum references than to geometry references. Even better components should be assembled to a skeleton. Maybe a jlink program could examine how the parts are assembled and build a skeleton that

We also havea coupleprojects that aresurface modeling heavy. Those parts tend to have a lot of copy geometry features that arbitrarily make one part the parent ofother parts' features. I would prefer that we use skeletons to act as parents toshare geometry with various components. Maybe a jlink program could examine the copy geometry features, recognizing them as shared geometry, create an appropriate skeleton model with the shared geometry,and thenredo the geometry creation in all the parts that use the geometry.

Maybe thiscould be interactive in the sense that it will show you what it finds and then offer the solution, issue by issue.

Certainly people could remodel existing data to"fit" the best practices model, and they can be guided to build new parts using the best parctices concepts. It just seems tome the fixes are so mechanical that they could be done programmatically.

Andno,I am not abusing any drugs or medications. 😉

Paul Bock

Avox Systems

1 REPLY 1

Paul,



Those sure are some lofty goals, as you mentioned. I feel if you were able
to come up with such a set of routines, you could probably retire selling
the scripts.



As you stated, it many cases it is much better to tie geometry (including
parts and sub-assemblies) to datum-type features as their parents. At the
same time though, it is also true that for design intent purposes, in many
cases it can be better to have solid features reference other solid feature
as their parents so the parts update properly upon regeneration. Figuring
out which approach to take needs to occur on a feature by feature basis.
Automating such a model cleanup technique would still take a lot of manual
interaction.



I am a big proponent of what I call "framework modeling" wherein I create an
underlying framework of datum-type features (most being curves versus other
type of datum features), and tie my solid geometry into this underlying
skeletal structure. I do this even within individual parts, not just in
skeleton models from which I may pass information into other models. The
technique works like a charm with few downsides.



Unfortunately I don't have much input on what it would take to automate most
of what you desire. I feel it would quite a task to even attempt to
implement. Regarding your need to update parts to include all missing
parameters which are in your normal start part, does your company use or own
Model Check? Model Check is a great automated method of adding the missing
start part parameters and prompting for their values. It can also check for
other standard model characteristics, including models created without
default datum planes.



Best of luck with your automated model cleanup. I am inspired by your ideas
for developing and implementing such tasks. If I can be of any further
assistance with your Pro/E endeavors please don't hesitate to contact me.



Scott W. Schultz

Principal Consultant

3D Relief Inc.

3700 Willow Creek Drive

Suite 200

Raleigh, NC 27604

(991)259-0610





_____
Top Tags