Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. Be respectful, on topic and if you see a problem, Flag it.

If you would like to contact our Community Manager personally, feel free to send a private message or an email.

I'm loving the bézier sketch curves!

Evan_ReeseEvan_Reese Member Posts: 1,603 PRO
That's pretty much it. That one tool has been a game changer for me, and is quickly becoming one of the first things I reach for in my sketch palette. That said, I've started noticing some areas I'd personally like to see some changes:
  1. I often end up with lots of lines and points, which I commonly want to batch constraints to. For example, I find myself picking lots of edges to set to equal, or points to set vertical. As of now, box select doesn't work for these points and lines, and it makes selection tedious
  2. When inserting a spline point, the surrounding points sometimes move around. For example, if I have a bunch of horizontal points and add a new one, they won't all stay horizontal.
  3. I'd love to be able to set weights to the points. I imagine it could just be a single click with the dimension tool on the point, similar to rho for conics.
  4. Curvature constraints still seem finicky with them, but it works pretty good
  5. you can't make a closed spline, when the end points are made co-incident, I'd expect it to make a single closed loop.
  6. Altering the spline degree could help make smoother curves in some case.
I'm mostly gauging other people's impressions, so I'm not making an improvement request yet. What else are people noticing with the tool? I'm generally really happy to have it, and am excited to see more motion toward easy, high-quality curves which, of course, are a prerequisite for high-quality surfaces.
Evan Reese / Principal and Industrial Designer with Ovyl
Website: ovyl.io


  • S1monS1mon Member Posts: 1,220 PRO
    I agree for the most part. Here's my list of IRs which I posted on the Improvements to Onshape August 5 thread:

    Raise/lower degree (keeping the same shape when possible) of Béziers
    Allow Béziers to pick up tangency or even curvature constraints automatically when sketching
    Allow tangent arc to pick up the tangency of a Bézier spline
    Allow extension of Béziers when using edge
    Allow box selection of Bézier control polygon sides
    Update curvature plot in realtime for Béziers in sketches
    Allow sketch transform tool to work on Bézier control points
    Add convenient way to turn Bézier control polygon into sketch reference lines

    Some of the areas that you suggest (weighted CVs, closed splines) would mean that the curves would no longer be - strictly speaking - Béziers. That's fine, but then we'd probably want a tool which is more like the "style" spline in other CAD systems. This could allow B-Splines and NURBS of various degrees and spans, as well as periodic (closed) or weighted flavors. 

    I think I might like weighted CVs better if there were better tools to drag the weighting up/down and see the result visually. As soon as something needs a dimension (e.g. your Rho example with conics), it's hard to get the same fluidity of modification as dragging the CVs around. Sure, one can use the mouse wheel with modifiers to drag values up and down, but the step options are often not flexible enough. I find myself missing the spin box increment options in Solidworks.

    On your #4, I haven't gotten to the bottom of it yet, but anecdotally I had a sketch that failed when a Bézier was made C2 to two arcs if the arcs were locked down using fix constraints for the end points and the radii. If I changed the radii to actual driving dimensions (not a fix), the sketch solved. I suspect there are some things under the hood where the tolerances for checking the constraints are not as flexible as they need to be, or the solver is getting stuck in some local hole and not looking at the bigger picture of what it could do.

    Another area that I've noticed since I created all those IRs is that the behavior of the Onshape Béziers when split is .... interesting. Unlike other CAD tools which create separate splines (using the de Casteljau algorithm) with their own CVs and polygons, we get these ghosts of curves past. The original control polygons are kept, but you end up with two partial curves. My first reaction was that it was a crazy thing or a bug, but I'm trying to keep an open mind. 

  • matthew_stacymatthew_stacy Member Posts: 415 PRO
    In my opinion this thread illustrates limitations of the "improvement request" approach to development.  Rather than pulling together a representative group from the highly intelligent and skilled Onshape user community to discuss, "How do we make this the best Bezier curve tool ever?", we instead piecemeal it. 

    We all end up voting on a discrete list of stand-alone IR's, with no viable path to unify them into a cohesive whole.

    Sheet metal is another example.  Onshape has great tools in that area, but still lacks significant functionality, such as formed-features (e.g. dimples) that can be incorporated in the flat-pattern.  @bryan_lagrange and others have identified the shortcoming of not having bend-specific k-factors to allow for fabrication sequences that utilize multiple tooling setups and/or machines.

  • Evan_ReeseEvan_Reese Member Posts: 1,603 PRO
    I agree that the IR method doesn't cover everything, especially when features are interconnected. It does work well for translating a single request, to a single user story, to a single delegatable chunk of development work, though, which I still think is generally a good way to go. I'd rather keep the incremental improvements we have than have the dev team try to complete The Ultimate Solution before releasing anything. That said, I agree that there are probably lots of people, including myself, who use the software daily that might have valuable input on features before or during development. I've been a part of that too here and there.
    Evan Reese / Principal and Industrial Designer with Ovyl
    Website: ovyl.io
  • S1monS1mon Member Posts: 1,220 PRO
    My biggest concern with the current development system is baking in things which should have been done differently. Bridging curve is a good example. Thankfully @ilya_baran was very open to fixing its shortcomings in a way which was backwards compatible. I fear that how splitting Béziers works in the sketcher is one of those things which should have been done a different way, and will be difficult to change course.

    I'm happy with the IR system, although it seems like there's a lot of work which could be done to clean out things which have been completed. The tagging of the IRs is also weird. There seems to have been a couple generations of how to tag IRs, without any path to consolidate the tags. It would be nice to have a more clear idea of which IRs are prioritized and which ones are clearly never going to happen.
  • Evan_ReeseEvan_Reese Member Posts: 1,603 PRO
    S1mon said:
    My biggest concern with the current development system is baking in things which should have been done differently.
    Yep, this is a bigger deal than moving too slow. There will always be increasing risk of this happening as the software becomes more complex and the edge-cases to accommodate multiply exponentially, but for the most part I think they've done better about this than I've seen other CAD packages do. I'm sure it helps to build one from scratch after 25+ years of experience with mature CAD systems. They've gotten a lot very right.
    Evan Reese / Principal and Industrial Designer with Ovyl
    Website: ovyl.io
  • S1monS1mon Member Posts: 1,220 PRO
    I found another minor improvement I'd like to see: When inserting control points in Béziers, allow midpoint inference.

  • Evan_ReeseEvan_Reese Member Posts: 1,603 PRO
    S1mon said:
    I found another minor improvement I'd like to see: When inserting control points in Béziers, allow midpoint inference.

    That's a good one. Maybe when that happens it could make the new segments equal.
    Evan Reese / Principal and Industrial Designer with Ovyl
    Website: ovyl.io
  • S1monS1mon Member Posts: 1,220 PRO
    edited August 2022
    For the past week or so I've been working on designing a handle for a hex t-driver. I've been using the new Béziers, and noticing that while they are nice in and of themselves, they are not playing as nice as I would like in the context of surfacing.

    1. I've tried a number of approaches to build what is essentially a G3 bridging curve with a single degree-6 Bézier at an arbitrary cross section to a couple of surfaces. I've been using intersection curves to drive the tangency and curvature of the spline. The spline will go over-defined at the slightest change to the input surfaces or section plane position. The C2 constraint and the pierce constraint both have a tendency to get screwed up. If I delete the pierce and C2 and reapply the same constraints, the sketch will solve just fine. It seems like the solver is not optimized for dealing with Béziers yet.
    2. The more I look at what Loft is doing, the more it makes me sad. Even with really nice curvature on the input curves and no edge constraints, Loft will rebuild the curves behind the scenes and the curvature graph will show lumpiness and complexity in the curvature that wasn't in the inputs. Substituting Fill surface will sometimes give much better results, but Fill also has weird tendencies to sag in between linear edges and guides.

  • S1monS1mon Member Posts: 1,220 PRO
    Here's an example of #2: 

    Lofting between two very similar Béziers (same degree, basically just scaled versions of each other), the curves are very smooth, but the curvature plot of the surface shows only C2 and lots of little segments (possibly rebuilt with degree 3 B-splines?).

    Here's a zoomed in portion. You can see the purple which is from the curves used to create the loft, and the blue, which is from the loft itself:
    If this is just an artifact of the curvature analysis, I would love to know that, and get that improved, but I suspect it's the way Parasolid is rebuilding curves.
Sign In or Register to comment.