Go to the source code of this file.
|
GU_API void | GUbatchBuildBridges (GU_Detail *gdp, GU_PolyBridge **bridges, int num_bridges, const GA_Offset *src_rep_vtxs=nullptr, const GA_Offset *dst_rep_vtxs=nullptr, GA_PrimitiveGroup *mesh_prims=nullptr, GA_OffsetArray *user_link_grp=nullptr, GA_OffsetArray *auto_link_grp=nullptr, GA_OffsetArray *boundary_link_grp=nullptr, GA_OffsetArray *src_chain_grp=nullptr, GA_OffsetArray *dst_chain_grp=nullptr, int num_twists=0, bool wrangle_pt_attribs=true, bool wrangle_prim_attribs=true, bool wrangle_vtx_attribs=true, GU_PolyBridge::TextureMode uv_style=GU_PolyBridge::INTERPOLATE, GU_PolyBridge::TextureScaling uv_scaling=GU_PolyBridge::FIT_UNIT_SQUARE) |
|
GU_API UT_Vector3 | guRMFSlideFrame (UT_Vector3 x0, UT_Vector3 t0, UT_Vector3 n0, UT_Vector3 x1, UT_Vector3 t1) |
|
GU_API void GUbatchBuildBridges |
( |
GU_Detail * |
gdp, |
|
|
GU_PolyBridge ** |
bridges, |
|
|
int |
num_bridges, |
|
|
const GA_Offset * |
src_rep_vtxs = nullptr , |
|
|
const GA_Offset * |
dst_rep_vtxs = nullptr , |
|
|
GA_PrimitiveGroup * |
mesh_prims = nullptr , |
|
|
GA_OffsetArray * |
user_link_grp = nullptr , |
|
|
GA_OffsetArray * |
auto_link_grp = nullptr , |
|
|
GA_OffsetArray * |
boundary_link_grp = nullptr , |
|
|
GA_OffsetArray * |
src_chain_grp = nullptr , |
|
|
GA_OffsetArray * |
dst_chain_grp = nullptr , |
|
|
int |
num_twists = 0 , |
|
|
bool |
wrangle_pt_attribs = true , |
|
|
bool |
wrangle_prim_attribs = true , |
|
|
bool |
wrangle_vtx_attribs = true , |
|
|
GU_PolyBridge::TextureMode |
uv_style = GU_PolyBridge::INTERPOLATE , |
|
|
GU_PolyBridge::TextureScaling |
uv_scaling = GU_PolyBridge::FIT_UNIT_SQUARE |
|
) |
| |
This is a very useful tool to find the Minimum Rotation Frame for a movement from x0 to x1 along a curve with tangent and normal t0 and n0 at x0 and tangent t1 and x1. It is based on the double-reflection method of Wang, Juttler, Zheng, and Liu described in a paper titled "Computation of Rotation Minimizing Frames", from ACM Transactions on Graphics 2008.