Closed roquo closed 1 year ago
Rather than trying to use patches to compute the limit positions for refined vertices, you may be able to accomplish what you want with the Far::PrimvarRefiner.
In addition to methods to interpolate values for successive refined levels, it also has Limit() methods to snap the values from the last level of refinement to the limit surface. The Far tutorial 2.3 illustrates use of the Limit() method in computing limit positions and normals for refined vertices (one of three ways this tutorial computes normals).
Trying to use patches for this process is possible but awkward for a couple of reasons. I can provide more details on that later if the PrimvarRefiner::Limit() methods don't meet your needs.
Thanks! I did not know that I could do this with the PrimvarRefiner. It works like expected
With the new Bfr or with using the Far::PatchTable it is possible to evaluate positions on the limit surface depending on u and v parameters, for example from tutorial 5.1:
In this example, arbitrary positions are evaluated.
My goal is to evaluate positions based on the vertices in the mesh (maybe of any level) like this:
Is something like this possible? So my end goal is to evaluate the limit position of any vertex. My idea was somehow to get the corresponding u and v value but I am unsure how to do this. For level 0 I could imagine to find out the 4 values {(0,0), (0,1), (1,1), (1,0)} but I do not know how to do this for the sublevels.