Skip to main content

Questions tagged [bezier-curve]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
2 votes
2 answers
260 views

What is the mathematics behind inkscape's power stroke path effect interpolator_type and interpolator_beta attributes?

Inkscape has a feature called Power Stroke which is a form of path effect. When you apply it to a stroke you gain 3 control points that allow you to adjust the thickness of the stroke. (I have not ...
1 vote
2 answers
225 views

Is there a canonical way to convert G1 continuity to C1 continuity for splines

I understand what C1 and G1 continuity are (e.g. this is not Continuity of parametric and geometric continuity). But let's say I have a list of cubic splines that are, together, G1 continuous. Is ...
0 votes
1 answer
48 views

How to approximate a 90 degrees sine with a bezier curve in PostScript

I have found here similar questions for other languages like SVG but they don't quite answer this particular question. I want to find a good approximation of the first 90 degrees of a sine curve with ...
22 votes
7 answers
4k views

How to raytrace Bezier surfaces?

I tried this question on math.SE and surprisingly, the answer was "the equations are too nasty, just feed the function it to a numerical root-finder". But if you consider yourself "a graphics guy" ...
0 votes
2 answers
122 views

Methods for filling the area between complex curves

I'm looking for algorithms or methods suitable for filling the area enclosed between complex curves - for example, the area within an outer ellipse but outside an inner ellipse, or the area bounded by ...
0 votes
1 answer
59 views

Gregory triangle patch, calculating $b_{i,j,k}$

I am trying to implement the Triangular Gregory patch from this paper. The goal is to create a $G^1$ continuity across the patch boundaries. So that the normal vectors of neighboring triangles are ...
1 vote
0 answers
61 views

How do freehand vector drawing tools typically decide where to place the control points?

I'm devising an algorithm to take a freehand curve and make a bezier spline from it. I can do this already just fine, but it's a naive implementation that creates about as many bezier curves as there ...
2 votes
1 answer
74 views

Algorithm to add a path point, preserving path shape?

I'm using paper.js and need to add a point to a curved path without affecting the path's shape. Inkscape's "Edit paths by nodes" tool has this feature by default -- double-clicking on a path ...
2 votes
1 answer
242 views

How to decide granularity for sampling a bezier curve for rendetion

If I want to draw a cubic bezier curve, I need to sample points on it and draw the resulting poly lines. One could sample the curve using De Casteljau algorithm and incrementing $t$ from 0 to 1 with a ...
0 votes
0 answers
134 views

Converting a Bezier Path with variable width stroke to an outline?

I started working on a "stylus annotation program", and as part of it I need an algorithm that convert a path with width indicators to an outline. This is similar to the Advanced Outline ...
1 vote
2 answers
163 views

Why is there a straight line between my bezier paths?

I have created a bezier curve tool and each time I draw a bezier curve segment I get a straight line between each mouse click. I don't understand why this is happening and was wondering if someone ...
0 votes
1 answer
78 views

Lines not disappearing after being drawn in OpenGL

I am creating a Bezier curve tool in OpenGL and every time my program draws something in motion with cursor coordinates I see the previously drawn lines on the screen for a second or two before they ...
0 votes
2 answers
112 views

How to get coordinates of opposite direction from mouse release point relative to a point?

I am trying to implement the pen tool from Adobe Illustrator in OpenGL. I am trying to get the coordinates of the reverse tangent upon mouse release. I tried negating the coordinates I got upon mouse ...
1 vote
1 answer
1k views

Is drawing Bezier curve with scanline algorithm possible with Vulkan?

As an information, Vulkan is a low-level abstraction layer thru modern GPU. It allows programmers to program the GPU and assemble rendering pipeline. On that pipeline, there are modules of program ...
1 vote
0 answers
135 views

Extrusion Algorithm For Bezier Curves

I just posted this to SO but the question got closed, so I hope it's OK if I try it again here. They say "we don’t allow questions seeking recommendations for books, tools, software libraries&...
2 votes
2 answers
1k views

Continuity of parametric and geometric continuity

We know that in parametric continuity, $C^1$ continuity is two successive curve section $C_1$ and $C_2$ has first parametric derivative is same. That means tangent vector $t_1$ is same for both $C_1$ ...
1 vote
1 answer
288 views

Cubic Bezier Curve - General Questions

A bezier curve B(t) has 4 control points P0 = (0,0,0) , P1 = (1,0,0), P2 = (1,1,1) , P3 = (0,1,1). Which of the following are correct: a) B(-2) is not defined b) B(-1) = (-1,-1,-1) c) B(t) , t in [0,1]...
1 vote
1 answer
1k views

Spline interpolation library in cpp

Have been searching a lot for a good spline interpolation library in cpp, came across one, which is the famous Eigen library , having the unsupported counterpart for spline fitting.<Here>. I ...
0 votes
0 answers
39 views

Dealing with selection of spline/bezier curves in graphical software

In 2d and 3d environment we can select primitives like lines and polygons by performing point/ray intersection test with the respective primitive. However how does one approach the selection of ...
1 vote
1 answer
583 views

How do I extrude a 2D Bezier curve representation into a 3D solid using Python?

Where P is the control point, w is weight. I plan to extrude this 2d representation into 3d. I have a discrete 2D representation (array which has [n_points, 2, 1] for each sample) of an airfoil that ...
1 vote
1 answer
175 views

How does the Lane Riesenfeld algorithm work?

I understand de Casteljau's algorithm and I am familiar although not fully experienced with B-Splines. I am trying to understand the geometric interpretation of B-splines through the algorithm (just ...
3 votes
0 answers
107 views

Bezier curve : Problem deriving control points from matrix form

This is my first post on this website so i have put in a lot of research to get my point across to everyone as clearly as possible. Based on a question i posted on stack overflow i have successfully ...
3 votes
1 answer
536 views

Determining Rational Quadratic Bezier Curve Weights for Circle

I am trying to create a spherical interpolation with 3 points. I'm currently using Quadratic Bezier Interpolation but have been told I should use Rational Quadratic Bezier Curve in order to get a ...
1 vote
0 answers
156 views

How to do a scanline fill with a self intersecting polygon?

I have a bezier curve and would like to draw it's stroke. To do that, I planned to approximate the stroke to a polygon and fill it with a scanline algorithm. While I feel confident about implementing ...
0 votes
0 answers
163 views

Projecting one Quadratic Bezier Curve Onto Another

I'm working on improving an open source rasterization library called Gudni that I started a few years ago. It's source repository and the branch I'm currently working on are here: https://github.com/...
2 votes
1 answer
443 views

LoopBlinn Cubic Curve Rendering - Serpentine arteffect

I am trying to implement the Loop-Blinn cubic curve in java using the following source codes GPU-Curve-Rendering and WebCore. Both of them are showing few arteffects and i cannot figure out why. Here ...
1 vote
1 answer
204 views

Wrong tangential directions for cubic bezier curve

I am well aware that there are several ways to find the tangents to a Bezier curve. However, I choose to just substitute the result of differentiating the Bezier curve equation. So, given four ...
1 vote
1 answer
2k views

B spline curve generation in Python

I am using the de boors algorithm to generate B splines in python. However I am getting spikes in the final figure. I do not understand why this happens. I am posting my code here for reference <...
8 votes
2 answers
3k views

Algorithm to find the center of a Bezier curve

I need to find the center of a Bezier curve to rotate it. I have a list of all points (control points, beginning and end, all points on the curve itself). How would I go about finding it's center?
3 votes
1 answer
1k views

Simple Intersection Algorithm for Ray and 3D Bézier Curves of Varying Thickness

I'm trying to get an algorithm for intersecting a "tube" (a 3D cubic Bézier curve extruded by a possibly-changing radius) with the following required properties: Computes intersections of ray and a ...
1 vote
2 answers
456 views

Does this 3D rendering method exist? How is it called? Is there any C++ algorithm for it?

I've been thinking about making my own 3D rendering engine in C++, but I don't know much about math that's required to do it. I'm not even sure if it's possible or if it even exists or how it's called....
6 votes
1 answer
354 views

Silhouette curve for isometric surface of revolution

I am trying to figure out how to convert a flat representation of a curve into the silhouette of a surface of revolution in a isometric projection. In essence in want the planar cut of the surface ...
3 votes
2 answers
231 views

First steps towards CAD standard curve fitting

I am interested in building a program to accomodate the following workflow: A user begins with an arbitrary vector/CAD shape, which they wish to transfer onto paper without using a printer (there are ...
2 votes
1 answer
2k views

Join two bezier curves so that the result is two-times continuously differentiable

I have a task to join two bezier curves, so that the resulting curve is two-times continuously differentiable. I have the cubic bezier Curve C with control points: c0 = (1,1) c1 = (3,4) c2 = (7,5) c3 =...
1 vote
0 answers
106 views

Scalar multiplication in vecmath on Matrix4f results in strange values

So I have a matrix: ...
2 votes
1 answer
1k views

Bezier Curve Tool Controlled by Mouse

So I have recently learned about Bezier Curves (quadratic & cubic) and have a thorough knowledge of how they work. In my graphics engine in DirectX I wanted to implement a Bezier Curve Tool ...
3 votes
2 answers
277 views

Checking the correct offset direction for Bezier curve offset

I am implementing Bezier curve offset. My approach is simple: Given the handles, calculate the vectors normal to them Move the handle along the normal vector. If the new curve intersects the old one,...
8 votes
1 answer
584 views

Apply distortion to Bézier surface

I am trying to simulate the image warp effect, that is used in Adobe Photoshop. The rectangular image is warped according to a cubic Bézier surface (in 2D, all Z components are 0). Having any Bézier ...
5 votes
1 answer
1k views

Bicubic bezier surface from 4 bezier curves

In the program I need to create, the user should specify the hull geometry of an aircraft wing and fuselage using cubic bezier polycurves. But to get to m bezier ...
10 votes
2 answers
598 views

Reliable test for intersection of two Bezier curves

How to reliably find out whether two planar Bezier curves intersect? By "reliably" I mean the test will answer "yes" only when the curves intersect, and "no" only when they don't intersect. I don't ...
7 votes
1 answer
1k views

How to calculate matching roundness of two offset rectangles?

I have two rectangles — one with a fill (blue) and one with a stroke (red). The red rectangle is being offset (depending on the stroke width) so that it appears snug and outside the edge of the blue ...
12 votes
2 answers
2k views

Hardware-accelerated drawing of curved shapes

How to quickly draw a curved shape? by "quickly" I presume one should use hardware facilities as much as possible by "curved" I mean boundaries defined by either quadratic or cubic Bezier curves by "...