Skip to content
Snippets Groups Projects
  1. Nov 08, 2022
  2. Nov 07, 2022
  3. Nov 03, 2022
  4. Nov 01, 2022
  5. Oct 31, 2022
    • Mark OLESEN's avatar
      ENH: expose IntRange {begin,end}_value() methods · 2202995f
      Mark OLESEN authored
      - end_value() corresponds to the infrequently used after() method, but
        with naming that corresponds better to iterator naming conventions.
      
        Eg,
      
           List<Type> list = ...;
           labelRange range = ...;
      
           std::transform
           (
               (list.data() + range.begin_value()),
               (list.data() + range.end_value()),
      
               outIter,
               op
           );
      
      - promote min()/max() methods from labelRange to IntRange base class
      
      STYLE: change timeSelector from "is-a" to "has-a" scalarRanges.
      2202995f
    • Mark OLESEN's avatar
      ENH: single/double value reset method for MinMax · 21f037e3
      Mark OLESEN authored
      - resets min/max to be identical to the specified value,
        which can be more convenient (and slightly more efficient) than doing
        a full reset followed by add()
      
      - additional MinMax intersects() query, which works like overlaps()
        but with exclusive checks at the ends
      
      - provide MinMax::operator&=() to replace (unused) intersect() method
      
      ENH: single/double value reset method for boundBox
      
      - boundBox::operator&=() to replace (rarely used) intersect() method.
        Deprecate boundBox::intersect() to avoid confusion with various
        intersects() method
      
      COMP: provide triangleFwd.H
      21f037e3
    • Mark OLESEN's avatar
      ENH: supplementary vector comparison methods · c9730666
      Mark OLESEN authored
      - background: for some application it can be useful to have fully
        sorted points. i.e., sorted by x, followed by y, followed by z.
      
        The default VectorSpace 'operator<' compares *all*
        components. This is seen by the following comparisons
      
        1.  a = (-2.2 -3.3 -4.4)
            b = (-1.1 -2.2 3.3)
      
            (a < b) : True
            Each 'a' component is less than each 'b' component
      
        2.  a = (-2.2 -3.3 -4.4)
            b = (-2.2 3.3 4.4)
      
            (a < b) : False
            The a.x() is not less than b.x()
      
        The static definitions 'less_xyz', 'less_yzx', 'less_zxy'
        instead use comparison of the next components as tie breakers
        (like a lexicographic sort).
        - same type of definition that Pair and Tuple2 use.
      
            a = (-2.2 -3.3 -4.4)
            b = (-2.2 3.3 4.4)
      
            vector::less_xyz(a, b) : True
            The a.x() == b.x(), but a.y() < b.y()
      
         They can be used directly as comparators:
      
            pointField points = ...;
      
            std::sort(points.begin(), points.end(), vector::less_zxy...
      c9730666
    • Mark OLESEN's avatar
      ENH: bounding sphere calculation for PrimitivePatch face · 37179584
      Mark OLESEN authored
      - useful when a characteristic per-face search dimension is required.
        With PrimitivePatch we are certain to have consistent evaluations
        of the face centre.
      
      STYLE: tag PrimitivePatch compatibility headers as such
      37179584
    • Mark OLESEN's avatar
      ENH: component/element access for zero/one return themselves · 7a43cac5
      Mark OLESEN authored
      STYLE: more consistent access for uniform list/fields
      7a43cac5
    • Mark OLESEN's avatar
      ENH: support construction of pointIndexHit from pointHit · 94338989
      Mark OLESEN authored
      STYLE: combine templated/non-templated headers (reduced clutter)
      
      STYLE: use hitPoint(const point&) combined setter
      
      - same as setHit() + setPoint(const point&)
      
      ENH: expose and use labelOctBits::pack method for addressing
      94338989
    • Mark OLESEN's avatar
      STYLE: expand use of ListLoop macros (#2624) · 454f7960
      Mark OLESEN authored
      - the old List_FOR_ALL macro only remained in use in relatively few
        places. Replace with the expanded equivalent and move the looping
        parameter out of the macro and give an explicit name (eg, loopLen)
        which simplifies the addition of any loop pragmas in the various
        TFOR_ALL... macros (for example).
      454f7960