Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[HTML/CSS/JS] Gelijke spreiding cirkels om centraal element

Pagina: 1
Acties:

  • Tyuilp
  • Registratie: Januari 2011
  • Niet online
Hallo Tweakers,

Ik ben op zoek naar een mogelijkheid om verschillende html elementen (cirkels) gelijkmatig te verspreiden om een centraal html element. Zoals in dit voorbeeld: http://jsfiddle.net/gYBw3/.

In het voorbeeld zijn er 8 cirkels. Voor deze cirkels heb ik met css 8 absolute posities bepaald. Als er echter in plaats van 8 cirkels, 15, 25 of 3 cirkels zijn, wil ik deze ook gelijkmatig om de centrale cirkel verspreid hebben. Als er een groot aantal is, kan dit bijvoorbeeld in twee ringen om de centrale cirkel heen i.p.v één. Dit hoeft niet in een perfecte ring, maar het moet wel gelijkmatig verspreid zijn zonder dat de cirkels elkaar overlappen.

Het is natuurlijk prima mogelijk om ook dit met absolute posities op te lossen, alleen is dit totaal niet dynamisch en nogal tijdrovend.

Weet iemand een goede manier om dit op te lossen of heeft iemand wat zoektermen waarmee ik verder kan zoeken? Misschien dat er al een library/plugin bestaat die dit kan?

Ik zat te denken om in js een grid met cellgrootte x,y te definiëren en dan op basis van het aantal te positioneren elementen te bepalen hoeveel cellen van het grid ik moet overslaan voordat ik een nieuwe positie pak.. klinkt vaag? Klopt, daarom voordat ik dit idee verder uitwerk.. iemand een beter idee?

Evey: "Who are you? " V: "Who? Who is but the form following the function of what and what I am is a man in a mask."


  • FotW
  • Registratie: Juli 2012
  • Laatst online: 24-10 13:17
Waar heb je al op gegoogled? Want dit: http://stackoverflow.com/...-elements-around-a-circle was mijn eerste resultaat en komt volgens mij al in de richting van wat je wil

Sterker nog: http://jsfiddle.net/BananaAcid/nytN6/ er staat ook een werkend voorbeeld in

[ Voor 17% gewijzigd door FotW op 06-03-2014 16:34 ]


  • Tyuilp
  • Registratie: Januari 2011
  • Niet online
Dat is inderdaad een hit waar ik mee verder kan. 'Arrange' is waarschijnlijk het keyword dat ik miste bij het zoeken. Thanks!

Evey: "Who are you? " V: "Who? Who is but the form following the function of what and what I am is a man in a mask."


Verwijderd

De magische term waarop je wil zoeken is poolcoördinaten. Om te weten of twee cirkels elkaar overlappen bereken je de afstand tussen beide middelpunten met behulp van de stelling van Pythagoras. Indien deze kleiner is dan de som van beide radii, dan overlappen ze.

[ Voor 3% gewijzigd door Verwijderd op 07-03-2014 21:31 . Reden: Stijl gerelateerd ]


  • underrated
  • Registratie: Februari 2014
  • Laatst online: 21-09-2021
Als je cirkels altijd even groot zijn (daar lijkt t op) dan hoef je alleen een algoritme te bedenken waarmee je de top en left coordinaten berekent (als in: waar op de ring moeten ze komen). Math.PI is je vriend.

Als de ring 'vol' is ga je verder op een grotere ring.