[WISH] Better Reflect on rotated SUBD objects

Two issues:

1.) SUBD reflect doesn’t work on rotated / angled parts without changing cplane.

2.) It’s very difficult trying to work on a symmetrical part who’s position you need to adjust because you lose symmetry when the object rotates away from reflect plane.

In this example I need to edit the part with symmetry in the following way, however there’s no way to define a reflection plane like this (unless I’m missing something?).

And it would be useful to select a plane object as the reflection plane and allow it to maintain REFLECT if you rotate both objects (SUBD + reflect plane).

cplane

Changing cplanes is powerful. Get used to it.
Good practices: remember the cplane as _NamedCplane.

Reflect - Plane

yes i agree that the dialog for setting the reflection-plane is very / to limited. It should be the same as for mirror.
..and both should consistently use a Planes name:
either Top,Front,Right or XY, XZ, YZ.
(see this topic)

i think this is the aspect that really would profit from some improved “how to set reflect-plane” options.

_MPlane

(just to note:) Mobile Plane, _MPlane allows a Cplane to be attached and interactively follow a Object

  • it will not help in your case -
  • , as _MPlane and _reflect can 't be combined. And _MPlane can also not be stored as _namedCPlane.

Reflect - Plane follows

i see the following behaviour here (Mac, Version 8 (8.27.26019.16022, 2026-01-19))
Assigning _reflect with “Y” option, reflection plane is fixed/static.
Assigning _reflect with a custom _cplane and 2 points, the plane follows if i move / rotate the object.
and… this is also described in the help:

  • The reflection plane set by XAxis or YAxis options does not move with the object.
  • The reflection plane set by picking two points moves with the object.

… my 2 cents - kind regards - tom

2 Likes

Even using Cplane it’s kinda confusing / limited as the reflect options only allow X or Y. So in this example if I use AutoCplane my intuition is to draw one of the first two planes, but only the 3rd (orthogonal) plane works.

If those two points were expanded to 3 so you could define an angled plane it would probably achieve the goal. Either this or linking symmetry to a mobile plane or a plane object.

Side note: At least with Rhino you can always create a solution & this is what I ended up doing. Using GH isn’t actually that bad. Would still be nice to have expanded Reflect options.

Hi @ftzuk ,

@Tom_P 's answers are exactly on point here. Especially the distinction between the XAxis and YAxis options that create fixed planes, and the 2-point plane selection that creates a plane that follows the object.

I’m tracking the “angled” plane and other Reflect plane features in our bug tracking system:

RH-65521 SubD Symmetry: Make reflection plane editable after Reflect
RH-92178 Reflect SubD: Plane selection is too limited

2 Likes

=> especially - make plane selection / plane related command ) mirror, cplane, IP, remapCplane) consistent regarding the plane-getting / handling.
thanks

1 Like

That sounds like a bigger project than just changing Reflect. I’ll ask around to see what we can do.

1 Like

sorry for that.
;-D

maybe already outlining / commenting / connecting / referencing the relationship to other commands that handle “plane-Getting” is a first step.
i would love to see some kind of polishing, baking consistency (getting rid of Inconsistency), not breaking users expectations - would be a nice topic for V10. - looks like it is to late for V9…
so there is even a much bigger project: (the content is not fully qualified …)

the big picture - no place for new functions - only clean up / fine tuining discipline ;-(

V10 – gold needs love and to be polished
├─ Bugs / core
│  ├─ intersections
│  └─ filletEdge
│  └─ ...
│
├─ Inconsistencies (Get)
│  ├─ Plane Selection
│  │  ├─ _reflect (<------ your job @pierrec)
│  │  ├─ _cplane
│  │  ├─ _mirror
│  │  ├─ _ip
│  │  └─ remapCPlane
│  │
│  ├─ Edge Loops
│  │  ├─ bridge vs. blendSurface
│  │  └─ …
│  │
│  └─ Sub-selection
│     ├─ SubD vs. Mesh vs. NURBS
│     └─ Copy and layers
│
└─ Inconsistencies (Panels / Command Structure)
   ├─ Changing layers while a panel is active
   ├─ Command options that should remain accessible
   │  until the command is finished
   └─ …