The second week has ended and here I am to give you a brief about the week’s work!
The week started with the opening of a PR #16964 which intended to define a class CrossSection as planned. Discussions have been done in this PR regarding its API and its need. All these discussions lead to a conclusion of making a slight change in the API to make it accept any arbitrary cross-section which the user can define using the geometry module. So now the CrossSection class will take the input of a pre-defined object of the geometry module and calculate its corresponding properties. This will make the CrossSection class much simpler and generalized. I will be updating the same in the PR soon.
I had also researched some of the previous works done in this area. PR #14434, which intends to implement a shape class, giving functionality to cut an ellipse or a parabola via a line and determine the properties of the newly formed segment. I have tried to implement a similar concept to the Polygon class via a method cut_section() in PR #17001.
Also since one of the major issues also was to determine the first moment of area, this PR would further help in the calculation of the first moment of area. It intends to give the Polygon class functionality to return a new Polygon segment formed when a given line intersects the Polygon. Although, an alternative method of Polygon triangulation also has been discussed in this PR, to determine the first moment. I will have to do a bit of research for this to get this implemented.
- Implementing a method to determine the first moment of area
- Completing the CrossSection class along with its documentation and testing
- Linking it with the beam module
- Working over the implementation of Stage-II
I will try to make the CrossSection class fully functional, by the end of the coming week.
Will keep you updated!