Table des matières
Implémentation SVG
Génération de nombres aléatoires
Génération HTML rationalisée
Interactivité de clic pour régénérer
Esthétique améliorée avec arrondi
CSS Transforme pour l'animation
Améliorations futures

Éclat gris

Apr 01, 2025 am 04:18 AM

Éclat gris

Cet effet d'éclatement gris captivant, bien qu'il ne soit pas trop complexe, offre une opportunité d'apprentissage précieuse. Explorons sa création à l'aide de SVG, en nous concentrant sur les techniques clés.

Implémentation SVG

Tirer parti des SVG<line></line> L'élément (avec des attributs x1 , x2 , y1 , y2 ) simplifie la conception de rafale. Le point central ( x1 , y1 ) reste constant, tandis que x2 et y2 sont générés dynamiquement en utilisant des nombres aléatoires. L'attribut viewBox="0 0 100 100" rend les calculs de coordonnées simples. Envisagez d'utiliser viewBox="-50 -50 100 100" pour centrer l'origine pour une manipulation plus facile.

Génération de nombres aléatoires

Une fonction personnalisée génère des entiers aléatoires dans une plage spécifiée:

 const getRandomint = (min, max) => {
  min = math.ceil (min);
  max = math.floor (max);
  return math.floor (math.random () * (max - min 1)) min;
};
Copier après la connexion

Cette fonction s'avère inestimable pour contrôler le positionnement des lignes, la largeur de course et l'opacité, mettant en évidence la nécessité d'un assistant mathématique JavaScript intégré similaire.

Génération HTML rationalisée

Les modèles littéraux offrent une approche propre et lisible pour générer dynamiquement les lignes SVG:

 Laissez Newlines;
pour (soit i = 0; i <h3 id="Interactivité-de-clic-pour-régénérer"> Interactivité de clic pour régénérer</h3><p> L'ajout d'interactivité est étonnamment simple. Une seule fonction ( <code>doArt()</code> ) gère la génération d'œuvres d'art et un écouteur d'événements déclenche cette fonction à chaque clic:</p><pre class="brush:php;toolbar:false"> Doart ();
window.addeventListener ("click", doart);
Copier après la connexion

Esthétique améliorée avec arrondi

L'utilisation de stroke-linecap="round" améliore considérablement l'attrait visuel en arrondissant les terminaisons de la ligne.

CSS Transforme pour l'animation

L'effet d'animation est réalisé en utilisant les transformations CSS, spécifiquement scale() , plutôt que de modifier directement les coordonnées de ligne. Cela crée un effet pulsant:

 doubler {
  Transform-Origin: Centre;
  Animation: faire 4s infinie alternatif;
}
/ * ... des retards d'animation ... * /

@keyframes do {
  100% {
    transformée: échelle (0,69);
  }
}
Copier après la connexion

Les retards d'animation échelonnés ( animation-delay ) utilisant les sélecteurs nth-child introduisent un aléatoire subtil à l'animation.

Améliorations futures

Plusieurs améliorations pourraient améliorer cet effet:

  • Colorisation: l'ajout de couleur augmenterait l'intérêt visuel. La randomisation contrôlée, plutôt que des couleurs complètement aléatoires, donnerait des résultats plus esthétiques.
  • Groupement de l'esthétique: le regroupement des largeurs ou des couleurs de course similaires créerait un look plus cohérent.
  • Mouvement avancé: l'introduction de la rotation, du mouvement de la page ou des rafales multiples ajouterait du dynamisme.
  • Contrôles interactifs: une bibliothèque comme Dat.Gui permettrait aux utilisateurs de régler les paramètres directement dans la démo.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Vue 3 Vue 3 Apr 02, 2025 pm 06:32 PM

Il est sorti! Félicitations à l'équipe Vue pour l'avoir fait, je sais que ce fut un effort massif et une longue période à venir. Tous les nouveaux documents aussi.

Construire une application Ethereum à l'aide de Redwood.js et de la faune Construire une application Ethereum à l'aide de Redwood.js et de la faune Mar 28, 2025 am 09:18 AM

Avec la récente montée du prix du bitcoin sur 20k $ USD, et pour lui, récemment en train de briser 30k, je pensais que cela valait la peine de reprendre une profonde plongeon dans la création d'Ethereum

Pouvez-vous obtenir des valeurs de propriété CSS valides du navigateur? Pouvez-vous obtenir des valeurs de propriété CSS valides du navigateur? Apr 02, 2025 pm 06:17 PM

J'ai eu quelqu'un qui écrivait avec cette question très légitime. Lea vient de bloguer sur la façon dont vous pouvez obtenir les propriétés CSS valides elles-mêmes du navigateur. C'est comme ça.

Cartes empilées avec un positionnement collant et une pincée de sass Cartes empilées avec un positionnement collant et une pincée de sass Apr 03, 2025 am 10:30 AM

L'autre jour, j'ai repéré ce morceau particulièrement charmant sur le site Web de Corey Ginnivan où une collection de cartes se cassent les uns sur les autres pendant que vous faites défiler.

Un peu sur CI / CD Un peu sur CI / CD Apr 02, 2025 pm 06:21 PM

Je dirais que "Site Web" correspond mieux que "Application mobile" mais j'aime ce cadrage de Max Lynch:

Comparaison des navigateurs pour une conception réactive Comparaison des navigateurs pour une conception réactive Apr 02, 2025 pm 06:25 PM

Il existe un certain nombre de ces applications de bureau où l'objectif montre votre site à différentes dimensions en même temps. Vous pouvez donc, par exemple, écrire

Utilisation de Markdown et de la localisation dans l'éditeur de blocs WordPress Utilisation de Markdown et de la localisation dans l'éditeur de blocs WordPress Apr 02, 2025 am 04:27 AM

Si nous devons afficher la documentation à l'utilisateur directement dans l'éditeur WordPress, quelle est la meilleure façon de le faire?

Pourquoi les zones réduites pourpre dans la disposition Flex sont-elles considérées à tort «espace de débordement»? Pourquoi les zones réduites pourpre dans la disposition Flex sont-elles considérées à tort «espace de débordement»? Apr 05, 2025 pm 05:51 PM

Questions sur les zones de slash violet dans les dispositions flexibles Lorsque vous utilisez des dispositions flexibles, vous pouvez rencontrer des phénomènes déroutants, comme dans les outils du développeur (D ...

See all articles