by Tim C. Lueth, SG-Lib Toolbox: SolidGeometry 5.6 - Auxiliary function
Introduced first in SolidGeometry 3.9, Creation date: 2017-06-04, Last change: 2025-09-14
a=modN(n,k,[N])
n: | number | |
k: | divider | |
N: | Interval start |
a: | rest |
modN(1:6,3)
modN(1:6,3,2)
k=16:24 % startindices from 16 to 24 in a row list
k1=modN(k+1,numel(k),k(1)) % creates the lost if the following points23
This function, modN, is an auxiliary procedure for array manipulation. It is designed to return values within a specified interval rather than the default range provided by the standard modulus operation.
The function modN is defined to adjust the standard modulus operation. Instead of returning values between [0..k-1], it returns values within the interval [N..N+k-1]. This is achieved by the formula:
a = mod(n-N, k) + N;
Here's a step-by-step explanation:
N from n to shift the range of n to start from zero.k to get the remainder.N back to shift the result into the desired interval [N..N+k-1].Here are some examples to illustrate the function's behavior:
modN(1:6, 3): This will return values within the interval [1..3].modN(1:6, 3, 2): This will return values within the interval [2..4].k=16:24, the function modN(k+1, numel(k), k(1)) will create a list of points adjusted to the specified interval.This function is particularly useful in scenarios where a custom interval is needed for modulus operations, such as in certain classification tasks.
Algorithm explaination created using ChatGPT on 2025-08-18 23:22. (Please note: No guarantee for the correctness of this explanation)