Class ParStreamlines
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intConfigures how the library assigns UV coordinates.static final intConfigures how the library assigns UV coordinates.static final intConfigures how the library assigns UV coordinates.static final intConfigures how the library assigns UV coordinates.static final intPopulatesmesh.annotationsstatic final intDraws control pointsstatic final intPopulatesmesh.random_offsetsstatic final intPopulatesmesh.lengthsstatic final intEnables 4 indices per triangle -
Method Summary
Modifier and TypeMethodDescriptionstatic longnparsl_create_context(long config) static voidnparsl_destroy_context(long ctx) static longnparsl_mesh_from_curves_cubic(long context, long spines) Unsafe version of:mesh_from_curves_cubicstatic longnparsl_mesh_from_curves_quadratic(long context, long spines) Unsafe version of:mesh_from_curves_quadraticstatic longnparsl_mesh_from_lines(long ctx, long spines) Unsafe version of:mesh_from_linesstatic longnparsl_mesh_from_streamlines(long context, long advect, int first_tick, int num_ticks, long userdata) Unsafe version of:mesh_from_streamlinesstatic longparsl_create_context(ParSLConfig config) static voidparsl_destroy_context(long ctx) static @Nullable ParSLMeshparsl_mesh_from_curves_cubic(long context, ParSLSpineList spines) High-level function that tessellates a series of curves into triangles, where each spine is a series of chained cubic Bézier curves.static @Nullable ParSLMeshparsl_mesh_from_curves_quadratic(long context, ParSLSpineList spines) High-level function that tessellates a series of curves into triangles, where each spine is a series of chained quadratic Bézier curves.static @Nullable ParSLMeshparsl_mesh_from_lines(long ctx, ParSLSpineList spines) Low-level function that generates two triangles for each line segment.static @Nullable ParSLMeshparsl_mesh_from_streamlines(long context, ParSLAdvectionCallbackI advect, int first_tick, int num_ticks, long userdata) High-level function that can be used to visualize a vector field.
-
Field Details
-
PAR_U_MODE_NORMALIZED_DISTANCE
public static final int PAR_U_MODE_NORMALIZED_DISTANCEConfigures how the library assigns UV coordinates.Enum values:
PAR_U_MODE_NORMALIZED_DISTANCE- This is the default.PAR_U_MODE_DISTANCE- Non-normalized distance along the curve.PAR_U_MODE_SEGMENT_INDEX- Starts at zero for each curve, counts up.PAR_U_MODE_SEGMENT_FRACTION- 0.0, 1.0 / COUNT, 2.0 / COUNT, etc...
- See Also:
-
PAR_U_MODE_DISTANCE
public static final int PAR_U_MODE_DISTANCEConfigures how the library assigns UV coordinates.Enum values:
PAR_U_MODE_NORMALIZED_DISTANCE- This is the default.PAR_U_MODE_DISTANCE- Non-normalized distance along the curve.PAR_U_MODE_SEGMENT_INDEX- Starts at zero for each curve, counts up.PAR_U_MODE_SEGMENT_FRACTION- 0.0, 1.0 / COUNT, 2.0 / COUNT, etc...
- See Also:
-
PAR_U_MODE_SEGMENT_INDEX
public static final int PAR_U_MODE_SEGMENT_INDEXConfigures how the library assigns UV coordinates.Enum values:
PAR_U_MODE_NORMALIZED_DISTANCE- This is the default.PAR_U_MODE_DISTANCE- Non-normalized distance along the curve.PAR_U_MODE_SEGMENT_INDEX- Starts at zero for each curve, counts up.PAR_U_MODE_SEGMENT_FRACTION- 0.0, 1.0 / COUNT, 2.0 / COUNT, etc...
- See Also:
-
PAR_U_MODE_SEGMENT_FRACTION
public static final int PAR_U_MODE_SEGMENT_FRACTIONConfigures how the library assigns UV coordinates.Enum values:
PAR_U_MODE_NORMALIZED_DISTANCE- This is the default.PAR_U_MODE_DISTANCE- Non-normalized distance along the curve.PAR_U_MODE_SEGMENT_INDEX- Starts at zero for each curve, counts up.PAR_U_MODE_SEGMENT_FRACTION- 0.0, 1.0 / COUNT, 2.0 / COUNT, etc...
- See Also:
-
PARSL_FLAG_WIREFRAME
public static final int PARSL_FLAG_WIREFRAMEEnables 4 indices per triangle- See Also:
-
PARSL_FLAG_ANNOTATIONS
public static final int PARSL_FLAG_ANNOTATIONSPopulatesmesh.annotations- See Also:
-
PARSL_FLAG_SPINE_LENGTHS
public static final int PARSL_FLAG_SPINE_LENGTHSPopulatesmesh.lengths- See Also:
-
PARSL_FLAG_RANDOM_OFFSETS
public static final int PARSL_FLAG_RANDOM_OFFSETSPopulatesmesh.random_offsets- See Also:
-
PARSL_FLAG_CURVE_GUIPARSL_FLAG_DES
public static final int PARSL_FLAG_CURVE_GUIPARSL_FLAG_DESDraws control points- See Also:
-
-
Method Details
-
nparsl_create_context
public static long nparsl_create_context(long config) -
parsl_create_context
-
nparsl_destroy_context
public static void nparsl_destroy_context(long ctx) -
parsl_destroy_context
public static void parsl_destroy_context(long ctx) -
nparsl_mesh_from_lines
public static long nparsl_mesh_from_lines(long ctx, long spines) Unsafe version of:mesh_from_lines -
parsl_mesh_from_lines
Low-level function that generates two triangles for each line segment. -
nparsl_mesh_from_streamlines
public static long nparsl_mesh_from_streamlines(long context, long advect, int first_tick, int num_ticks, long userdata) Unsafe version of:mesh_from_streamlines -
parsl_mesh_from_streamlines
public static @Nullable ParSLMesh parsl_mesh_from_streamlines(long context, ParSLAdvectionCallbackI advect, int first_tick, int num_ticks, long userdata) High-level function that can be used to visualize a vector field. -
nparsl_mesh_from_curves_cubic
public static long nparsl_mesh_from_curves_cubic(long context, long spines) Unsafe version of:mesh_from_curves_cubic -
parsl_mesh_from_curves_cubic
High-level function that tessellates a series of curves into triangles, where each spine is a series of chained cubic Bézier curves.The first curve of each spine is defined by an endpoint, followed by two control points, followed by an endpoint. Every subsequent curve in the spine is defined by a single control point followed by an endpoint. Only one control point is required because the first control point is computed via reflection over the endpoint.
The number of vertices in each spine should be
4+(n-1)*2wherenis the number of piecewise curves.Each spine is equivalent to an SVG path that looks like
M C S S S. -
nparsl_mesh_from_curves_quadratic
public static long nparsl_mesh_from_curves_quadratic(long context, long spines) Unsafe version of:mesh_from_curves_quadratic -
parsl_mesh_from_curves_quadratic
public static @Nullable ParSLMesh parsl_mesh_from_curves_quadratic(long context, ParSLSpineList spines) High-level function that tessellates a series of curves into triangles, where each spine is a series of chained quadratic Bézier curves.The first curve of each spine is defined by an endpoint, followed by one control point, followed by an endpoint. Every subsequent curve in the spine is defined by a single control point followed by an endpoint.
The number of vertices in each spine should be
3+(n-1)*2wherenis the number of piecewise curves.Each spine is equivalent to an SVG path that looks like
M Q M Q M Q.
-