<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="da">
	<id>https://holstebro-htx.dk/index.php?action=history&amp;feed=atom&amp;title=Spilleplade</id>
	<title>Spilleplade - Versionshistorie</title>
	<link rel="self" type="application/atom+xml" href="https://holstebro-htx.dk/index.php?action=history&amp;feed=atom&amp;title=Spilleplade"/>
	<link rel="alternate" type="text/html" href="https://holstebro-htx.dk/index.php?title=Spilleplade&amp;action=history"/>
	<updated>2026-05-22T23:32:54Z</updated>
	<subtitle>Versionshistorie for denne side i Holstebro HTX Wiki</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://holstebro-htx.dk/index.php?title=Spilleplade&amp;diff=1408&amp;oldid=prev</id>
		<title>Bar: Oprettede siden med &quot;Eksemplet her tager udgangspunkt i Arrays&lt;ref&gt;[https://processing.org/tutorials/arrays/ Arrays Tutorial] på Processing.org&lt;/ref&gt;. ==Bane med muse navigation== Programmets visning af spilleplade Herunder er etableret en spilleplade med cirkler, og det laves en data-model med en 6 x 6 spilleplade.  ===Data-model for spilleplade=== Data-modellen for spillepladen er et 2-dimensionelt Array af int, og størrelsen er 6 x 6, alt...&quot;</title>
		<link rel="alternate" type="text/html" href="https://holstebro-htx.dk/index.php?title=Spilleplade&amp;diff=1408&amp;oldid=prev"/>
		<updated>2022-10-13T20:37:43Z</updated>

		<summary type="html">&lt;p&gt;Oprettede siden med &amp;quot;Eksemplet her tager udgangspunkt i Arrays&amp;lt;ref&amp;gt;[https://processing.org/tutorials/arrays/ Arrays Tutorial] på Processing.org&amp;lt;/ref&amp;gt;. ==Bane med muse navigation== &lt;a href=&quot;/index.php/Fil:Spilleplade2.png&quot; title=&quot;Fil:Spilleplade2.png&quot;&gt;right|thumb|260px|Programmets visning af spilleplade&lt;/a&gt; Herunder er etableret en spilleplade med cirkler, og det laves en data-model med en 6 x 6 spilleplade.  ===Data-model for spilleplade=== Data-modellen for spillepladen er et &lt;a href=&quot;/index.php/2-dimensionelt_Array&quot; title=&quot;2-dimensionelt Array&quot;&gt;2-dimensionelt Array&lt;/a&gt; af int, og størrelsen er 6 x 6, alt...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Ny side&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Eksemplet her tager udgangspunkt i Arrays&amp;lt;ref&amp;gt;[https://processing.org/tutorials/arrays/ Arrays Tutorial] på Processing.org&amp;lt;/ref&amp;gt;.&lt;br /&gt;
==Bane med muse navigation==&lt;br /&gt;
[[fil:Spilleplade2.png|right|thumb|260px|Programmets visning af spilleplade]]&lt;br /&gt;
Herunder er etableret en spilleplade med cirkler, og det laves en data-model med en 6 x 6 spilleplade. &lt;br /&gt;
===Data-model for spilleplade===&lt;br /&gt;
Data-modellen for spillepladen er et [[2-dimensionelt Array]] af int, og størrelsen er 6 x 6, altså 36 heltal. I dette eksempel har de ikke fået tillagt nogen betydning.&lt;br /&gt;
&lt;br /&gt;
Læg mærke til den specielle måde spillepladen oprettes på i et for-loop inde i setup, og i endnu et for-loop sættes alle værdier til 0.&lt;br /&gt;
&lt;br /&gt;
Pladserne kan tælles op ved klik med musen.&lt;br /&gt;
&lt;br /&gt;
===Visning af Data-modellen===&lt;br /&gt;
Arrayet vises som 6 x 6 cirkler, hvor indholdet i datamodellen printes som et tal. &lt;br /&gt;
&lt;br /&gt;
Størrelsen på cirklerne er sat til en diameter på 30 pixel, og de placeres med en afstand på 40 x 40, så der kommer lidt luft imellem dem. Der laves et offset på 30 pixel, der giver lidt luft til kanten. Størrelsen af programvinduet tilpasses antallet en felter.&lt;br /&gt;
&lt;br /&gt;
Optegnelsen af spillepladen sker i to for-loops (med tællere n og i), og i optegnelsen skrives også tallet i hvert felt.&lt;br /&gt;
&lt;br /&gt;
===Muse-interface til data-modellen===&lt;br /&gt;
Når der klikkes med musen i programvinduet løbes alle 6 x 6 felter igennem, og med sætningen &amp;lt;pre&amp;gt;dist = sqrt(sq(n*40 + 30 - mouseX) + sq(i*40 + 30 - mouseY));&amp;lt;/pre&amp;gt; beregnes afstanden fra museklikket til hvert centrum.&lt;br /&gt;
&lt;br /&gt;
Hvis afstanden er mindre end radius på 15, så tælles det aktuelle felt i arrayet en op.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
int xWidth = 6;&lt;br /&gt;
int yHeight = 6;&lt;br /&gt;
int [][] bane;&lt;br /&gt;
void setup() {&lt;br /&gt;
  bane = new int[xWidth][];&lt;br /&gt;
  for (int n = 0; n &amp;lt; xWidth; n++) {&lt;br /&gt;
    bane[n] = new int[yHeight];&lt;br /&gt;
    for (int i = 0; i &amp;lt; yHeight; i++) {&lt;br /&gt;
      bane[n][i] = 0;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  size(260, 260);&lt;br /&gt;
  strokeWeight(2);&lt;br /&gt;
  textSize(20);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void draw() {&lt;br /&gt;
  background(255);&lt;br /&gt;
  for (int n = 0; n &amp;lt; xWidth; n++) {&lt;br /&gt;
    for (int i = 0; i &amp;lt; yHeight; i++) {&lt;br /&gt;
      fill(240);&lt;br /&gt;
      ellipse(n*40 + 30, i*40 + 30, 30, 30);&lt;br /&gt;
      fill(0);&lt;br /&gt;
      text(bane[n][i], n*40 + 23, i*40 + 38);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void mousePressed() {&lt;br /&gt;
  for (int n = 0; n &amp;lt; xWidth; n++) {&lt;br /&gt;
    for (int i = 0; i &amp;lt; yHeight; i++) {&lt;br /&gt;
      float dist = sqrt(sq(n*40 + 30 - mouseX) + sq(i*40 + 30 - mouseY));&lt;br /&gt;
      if (dist &amp;lt; 15) {&lt;br /&gt;
        bane[n][i]++;&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
[[fil:Spilleplade1.png|right|thumb|400px|Programmets visning af spilleplade]]&lt;br /&gt;
&lt;br /&gt;
==Bane med tastatur navigation==&lt;br /&gt;
Herunder er etableret en spille plade med rektangler, og det laves en data-model med en 10 x 8 spilleplade. &lt;br /&gt;
===Data-model for spilleplade og aktiv plads===&lt;br /&gt;
Data-modellen for spillepladen er et [[2-dimensionelt Array]] af int, og størrelsen er 10 x 8, altså 80 heltal. I dette eksempel har de ikke fået tillagt nogen betydning.&lt;br /&gt;
&lt;br /&gt;
Læg mærke til den specielle måde spillepladen oprettes på i et for-loop inde i setup, og i endnu et for-loop sættes alle værdier til 0.&lt;br /&gt;
&lt;br /&gt;
En anden del af data-modellen er at, der er en xPos og yPos, som angiver den aktive plads. Ved hjælp af piletasterne kan den navigeres rundt.&lt;br /&gt;
&lt;br /&gt;
Den aktive plads kan tælles op og ned med tasterne + og -.&lt;br /&gt;
&lt;br /&gt;
===Visning af Data-modellen===&lt;br /&gt;
Arrayet vises som 10 x 8 felter, hvor indholdet printes som et tal. &lt;br /&gt;
&lt;br /&gt;
Felterne laves som rektangler med størrelsen 60 x 40 pixel, og de placeres med en afstand på 70 x 50, så der kommer lidt luft imellem dem. Der laves et offset på 30 pixel, der giver lidt luft til kanten. Størrelsen af programvinduet tilpasses antallet en felter.&lt;br /&gt;
&lt;br /&gt;
Optegnelsen af spillepladen sker i to for-loops (med tællere n og i), og i optegnelsen skrives også tallet i hvert felt.&lt;br /&gt;
&lt;br /&gt;
Den aktive plads bliver illustreret ved at sætte en grå baggrund i feltet for den aktive plads.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;C&amp;quot;&amp;gt;&lt;br /&gt;
int xWidth = 10;&lt;br /&gt;
int yHeight = 8;&lt;br /&gt;
int [][] bane;&lt;br /&gt;
int xPos = 0;&lt;br /&gt;
int yPos = 0;&lt;br /&gt;
void setup() {&lt;br /&gt;
  bane = new int[xWidth][];&lt;br /&gt;
  for (int n = 0; n &amp;lt; xWidth; n++) {&lt;br /&gt;
    bane[n] = new int[yHeight];&lt;br /&gt;
    for (int i = 0; i &amp;lt; yHeight; i++) {&lt;br /&gt;
      bane[n][i] = 0;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  size(750, 450);&lt;br /&gt;
  strokeWeight(2);&lt;br /&gt;
  textSize(20);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void draw() {&lt;br /&gt;
  background(255);&lt;br /&gt;
  for (int n = 0; n &amp;lt; xWidth; n++) {&lt;br /&gt;
    for (int i = 0; i &amp;lt; yHeight; i++) {&lt;br /&gt;
      if (n == xPos &amp;amp;&amp;amp; i == yPos) {&lt;br /&gt;
        fill(200);&lt;br /&gt;
      } else {&lt;br /&gt;
        fill(255);&lt;br /&gt;
      }&lt;br /&gt;
      rect(n*70 + 30, i*50 + 30, 60, 40);&lt;br /&gt;
      fill(0);&lt;br /&gt;
      text(bane[n][i], n*70 + 40, i*50 + 60);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void keyPressed() {&lt;br /&gt;
  println(key + &amp;quot; &amp;quot; + keyCode);&lt;br /&gt;
  if (key == CODED) {&lt;br /&gt;
    if (keyCode == UP) {&lt;br /&gt;
      if (yPos &amp;gt; 0) {&lt;br /&gt;
        yPos--;&lt;br /&gt;
      }&lt;br /&gt;
    } else if (keyCode == DOWN) {&lt;br /&gt;
      if (yPos &amp;lt; yHeight - 1) {&lt;br /&gt;
        yPos++;&lt;br /&gt;
      }&lt;br /&gt;
    } else if (keyCode == LEFT) {&lt;br /&gt;
      if (xPos &amp;gt; 0) {&lt;br /&gt;
        xPos--;&lt;br /&gt;
      }&lt;br /&gt;
    } else if (keyCode == RIGHT) {&lt;br /&gt;
      if (xPos &amp;lt; xWidth - 1) {&lt;br /&gt;
        xPos++;&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
  if (key == &amp;#039;+&amp;#039;) {&lt;br /&gt;
    bane[xPos][yPos]++;&lt;br /&gt;
  } else if (key == &amp;#039;-&amp;#039;) {&lt;br /&gt;
    bane[xPos][yPos]--;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Referencer==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
{{Spiludvikling}}&lt;br /&gt;
&lt;br /&gt;
[[Kategori:Spil_Visning]]&lt;br /&gt;
[[Kategori:Spil_Data-model]]&lt;br /&gt;
[[Kategori:Grafik_i_Processing]]&lt;/div&gt;</summary>
		<author><name>Bar</name></author>
	</entry>
</feed>