RFE Bezier resampled non-uniformly w/ Resample by Polygon Edge
2828 9 0- probiner
- Member
- 339 posts
- Joined: June 2013
- Online
- tachbek
- Member
- 43 posts
- Joined: Feb. 2017
- Offline
Maybe because of re-projecting points from polygonal approximation where you enabled preserve corners.
Resampling the curve based on Maximum Segment Length will rebuild the entire line into equal length segments except the last segment.
But:
Resample by Polygon Edge = Each edge of the polygon will be resampled independently.
And:
However, for NURBS or Bezier curves the resample SOP will use a polygonal approximation to calculate the length of the curve using the LOD parameter - though the final sample points will still lie on the original curve.
Resampling the curve based on Maximum Segment Length will rebuild the entire line into equal length segments except the last segment.
But:
Resample by Polygon Edge = Each edge of the polygon will be resampled independently.
And:
However, for NURBS or Bezier curves the resample SOP will use a polygonal approximation to calculate the length of the curve using the LOD parameter - though the final sample points will still lie on the original curve.
Edited by tachbek - May 31, 2022 16:07:31
- probiner
- Member
- 339 posts
- Joined: June 2013
- Online
tachbek
Maybe because of re-projecting points from polygonal approximation where you enabled preserve corners.
Resampling the curve based on Maximum Segment Length will rebuild the entire line into equal length segments except the last segment.
But:
Resample by Polygon Edge = Each edge of the polygon will be resampled independently.
And:
However, for NURBS or Bezier curves the resample SOP will use a polygonal approximation to calculate the length of the curve using the LOD parameter - though the final sample points will still lie on the original curve.
I'm not following what you're adressing, the request filed is to exactly have the points sampled based on a target segment length fashion BUT respect the control points and got do across them and place a sampled point ON them.
Right now the resampling by edge and a segment length seems to be done using unit uvs and not unitlen uvs. I've done my own VEX implementation with primuvconvert() and can get the expected behavior, the issue being primuvconvert() is a VERY costly function so I thought it's probably better to request having the SOP working as expected.
Cheers
Edited by probiner - June 1, 2022 06:32:36
- tachbek
- Member
- 43 posts
- Joined: Feb. 2017
- Offline
SOP working as expected. And this his limitation due performance reason. And this curve primitive approximation developers puts for reason (and reason you already discover by yourself too)
It's a rare case, where interpolated curves like bezier need to have untouched points (I guess), and without this, node works fine (with even point distribution).
But I agree, developers can create some checkbox for this option, but performance and ...practicability this are another questions.
Maybe someone need this. Depending on the purpose, you can use primuvconvert() solution, or just move some point into right position, or insert needed points
Update.
Yes, primuvconvert() is slower, even if precompute uv in one wrangle and sample in another (point) wrangle.
And this produce mach better result.
But primuvconvert() uv output is not ideal and need more refinement
It's a rare case, where interpolated curves like bezier need to have untouched points (I guess), and without this, node works fine (with even point distribution).
But I agree, developers can create some checkbox for this option, but performance and ...practicability this are another questions.
Maybe someone need this. Depending on the purpose, you can use primuvconvert() solution, or just move some point into right position, or insert needed points
Update.
Yes, primuvconvert() is slower, even if precompute uv in one wrangle and sample in another (point) wrangle.
And this produce mach better result.
But primuvconvert() uv output is not ideal and need more refinement
Edited by tachbek - June 3, 2022 12:28:38
- BabaJ
- Member
- 2038 posts
- Joined: Sept. 2015
- Offline
- tachbek
- Member
- 43 posts
- Joined: Feb. 2017
- Offline
- BabaJ
- Member
- 2038 posts
- Joined: Sept. 2015
- Offline
- tachbek
- Member
- 43 posts
- Joined: Feb. 2017
- Offline
BabaJThis is not my post
Because in your original post you're saying the problem is non-unifrm segments.
Turning off resample by polygon edge solves this.
And "RFE Bezier resampled non-uniformly w/ Resample by Polygon Edge", about achieve uniform point distribution when 'Resample by Polygon Edge' turn ON.
You misunderstand this post
Edited by tachbek - June 4, 2022 03:59:39
- Aizatulin
- Member
- 475 posts
- Joined: July 2005
- Offline
- antc
- Member
- 273 posts
- Joined: Nov. 2013
- Offline
BabaJ@BabJ I think the desire is to also have a point at the original knot locations (breakpoints in houdini speak), which is what you get with Resample by Polygon Edge. Turing it off does indeed create uniform segments, but there's no longer guaranteed to be points at the knot locations.
Because in your original post you're saying the problem is non-unifrm segments.
Turning off resample by polygon edge solves this.
Edited by antc - June 4, 2022 11:16:21
-
- Quick Links