UsdGeomCurves Algorithms

Utility functions to create geometric Curve descriptions.

UsdGeomBasisCurves prims can represent multiple distinct, potentially disconnected curves. All curves within the prim must respect the same basis and wrap values. For example, one prim could contain 1 million non-periodic Bezier curves, but it cannot contain a mix of Bezier & bSpline curves, nor can it contain a mix of periodic, non-periodic, and pinned curves.

Linear curves are also represented by UsdGeomBasisCurves; in this case the type attribute is “linear” and the basis attribute can be ignored.

Normals are another a special case for UsdGeomBasisCurves; authoring normals will result in oriented ribbons rather than smooth tubes.

Functions

pxr::UsdGeomBasisCurves omni::connect::core::defineCubicBasisCurves(pxr::UsdPrim parent, const std::string &name, const pxr::VtIntArray &curveVertexCounts, const pxr::VtVec3fArray &points, const pxr::TfToken &basis=pxr::UsdGeomTokens->bezier, const pxr::TfToken &wrap=pxr::UsdGeomTokens->nonperiodic, carb::cpp::optional< const FloatPrimvarData > widths=carb::cpp::nullopt, carb::cpp::optional< const Vec3fPrimvarData > normals=carb::cpp::nullopt, carb::cpp::optional< const Vec3fPrimvarData > displayColor=carb::cpp::nullopt, carb::cpp::optional< const FloatPrimvarData > displayOpacity=carb::cpp::nullopt)

Defines a batched Cubic UsdGeomBasisCurves prim on the stage.

pxr::UsdGeomBasisCurves omni::connect::core::defineCubicBasisCurves(pxr::UsdStagePtr stage, const pxr::SdfPath &path, const pxr::VtIntArray &curveVertexCounts, const pxr::VtVec3fArray &points, const pxr::TfToken &basis=pxr::UsdGeomTokens->bezier, const pxr::TfToken &wrap=pxr::UsdGeomTokens->nonperiodic, carb::cpp::optional< const FloatPrimvarData > widths=carb::cpp::nullopt, carb::cpp::optional< const Vec3fPrimvarData > normals=carb::cpp::nullopt, carb::cpp::optional< const Vec3fPrimvarData > displayColor=carb::cpp::nullopt, carb::cpp::optional< const FloatPrimvarData > displayOpacity=carb::cpp::nullopt)

Defines a batched Cubic UsdGeomBasisCurves prim on the stage.

pxr::UsdGeomBasisCurves omni::connect::core::defineLinearBasisCurves(pxr::UsdPrim parent, const std::string &name, const pxr::VtIntArray &curveVertexCounts, const pxr::VtVec3fArray &points, const pxr::TfToken &wrap=pxr::UsdGeomTokens->nonperiodic, carb::cpp::optional< const FloatPrimvarData > widths=carb::cpp::nullopt, carb::cpp::optional< const Vec3fPrimvarData > normals=carb::cpp::nullopt, carb::cpp::optional< const Vec3fPrimvarData > displayColor=carb::cpp::nullopt, carb::cpp::optional< const FloatPrimvarData > displayOpacity=carb::cpp::nullopt)

Defines a batched Linear UsdGeomBasisCurves prim on the stage.

pxr::UsdGeomBasisCurves omni::connect::core::defineLinearBasisCurves(pxr::UsdStagePtr stage, const pxr::SdfPath &path, const pxr::VtIntArray &curveVertexCounts, const pxr::VtVec3fArray &points, const pxr::TfToken &wrap=pxr::UsdGeomTokens->nonperiodic, carb::cpp::optional< const FloatPrimvarData > widths=carb::cpp::nullopt, carb::cpp::optional< const Vec3fPrimvarData > normals=carb::cpp::nullopt, carb::cpp::optional< const Vec3fPrimvarData > displayColor=carb::cpp::nullopt, carb::cpp::optional< const FloatPrimvarData > displayOpacity=carb::cpp::nullopt)

Defines a batched Linear UsdGeomBasisCurves prim on the stage.