Cleanup: use doxy sections, remove outdated comment
This commit is contained in:
		@@ -15,9 +15,9 @@
 | 
			
		||||
 | 
			
		||||
namespace blender::bke::curves {
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Utility structs.
 | 
			
		||||
 */
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Utility Structs
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Reference to a piecewise segment on a spline curve.
 | 
			
		||||
@@ -302,9 +302,9 @@ class IndexRangeCyclic {
 | 
			
		||||
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Utility functions.
 | 
			
		||||
 */
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Utility Functions
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Copy the provided point attribute values between all curves in the #curve_ranges index
 | 
			
		||||
 
 | 
			
		||||
@@ -11,11 +11,13 @@
 | 
			
		||||
 | 
			
		||||
namespace blender::realtime_compositor {
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 * Conversion Operation
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Conversion Operation
 | 
			
		||||
 *
 | 
			
		||||
 * A simple operation that converts a result from a certain type to another. See the derived
 | 
			
		||||
 * classes for more details. */
 | 
			
		||||
 * classes for more details.
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
class ConversionOperation : public SimpleOperation {
 | 
			
		||||
 public:
 | 
			
		||||
  using SimpleOperation::SimpleOperation;
 | 
			
		||||
@@ -37,13 +39,18 @@ class ConversionOperation : public SimpleOperation {
 | 
			
		||||
 | 
			
		||||
  /* Get the shader the will be used for conversion. */
 | 
			
		||||
  virtual GPUShader *get_conversion_shader() const = 0;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 * Convert Float To Vector Operation
 | 
			
		||||
  /** \} */
 | 
			
		||||
 | 
			
		||||
};  // namespace blender::realtime_compositorclassConversionOperation:publicSimpleOperation
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Float to Vector Operation
 | 
			
		||||
 *
 | 
			
		||||
 * Takes a float result and outputs a vector result. All three components of the output are filled
 | 
			
		||||
 * with the input float. */
 | 
			
		||||
 * with the input float.
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
class ConvertFloatToVectorOperation : public ConversionOperation {
 | 
			
		||||
 public:
 | 
			
		||||
  ConvertFloatToVectorOperation(Context &context);
 | 
			
		||||
@@ -53,11 +60,15 @@ class ConvertFloatToVectorOperation : public ConversionOperation {
 | 
			
		||||
  GPUShader *get_conversion_shader() const override;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 * Convert Float To Color Operation
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Float to Color Operation
 | 
			
		||||
 *
 | 
			
		||||
 * Takes a float result and outputs a color result. All three color channels of the output are
 | 
			
		||||
 * filled with the input float and the alpha channel is set to 1. */
 | 
			
		||||
 * filled with the input float and the alpha channel is set to 1.
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
class ConvertFloatToColorOperation : public ConversionOperation {
 | 
			
		||||
 public:
 | 
			
		||||
  ConvertFloatToColorOperation(Context &context);
 | 
			
		||||
@@ -67,11 +78,15 @@ class ConvertFloatToColorOperation : public ConversionOperation {
 | 
			
		||||
  GPUShader *get_conversion_shader() const override;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 * Convert Color To Float Operation
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Color to Float Operation
 | 
			
		||||
 *
 | 
			
		||||
 * Takes a color result and outputs a float result. The output is the average of the three color
 | 
			
		||||
 * channels, the alpha channel is ignored. */
 | 
			
		||||
 * channels, the alpha channel is ignored.
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
class ConvertColorToFloatOperation : public ConversionOperation {
 | 
			
		||||
 public:
 | 
			
		||||
  ConvertColorToFloatOperation(Context &context);
 | 
			
		||||
@@ -81,11 +96,15 @@ class ConvertColorToFloatOperation : public ConversionOperation {
 | 
			
		||||
  GPUShader *get_conversion_shader() const override;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 * Convert Color To Vector Operation
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Color to Vector Operation
 | 
			
		||||
 *
 | 
			
		||||
 * Takes a color result and outputs a vector result. The output is a copy of the three color
 | 
			
		||||
 * channels to the three vector components. */
 | 
			
		||||
 * channels to the three vector components.
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
class ConvertColorToVectorOperation : public ConversionOperation {
 | 
			
		||||
 public:
 | 
			
		||||
  ConvertColorToVectorOperation(Context &context);
 | 
			
		||||
@@ -95,11 +114,18 @@ class ConvertColorToVectorOperation : public ConversionOperation {
 | 
			
		||||
  GPUShader *get_conversion_shader() const override;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 * Convert Vector To Float Operation
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Vector to Float Operation
 | 
			
		||||
 *
 | 
			
		||||
 * Takes a vector result and outputs a float result. The output is the average of the three
 | 
			
		||||
 * components. */
 | 
			
		||||
 * components.
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 *
 | 
			
		||||
 * */
 | 
			
		||||
class ConvertVectorToFloatOperation : public ConversionOperation {
 | 
			
		||||
 public:
 | 
			
		||||
  ConvertVectorToFloatOperation(Context &context);
 | 
			
		||||
@@ -109,11 +135,15 @@ class ConvertVectorToFloatOperation : public ConversionOperation {
 | 
			
		||||
  GPUShader *get_conversion_shader() const override;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 * Convert Vector To Color Operation
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Vector to Color Operation
 | 
			
		||||
 *
 | 
			
		||||
 * Takes a vector result and outputs a color result. The output is a copy of the three vector
 | 
			
		||||
 * components to the three color channels with the alpha channel set to 1. */
 | 
			
		||||
 * components to the three color channels with the alpha channel set to 1.
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
class ConvertVectorToColorOperation : public ConversionOperation {
 | 
			
		||||
 public:
 | 
			
		||||
  ConvertVectorToColorOperation(Context &context);
 | 
			
		||||
@@ -123,4 +153,6 @@ class ConvertVectorToColorOperation : public ConversionOperation {
 | 
			
		||||
  GPUShader *get_conversion_shader() const override;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
}  // namespace blender::realtime_compositor
 | 
			
		||||
 
 | 
			
		||||
@@ -12,9 +12,9 @@
 | 
			
		||||
 | 
			
		||||
namespace blender::realtime_compositor {
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 *  Conversion Operation.
 | 
			
		||||
 */
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Conversion Operation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
void ConversionOperation::execute()
 | 
			
		||||
{
 | 
			
		||||
@@ -79,9 +79,11 @@ SimpleOperation *ConversionOperation::construct_if_needed(Context &context,
 | 
			
		||||
  return nullptr;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 *  Convert Float To Vector Operation.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Float to Vector Operation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
ConvertFloatToVectorOperation::ConvertFloatToVectorOperation(Context &context)
 | 
			
		||||
    : ConversionOperation(context)
 | 
			
		||||
@@ -102,9 +104,11 @@ GPUShader *ConvertFloatToVectorOperation::get_conversion_shader() const
 | 
			
		||||
  return shader_manager().get("compositor_convert_float_to_vector");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 *  Convert Float To Color Operation.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Float to Color Operation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
ConvertFloatToColorOperation::ConvertFloatToColorOperation(Context &context)
 | 
			
		||||
    : ConversionOperation(context)
 | 
			
		||||
@@ -127,9 +131,11 @@ GPUShader *ConvertFloatToColorOperation::get_conversion_shader() const
 | 
			
		||||
  return shader_manager().get("compositor_convert_float_to_color");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 *  Convert Color To Float Operation.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Color to Float Operation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
ConvertColorToFloatOperation::ConvertColorToFloatOperation(Context &context)
 | 
			
		||||
    : ConversionOperation(context)
 | 
			
		||||
@@ -151,9 +157,11 @@ GPUShader *ConvertColorToFloatOperation::get_conversion_shader() const
 | 
			
		||||
  return shader_manager().get("compositor_convert_color_to_float");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 *  Convert Color To Vector Operation.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Color to Vector Operation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
ConvertColorToVectorOperation::ConvertColorToVectorOperation(Context &context)
 | 
			
		||||
    : ConversionOperation(context)
 | 
			
		||||
@@ -175,9 +183,11 @@ GPUShader *ConvertColorToVectorOperation::get_conversion_shader() const
 | 
			
		||||
  return shader_manager().get("compositor_convert_color_to_vector");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 *  Convert Vector To Float Operation.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Vector to Float Operation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
ConvertVectorToFloatOperation::ConvertVectorToFloatOperation(Context &context)
 | 
			
		||||
    : ConversionOperation(context)
 | 
			
		||||
@@ -199,9 +209,11 @@ GPUShader *ConvertVectorToFloatOperation::get_conversion_shader() const
 | 
			
		||||
  return shader_manager().get("compositor_convert_vector_to_float");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------------------------------------
 | 
			
		||||
 *  Convert Vector To Color Operation.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert Vector to Color Operation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
ConvertVectorToColorOperation::ConvertVectorToColorOperation(Context &context)
 | 
			
		||||
    : ConversionOperation(context)
 | 
			
		||||
@@ -222,4 +234,6 @@ GPUShader *ConvertVectorToColorOperation::get_conversion_shader() const
 | 
			
		||||
  return shader_manager().get("compositor_convert_vector_to_color");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
}  // namespace blender::realtime_compositor
 | 
			
		||||
 
 | 
			
		||||
@@ -13,9 +13,9 @@
 | 
			
		||||
 | 
			
		||||
namespace blender::realtime_compositor {
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Texture Pool Key.
 | 
			
		||||
 */
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Texture Pool Key
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
TexturePoolKey::TexturePoolKey(int2 size, eGPUTextureFormat format) : size(size), format(format)
 | 
			
		||||
{
 | 
			
		||||
@@ -37,9 +37,11 @@ bool operator==(const TexturePoolKey &a, const TexturePoolKey &b)
 | 
			
		||||
  return a.size == b.size && a.format == b.format;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Texture Pool.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Texture Pool
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
GPUTexture *TexturePool::acquire(int2 size, eGPUTextureFormat format)
 | 
			
		||||
{
 | 
			
		||||
@@ -81,4 +83,6 @@ void TexturePool::reset()
 | 
			
		||||
  textures_.clear();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
}  // namespace blender::realtime_compositor
 | 
			
		||||
 
 | 
			
		||||
@@ -16,9 +16,9 @@
 | 
			
		||||
 | 
			
		||||
namespace blender::fn {
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Field Evaluation.
 | 
			
		||||
 */
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Field Evaluation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
struct FieldTreeInfo {
 | 
			
		||||
  /**
 | 
			
		||||
@@ -571,16 +571,20 @@ bool IndexFieldInput::is_equal_to(const fn::FieldNode &other) const
 | 
			
		||||
  return dynamic_cast<const IndexFieldInput *>(&other) != nullptr;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * FieldNode.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Fieldnode
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
/* Avoid generating the destructor in every translation unit. */
 | 
			
		||||
FieldNode::~FieldNode() = default;
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * FieldOperation.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Fieldoperation
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
FieldOperation::FieldOperation(std::shared_ptr<const MultiFunction> function,
 | 
			
		||||
                               Vector<GField> inputs)
 | 
			
		||||
@@ -653,9 +657,11 @@ FieldOperation::FieldOperation(const MultiFunction &function, Vector<GField> inp
 | 
			
		||||
  field_inputs_ = combine_field_inputs(inputs_);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * FieldInput.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Fieldinput
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
FieldInput::FieldInput(const CPPType &type, std::string debug_name)
 | 
			
		||||
    : FieldNode(FieldNodeType::Input), type_(&type), debug_name_(std::move(debug_name))
 | 
			
		||||
@@ -669,9 +675,11 @@ FieldInput::FieldInput(const CPPType &type, std::string debug_name)
 | 
			
		||||
/* Avoid generating the destructor in every translation unit. */
 | 
			
		||||
FieldInput::~FieldInput() = default;
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * FieldConstant.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Fieldconstant
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
FieldConstant::FieldConstant(const CPPType &type, const void *value)
 | 
			
		||||
    : FieldNode(FieldNodeType::Constant), type_(type)
 | 
			
		||||
@@ -703,9 +711,11 @@ GPointer FieldConstant::value() const
 | 
			
		||||
  return {type_, value_};
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * FieldEvaluator.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Fieldevaluator
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
static IndexMask index_mask_from_selection(const IndexMask full_mask,
 | 
			
		||||
                                           const VArray<bool> &selection,
 | 
			
		||||
@@ -800,4 +810,6 @@ IndexMask FieldEvaluator::get_evaluated_selection_as_mask()
 | 
			
		||||
  return selection_mask_;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
}  // namespace blender::fn
 | 
			
		||||
 
 | 
			
		||||
@@ -41,9 +41,9 @@ typedef enum CurveTypeMask {
 | 
			
		||||
 * Create a cyclical iterator for all control points within the interval [start_point, end_point]
 | 
			
		||||
 * including any control point at the start or end point.
 | 
			
		||||
 *
 | 
			
		||||
 * \param start_point Point on the curve that define the starting point of the interval.
 | 
			
		||||
 * \param end_point Point on the curve that define the end point of the interval (included).
 | 
			
		||||
 * \param points IndexRange for the curve points.
 | 
			
		||||
 * \param start_point: Point on the curve that define the starting point of the interval.
 | 
			
		||||
 * \param end_point: Point on the curve that define the end point of the interval (included).
 | 
			
		||||
 * \param points: #IndexRange for the curve points.
 | 
			
		||||
 */
 | 
			
		||||
static bke::curves::IndexRangeCyclic get_range_between_endpoints(
 | 
			
		||||
    const bke::curves::CurvePoint start_point,
 | 
			
		||||
@@ -359,9 +359,11 @@ static void compute_trim_result_offsets(const bke::CurvesGeometry &src_curves,
 | 
			
		||||
  bke::curves::accumulate_counts_to_offsets(dst_curve_offsets);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Utility functions.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Utility Functions
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
static void fill_bezier_data(bke::CurvesGeometry &dst_curves, const IndexMask selection)
 | 
			
		||||
{
 | 
			
		||||
@@ -415,9 +417,11 @@ static int64_t copy_point_data_between_endpoints(const Span<T> src_data,
 | 
			
		||||
  return dst_index;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Sampling utilities.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Sampling Utilities
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
template<typename T>
 | 
			
		||||
static T interpolate_catmull_rom(const Span<T> src_data,
 | 
			
		||||
@@ -459,9 +463,11 @@ static bke::curves::bezier::Insertion knot_insert_bezier(
 | 
			
		||||
                                     insertion_point.parameter);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Sample single point.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Sample Single Point
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
template<typename T>
 | 
			
		||||
static void sample_linear(const Span<T> src_data,
 | 
			
		||||
@@ -533,9 +539,11 @@ static void sample_bezier(const Span<float3> src_positions,
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Sample curve interval (trim).
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Sample Curve Interval (Trim)
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Sample source curve data in the interval defined by the points [start_point, end_point].
 | 
			
		||||
@@ -758,9 +766,11 @@ static void sample_interval_bezier(const Span<float3> src_positions,
 | 
			
		||||
  BLI_assert(dst_index == dst_range.one_after_last());
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Convert to point curves.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Convert to Point Curves
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
static void convert_point_polygonal_curves(
 | 
			
		||||
    const bke::CurvesGeometry &src_curves,
 | 
			
		||||
@@ -924,9 +934,11 @@ static void convert_point_evaluated_curves(
 | 
			
		||||
  fill_nurbs_data(dst_curves, selection);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* --------------------------------------------------------------------
 | 
			
		||||
 * Trim curves.
 | 
			
		||||
 */
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
/* -------------------------------------------------------------------- */
 | 
			
		||||
/** \name Trim Curves
 | 
			
		||||
 * \{ */
 | 
			
		||||
 | 
			
		||||
static void trim_attribute_linear(const bke::CurvesGeometry &src_curves,
 | 
			
		||||
                                  bke::CurvesGeometry &dst_curves,
 | 
			
		||||
@@ -1282,4 +1294,6 @@ bke::CurvesGeometry trim_curves(const bke::CurvesGeometry &src_curves,
 | 
			
		||||
  return dst_curves;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** \} */
 | 
			
		||||
 | 
			
		||||
}  // namespace blender::geometry
 | 
			
		||||
 
 | 
			
		||||
@@ -3624,8 +3624,6 @@ static void rna_def_space_image_uv(BlenderRNA *brna)
 | 
			
		||||
  RNA_def_property_ui_text(prop, "UV Opacity", "Opacity of UV overlays");
 | 
			
		||||
  RNA_def_property_update(prop, NC_SPACE | ND_SPACE_IMAGE, NULL);
 | 
			
		||||
 | 
			
		||||
  /* TODO: move edge and face drawing options here from `G.f`. */
 | 
			
		||||
 | 
			
		||||
  prop = RNA_def_property(srna, "pixel_round_mode", PROP_ENUM, PROP_NONE);
 | 
			
		||||
  RNA_def_property_enum_items(prop, pixel_round_mode_items);
 | 
			
		||||
  RNA_def_property_ui_text(prop, "Round to Pixels", "Round UVs to pixels while editing");
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user