Class that stores endpoints of a y range for each x value within a specified range and step size.
More...
|
| | XYRangeData ()=default |
| | XYRangeData (const ValueT &xmin, const ValueT &xmax, const Index &step=1) |
| | Constructor that sets the x range to span a given interval with a specific step size. This initializes all y ranges as empty.
|
| void | expandYRange (const ValueT &x, const ValueT &ymin, const ValueT &ymax) |
| | Expands the y range for a given x value by updating the minimum and maximum y values if the new ones extend the current range.
|
| void | expandYMin (const ValueT &x, const ValueT &ymin) |
| | Sets the minimum y value for a given x value, if the provided ymin is smaller than the current value.
|
| void | expandYMax (const ValueT &x, const ValueT &ymax) |
| | Sets the maximum y value for a given x value, if the provided ymax is larger than the current value.
|
| void | expandYRange (const ValueT &x, const ValueT &y) |
| | Expands the y range for a given x by adjusting ymin or ymax if the given y is smaller or larger.
|
| void | setYMin (const ValueT &x, const ValueT &ymin) |
| | Set the minimum y value for a given x value, even if it is larger than the current value.
|
| void | setYMax (const ValueT &x, const ValueT &ymax) |
| | Set the maximum y value for a given x value, even if it is smaller than the current value.
|
| void | clearYRange (const ValueT &x) |
| | Clears the y range for a given x value, setting it to an empty interval.
|
| void | clear () |
| | Clears the data container.
|
| void | reset (const ValueT &xmin, const ValueT &xmax, const Index &step=1) |
| | Resets the x range to span a given interval with a specific step size. This initializes all y ranges as empty.
|
| Index | step () const |
| | Retrieves the step size used for the x values.
|
| Index | size () const |
| | Returns the number of x points in the current range.
|
| ValueT | start () const |
| | Retrieves the starting x value in the range.
|
| ValueT | end () const |
| | Retrieves the ending x value in the range.
|
| ValueT | getX (const Index &i) const |
| | Converts an index to its corresponding x value.
|
| ValueT | getYMin (const Index &i) const |
| | Gets the minimum y value for a given index.
|
| ValueT | getYMax (const Index &i) const |
| | Gets the maximum y value for a given index.
|
| ValueT | getYMin (const ValueT &x) const |
| | Gets the minimum y value for a given x value.
|
| ValueT | getYMax (const ValueT &x) const |
| | Gets the maximum y value for a given x value.
|
| void | XYData (ValueT &x, ValueT &ymin, ValueT &ymax, const Index &i) const |
| | Retrieves the x, ymin, and ymax values for a given index.
|
| bool | isEmpty () const |
| | Returns true if the container has no x values or if all y ranges are empty.
|
| void | merge (const XYRangeData &xydata) |
| | Merges another XYRangeData into the current instance by combining y ranges over the overlapping x range.
|
| void | trim () |
| | Trims the x range by removing empty or invalid y ranges from the beginning and end. Truncates the range if all values are invalid.
|
template<typename GridType, typename Derived, typename InterruptType = util::NullInterrupter>
class openvdb::v12_1::tools::ConvexVoxelizer< GridType, Derived, InterruptType >::XYRangeData
Class that stores endpoints of a y range for each x value within a specified range and step size.
This class tracks y ranges (defined by ymin and ymax) for each x value over a defined interval, using a configurable step size. It allows updating, expanding, and resetting the y ranges, as well as merging data from other instances and trimming invalid entries.