ManimCommunity / ManimCommunity/manim
`GrowArrow` for `Arrow3D`
Open
Nobody has claimed this yet.
enhancement
pr:bugfix
- Dominant language
- Python
- Stars
- 40.9k
- Forks
- 3.1k
- Avg merge
- 3d 12h
- Merged PRs (30d)
- 25
Description
Enhancement proposal
GrowArrow() only works for class Arrow, not for Arrow3D since it utilizes the own scale method of Arrow. This scale method relies on Arrow being a TipableVMobject, which Arrow3D is not. I have 3 suggestions:
- Do nothing and state that
GrowArrowis only meant forArrow. Then I would implement an error when a classArrow3Dis passed. - Implement the changes I proposed in PR #1668, that is, if an
Arrow3Dis passed just use the normalscale. This still looks good. - Build an own
scalemethod forArrow3D. This seems quite time-consuming since one would have to think about implementing thetipablestuff for 3D Mobjects. This might be good in the future but would be too much for me to handle right now.
Thoughts are welcome!
Additional comments
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing how GrowArrow handles Arrow and why Arrow3D cannot use Arrow's scale method. Compare the three proposed approaches, including the behavior described for PR #1668, and establish which direction maintainers want before changing code; the issue names no files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- computer-graphics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100