Jump to content
Mr. Simone Bigalli

Area and COA calculation on custom plane

Recommended Posts

Hi,


 


I'm trying to evaluate the Area and COA of a curve drawn on a plane different from the principal ones. However, the two functions getArea() and getCOA() available on CAESES seems to work only on principal planes.


Is there any workaround?


 


Thank you very much.


 


Cheers.


Simone


Share this post


Link to post
Share on other sites

Hi Simone,

 

as far as I know you can evaluate Area and COA of a curve only with respect to the principal planes and main axes.

 

In principle you now have two options:

 

1) Find a transformation that puts your (flat) curve into a principal plane. Use rotation and translation in a transformation chain to do that. Might be difficult though if you don't know the transformations.

    Using this approach it might be an option to create your curve in a principal plane, use your normal getArea() and getCoA() commands an find transformation to put your curve in the right position. You can then use the same transformation to transform your CoA point.

 

2) Make a surface out of your curve by connecting start and end point with a line. Then use .getAreaApproximation() on that surface for the area.

    Unfortunatly there is no CoA command for arbitrary surfaces, afaik. A work around would be to create a symmetrical solid around your surface. Then use .getCoG() on this flat solid. Since the solid is symmetrical around your surface CoG = CoA.

 

If anyone knows of simpler ways I would be glad to learn it too.

 

Regards,

Bodo

Share this post


Link to post
Share on other sites

Hi Simone (and Bodo),

 

I have wrapped everything into a small Feature for you...

 

Inputs are:

1. the curve you want to investigate

2. the principal plane you want to have it in

3. a line (in the same plane as your initial curve), i.e. simply connecting start and end, which will be aligned with the principal axis' abscissa

 

Outputs are the transformed curves, as well as the transformation and a reverse transformation in case you want to use this definition for other use cases...

 

post-933-0-67212200-1569319763_thumb.png

 

post-933-0-75934000-1569319779_thumb.png

 

Attached are both, the definition and a small testcase.

 

Cheers,

Heinrich

rotateToPrincipalAxis.fdf

testcase.fdb

Share this post


Link to post
Share on other sites

One small note on this: I used three points on the input curve (start, half length and end) to determine the plane in which the curve is positioned. If those points happen to be aligned in your case you will have to adjust the second point to something that works robust for your case...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...