Zepmanbc / creopyson

Python library for Creoson (http://www.creoson.com)
MIT License
60 stars 5 forks source link

Using creopyson/creoson to build an assembly?? #43

Closed danachee closed 1 week ago

danachee commented 2 years ago

Description

This is a question, not a bug. I can't find any examples of how, if its possible, to build an assembly using only creopyson. For example, let's say I have two blocks and I want to mate them face to face, with a space between. How would I go about this?

Thanks,

What I Did

Googled "using c.file_assembly()" in various combinations

davidhbigelow commented 2 years ago

Dana,

There are a few ways to do this - Coordinate Systems is the preferred way for consistency in any automation.

It is possible to generically constrain things like a user would - but this requires more planning to be useful more generically.

in the CREOPYSON docs : look at file_assemble - and the constrains portion as a reference.

https://creopyson.readthedocs.io/en/latest/creopyson.html?highlight=assemble#creopyson.file.assemble

This is a quick generic example from the main CREOSON reference : http://www.creoson.com/functions.html

look up: file : assemble object : JLConstraint

You should find similar in the CREOPYSON docs.

Dave

On Tue, Jan 25, 2022 at 8:26 PM Dana Chee @.***> wrote:

  • Creo version: 3.0
  • Creopyson version: 0.7.3
  • Creoson version: 2.8.0
  • Python version: 3.8.10
  • Operating System: Linux (Ubuntu)

Description

This is a question, not a bug. I can't find any examples of how, if its possible, to build an assembly using only creopyson. For example, let's say I have two blocks and I want to mate them face to face, with a space between. How would I go about this?

Thanks, What I Did

Googled "using c.file_assembly()" in various combinations

— Reply to this email directly, view it on GitHub https://github.com/Zepmanbc/creopyson/issues/43, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAMSRJIAYYHEZO2IH65ENU3UX5EULANCNFSM5MZZE7NQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you are subscribed to this thread.Message ID: @.***>

-- David Bigelow, President Simplified Logic, Inc https://www.simplifiedlogic.com | SimilarParts.ai C: 317-431-5454

danachee commented 2 years ago

Thanks! Is there a way to pull this info from an existing assembly or component? That way I'll have a proper way of matching up what exactly should be in the JLConstraint?

davidhbigelow commented 2 years ago

Not sure that is 100% possible - may require some listing of feature types

Best to plan for the structure up-front and pick the most stable references that are consistent. Coordinate Systems always work and are less overhead to manage.

Just my $0.02 on this.

Dave

On Tue, Jan 25, 2022 at 9:32 PM Dana Chee @.***> wrote:

Thanks! Is there a way to pull this info from an existing assembly or component? That way I'll have a proper way of matching up what exactly should be in the JLConstraint?

— Reply to this email directly, view it on GitHub https://github.com/Zepmanbc/creopyson/issues/43#issuecomment-1021804664, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAMSRJI3EYCHRV2XYZDZPSDUX5MKNANCNFSM5MZZE7NQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

-- David Bigelow, President Simplified Logic, Inc https://www.simplifiedlogic.com | SimilarParts.ai C: 317-431-5454

danachee commented 2 years ago

Thanks! (I'm trying to code this up for someone else. Mechanical engineering isn't my skillset!). I'll play with it to figure it out. (but a quick question, which part of the API would be relevant to Coordinate Systems usage?).

davidhbigelow commented 2 years ago

Not sure in CREOPYSON specifically - but it is a parallel to the standard CREOSON functionality.

http://www.creoson.com/functions.html

Search for "file : assemble" --- there are a few examples there for using Coordinate Systems as constraints - should be simple to implement using Coordinate System Names.

Note - the files have to be in the Creo session memory before doing this... and the assembly as to be active you are assembling to.

Hope this helps.

Dave

On Tue, Jan 25, 2022 at 9:42 PM Dana Chee @.***> wrote:

Thanks! (I'm trying to code this up for someone else. Mechanical engineering isn't my skillset!). I'll play with it to figure it out. (but a quick question, which part of the API would be relevant to Coordinate Systems usage?).

— Reply to this email directly, view it on GitHub https://github.com/Zepmanbc/creopyson/issues/43#issuecomment-1021809201, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAMSRJO2H2LL7G4TIADSKR3UX5NTFANCNFSM5MZZE7NQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you commented.Message ID: @.***>

-- David Bigelow, President Simplified Logic, Inc https://www.simplifiedlogic.com | SimilarParts.ai C: 317-431-5454

danachee commented 2 years ago

Ah, Thank you so much! I see that the 'csys' name for the 'type' is the link. Feel free to close this out.