Add toroidal wrap function
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 35/100
Piste de recherche
Commencez par localiser les points d’entrée mathématiques existants de la bibliothèque principale de Processing ainsi que toute logique de wrap associée. Définissez la fonction de wrap toroïdale décrite dans l’issue, puis ajoutez ou mettez à jour la couverture de tests pour les valeurs inférieures à zéro, les valeurs égales ou supérieures au maximum et les valeurs déjà comprises dans la plage.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Relevant sub-area for this feature?
Math
Feature details
Feature description
In many programs a value starts again at zero if it gets larger than a max value or appears at max value when it goes below zero. Provide a function that does the wrapping as a single function.
/**
* Wraps a value at 0 and max to constrain value between zero and max.
* @param value The value to wrap
* @param max The maximum value (excluded)
* @return The toroidally wrapped value
float wrap(float value, float max) {
if (value < 0) {
return value + max;
} else if (value >= max) {
return value - max;
}
return value;
}
Benefits
This would reduce code sizes and make these toroidal worlds easier to understand.
Would you like to help implement this feature?
Yes, I’d like to help with this
- Langage dominant
- Java
- Étoiles
- 497
- Forks
- 183
- Merge moyen
- 4 h 39 min
- PR mergées (30 j)
- 3
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de processing/processing4
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 64/100
processing/processing4#1554 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
processing/processing4#1515 · 1 réaction ·
-
bug
Difficulté 3/5 1-2 jours Accessibilité débutants 55/100
processing/processing4#1573 ·
-
startup error Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
processing/processing4#1569 · 7 commentaires ·
-
Binaries under bin directory lack executable permissions for the snap and .deb packages for Linux Ouvertebug
processing/processing4#1567 · 3 commentaires · 1 réaction · 1 personne assignée ·
Toutes les issues de processing/processing4
Issues similaires
-
executions.Query — startDate and timeRange filters are sent with inverted comparison operators Ouvertearea/plugin
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
kestra-io/plugin-kestra#190 ·
-
litertlm-android AAR ships no consumer ProGuard rules → "mid == null" SIGABRT in minified apps Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
google-ai-edge/LiteRT-LM#3739 ·
-
Add canonical URLs and a sitemap Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
integra-team-red/meet-map#249 ·
-
[Studio][Bug] Cancelled create-user dialog keeps the password and admin switch for the next attempt Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
apache/rocketmq-dashboard#5064 ·
-
Consent portal: creating a duplicate Purpose shows a generic error instead of "already exists" Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
wso2/dpdp-accelerator#287 ·