Кубическая кривая B-сплайна в Java - PullRequest
7 голосов
/ 08 декабря 2010

Мне нужно использовать кубическую кривую B-сплайна, но нигде не могу найти код для нее. Единственными кривыми, доступными в Java API, являются QuadCurve2D, Path2D и CubicCurve2D. Я думаю, что все они Безье, но я не уверен в этом.

Если вы знаете, где можно найти код для кубического B-сплайна, который предпочтительно расширяет класс Java Shape и поддерживает contains(Point p) для onMouseOver, пожалуйста, помогите.

Ответы [ 2 ]

3 голосов
/ 10 декабря 2010

CubicCurve2D является кубическим B-сплайном.

Однако это может или не может быть тем, что вам нужно, поскольку существуют другие кубические B-сплайны.

То есть все CubicCurve2D кубическиеB-сплайны.Не все кубические B-сплайны являются CubicCurve2D.

1 голос
/ 10 декабря 2010

В Apache есть класс для представления сплайн-кривых:

http://jmeter.apache.org/api/org/apache/jmeter/visualizers/Spline3.html

Однако он не расширяет Shape и не поддерживает то, что вы хотите. Класс работает путем интерполяции кривой между узлами с кубической кривой. Для содержит (точка P) Вы можете использовать метод getPlots (), сравнить его результаты со значениями x и y P.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...