Rhino 9 Feature : G2 continuous patches

Thanks, I’ll take that on board.

1 Like

I agree that yellow could be confusing.
Layer color may be the simplest choice.

3 Likes

Try with a transparent color, 35% gray (as a ghost) could be fine.

While you’re at it, please add a transparency slider to the selection color for Rhino too. I would prefer if selected objects could be less obstructive to the view.

1 Like

We’re currently doing the layer color for the shaded patch, and ChooseOneObject.HighlightColor for the control point lines, this is also used in previews for e.g. ArrayPolar etc.

Note that adding transparency to the selection color is possible already, at least from v7 upwards, maybe even in earlier versions.
Go to Tools > Advanced and change Rhino.Options.Appearance.SelectedObjectColor and add transparency there.

3 Likes

9.0.25112.12305, 2025-04-22

  • Running FillSrf first time should also bring the user to the selection phase (without needing for an additional click “Select constraints”), this would give a bit more consistency with the most of other Rhino commands.
  • FillSurf preview color should be different from selection color (yellow)
  • after changing the selection with “Select constraints” curve elements are still selected
  • after changing the selection with “Select constraints” the preview is not always shown
  • internal details works properly only if they are curves and set as “I” (Internal?)
  • it is not possible to use surface edges the same way, “I” as “internal”
  • it is not possible to use surface edges to give G1 or G2 information for an internal part of the resulting surface
  • moving an “I” internal curve while FillSrf is running and then doing Undo will create a double selection of that curve and make impossible removing them from the selection

Edit, about selection, for now I would totally UnselectAll at start, before “Select constraints” , and once that selection is completed, unselect every geometry used. See video.
If a user have a selection outside the screen, clicking “Select constraints” would add that geometry to the constraints.
Maybe it’s better to have “Select constraints” not accepting pre-selections? Not sure about this but currently it feels strange entering “Select constraints” with no selection and finishing/exiting with something selected…

5 Likes

Are you kidding me? And we have asked so many times for the ability to turn off selections for when moving large meshes and THIS has been right in front of us all these years? This is super nice, thank you! And PLEASE update the color selector for “Selected Objects” to include this in the GUI.

Having it hidden in the Advanced settings doesn’t help many people :slight_smile:
(Just putting it here in case anybody else finds this info)

3 Likes

Thanks @maje90 for your detailed video, it really helps to see users exploring the tool and explaining what works and does not work for them.

  1. The selection color will change in the next WIP version, expected on Tuesday/Wednesday this week.
  2. Seeing multiple buttons upon undo: this has been fixed and will also get into the next version
  3. G1/G2 for internal edges is an existing feature request that I will come to later
  4. Start with selection is also coming to the next version
  5. Jagged updates are also fixed in the next version
3 Likes

I have created a ticket for the color chooser to be updated here.

2 Likes

5 posts were split to a new topic: FillSrf: preserve edges of input surface

A post was merged into an existing topic: FillSrf: preserve edges of input surface

A post was merged into an existing topic: FillSrf: preserve edges of input surface

Not sure if it’s possible right now, at least I can’t get it to work:
When I select a surface edge as an internal constraint, I can’t set it as I.
Means I have to _dupedge before.
I think it should be possible to set an edge as I.

Yes, that will become possible together with higher continuity for internal edges. This is what is in the existing feature request you quoted.

A next example for a nice result:


CP_2025-05-12_FillSrf.3dm (1.5 MB)

The original black polysrf shall be replaced by a single srf without much effort.
I used the duplicated border of the original srf and some projected points for the internal constraints.

Why is the tolerance for the internal constraints max. 1?
I’d like to see if a looser tolerance could make a smoother result.
The model is large (~23000).

1 Like

Makes sense, I’ve made a ticket for that https://mcneel.myjetbrains.com/youtrack/issue/RH-87391

While that is not yet possible: a scaling by 0.01, FillSrf with boundary tolerance also divided by 100, but internal tolerance left unchanged, follwed by un-scaling by 100, could already help maybe?

Why didn’t I think of that? :melting_face:
This gives the expected result, great.
Scaling is good for an intermediate test, but I’d still prefer free access to the tolerances.
Or restricted by a bounding box factor or whatever.

1 Like

Yes, this will come when the ticket has been done.

ExampleX.3dm (545.5 KB)
This Was done with Xnurbs. The 6 sided hole. I found it to make a better match than the new fillsrf. just putting it out there. Thanks for the work you’ve done.—Mark

1 Like

RH-86849 is fixed in Rhino WIP

RH-87391 is fixed in Rhino WIP