Utils
Fields
|
|
|
Functions
bool |
|
bool |
|
bool |
|
bool |
|
bool |
|
bool |
Type Documentation
Function Documentation
-
bool SC::Store::Utils::CreateEllipticalArc(TessellationConfig const &config, float x_radius, float y_radius, float x_axis_rotation_radians, bool large_arc_flag, bool sweep_flag, bool invert_y, float begin_x_pos, float begin_y_pos, float end_x_pos, float end_y_pos, std::vector<Point> &out_points)
Generates the points for the path along an elliptical arc. Ignores z-coordinates. Generated z-coordinates are set to zero. The arguments and behavior are that of SVG elliptical arcs: https://www.w3.org/TR/SVG/paths.html#PathDataEllipticalArcCommands
- Parameters
config – Configures tessellation.
x_radius – The radius of the ellipse along the x-axis
y_radius – The radius of the ellipse along the y-axis
x_axis_rotation_radians – Rotates the generated ellipse along the x-axis by this many radians.
large_arc_flag – Controls whether or not the generated arc is generated as a large arc.
sweep_flag – If true, the generated arc is swept in the positive angle direction. Otherwise it is swept in the negative direction.
invert_y – Denotes whether or not the Y-axis is inverted.
begin_x_pos – The x-coordinate of the arc’s begin position
begin_y_pos – The y-coordinate of the arc’s begin position
end_x_pos – The x-coordinate of the arc’s end position
end_y_pos – The y-coordinate of the arc’s end position
out_points – Where the generate arc’s points get returned.
- Returns
Returns true if the operation succeeded. Otherwise it returns false.
-
bool SC::Store::Utils::CreateThickLine(TessellationConfig const &config, LineStroke const &stroke, std::vector<Point> const &path, std::vector<Point> &out_points, std::vector<uint32_t> &out_triangle_indices)
Generates the points and triangles for a thick line. Ignores z-coordinates. Generated z-coordinates are set to zero.
- Parameters
config – Configures tessellation.
stroke – Configures stroke properties of the generated thick line.
path – The path used to define the spine of the thick line.
out_points – Generated points are returned here.
out_triangle_indices – Generated triangle indices are returned here.
- Returns
Returns true if the operation succeeded. Otherwise it returns false.
-
bool SC::Store::Utils::TriangulateFace(SC::Store::Point const *points, int const *face_list, size_t face_list_count, SC::Store::Point const &normal, std::vector<SC::Store::Point> &out_points)
Triangulates a supplied polygonal face.
- Parameters
points – The points used by the supplied face list for specifying face vertices.
face_list – A list of indices that refer to the supplied points. These indices denote the face to triangulate. An unclosed face list loop will automatically be closed by the triangulator.
face_list_count – The number of indices used in the supplied face list.
normal – The normal of the face to triangulate.
out_points – The vertices of the generated triangles get emitted here.
- Returns
Returns true if successful. Returns false otherwise.
-
bool SC::Store::Utils::CreateHatchingPattern(Model &model, std::vector<ClipRegion> const &localSpaceClipRegions, std::vector<HatchingStyle> const &hatchingStyles, Matrix3d const &worldMatrix, MaterialKey material, bool visibility, InstanceKey &instanceKey)
Creates a hatching zone.
- Parameters
model – (in) SC model file to generate hatching into.
localSpaceClipRegions – (in) hatching limits in local space.
hatchingStyles – (in) defines hatching style (orientation, gap between lines).
worldMatrix – (in) world space matrix (will be applied on the localSpaceClipRegions).
material – (in) line material to use.
visibility – (in) tells if hatching will be visible or not.
instanceKey – (out) stream cache instance key of the resulting hatching.
- Returns
true if all went right, false otherwise.
-
bool SC::Store::Utils::CreateTexturedQuad(Model &model, ImageKey textureKey, float xPos, float yPos, float width, float height, Matrix3d const &worldMatrix, bool visibility, InstanceKey &instanceKey)
Creates a textured quad.
- Parameters
model – (in) SC model file to generate quad into.
textureKey – (in) SC key of the texture
xPos – (in) left local position of the quad
yPos – (in) bottom local position of the quad
width – (in) width of the quad
height – (in) height of the quad
worldMatrix – (in) world space matrix
visibility – (in) tells if the quad will be visible or not.
instanceKey – (out) stream cache instance key of the resulting quad.
- Returns
true if all went right, false otherwise.
-
bool SC::Store::Utils::CreatePointMeshes(Model &model, Point const *points, RGBA32 const *rgba32s, size_t count, MeshKeys &mesh_keys)
Creates point meshes for a set of points.
- Parameters
model – (in) SC model file to generate point meshes into.
points – (in) Points to process
rgba32s – (in) Colors to process maybe nullptr. If provided must be per-point.
count – (in) Number of points to process
mesh_keys – (out) Resulting mesh keys.
- Returns
true if all went right, false otherwise.