[JS] Muis locatie bepalen

Pagina: 1
Acties:

  • Naj_Geetsrev
  • Registratie: Oktober 2002
  • Laatst online: 21-07-2025
En dan bedoel ik niet het opvragen van de muislocatie, maar het zetten van een locatie. Ik heb alle uithoeken van google uitgekamt en ik kan hier niets over vinden. Niet eens iemand die precies de zelfde vraag als ik had.

Ik ben bezig met een applicatie waarmee je een stuk kan selecter uit een plaatje, en het moet van een bepaalde verhouding zijn. Er zit al een verhouding check in, maar het mooiste is nog dat je alleen een bepaalde verhouding kan selecteren. Ik heb al iets werkends, maar de muis zit steeds te fucken. Het zou echt goed werken als ik de locatie van de muis kan bepalen.

Heeft iemand een idee, of is dit helemaal niet mogenlijk met JS? Alvast vriendelijk bedankt. :).

  • disjfa
  • Registratie: April 2001
  • Laatst online: 08-01 11:17

disjfa

be

disjfa - disj·fa (meneer)
disjfa.nl


  • Naj_Geetsrev
  • Registratie: Oktober 2002
  • Laatst online: 21-07-2025
Vriendelijk bedankt, maar heb je de post wel gelezen? :).

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Stop AI Slop

Je wilt denk ik het volgende:

De X en Y positie van de muis opslaan bij het MouseDown event bij het plaatje (=beginnen met selecteren) en de X en Y opslaan bij het MouseUp event (=klaar met selecteren).

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


  • Naj_Geetsrev
  • Registratie: Oktober 2002
  • Laatst online: 21-07-2025
CodeCaster schreef op maandag 19 september 2005 @ 11:11:
Je wilt denk ik het volgende:

De X en Y positie van de muis opslaan bij het MouseDown event bij het plaatje (=beginnen met selecteren) en de X en Y opslaan bij het MouseUp event (=klaar met selecteren).
Nope. Dat wordt al gedaan. :).

Ik klik ergens op het plaatje, en dan wordt er een divje aangemaakt en die resized mee met waar ik de muis heen beweeg. Wat ik wil doen is, als de muis eentje naar rechts beweegt (x + 1) , maar dan de selectie uit verhouding trekt (niet meer 1:1 is bijvoorbeeld) dat hij de muis dan weer op x zet. Hoeft niet perse FF vriendelijk te zijn. :{.

Verwijderd

de muis is niet te setten nee, maar dat hoeft toch ook niet? wat is het probleem eigenlijk precies? je trekt een rect en die moet altijd dezelfde verhouding blijven hebben? dan pak je toch gewoon of de dx of de dy en rekent de andere mbv die verhouding uit?

pseudocode:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
onmousedown = function() {
  bepaald x0 en y0;
}

onmousemove = function() {
  bepaal x en y;
  dx = x-x0; dy=y-y0;
  if (verh*dx<=dy) {
    div.width = dx;
    div.height = verh*dx;
  } else {
    div.height = dy;
    div.width = dy/verh;
  }
}

[ Voor 36% gewijzigd door Verwijderd op 19-09-2005 11:21 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Ik zou de muis-positie ook niet setten, maar gewoon je verhouding vasthouden zoals je dat wenst (gebeurt nl. ook in standaard paint-pakketten :))

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Naj_Geetsrev
  • Registratie: Oktober 2002
  • Laatst online: 21-07-2025
Verwijderd schreef op maandag 19 september 2005 @ 11:16:
de muis is niet te setten nee, maar dat hoeft toch ook niet? wat is het probleem eigenlijk precies? je trekt een rect en die moet altijd dezelfde verhouding blijven hebben? dan pak je toch gewoon of de dx of de dy en rekent de andere mbv die verhouding uit?

pseudocode:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
onmousedown = function() {
  bepaald x0 en y0;
}

onmousemove = function() {
  bepaal x en y;
  dx = x-x0; dy=y-y0;
  if (verh*dx<=dy) {
    div.width = dx;
    div.height = verh*dx;
  } else {
    div.height = dy;
    div.width = dy/verh;
  }
}
Hmmm, zo iets had ik ook. Maar dan kon je ook alle kanten op selecteren, en werdt er rekenin gehouden met scrollen en dat je niet verder kon dan het plaatje. :/. Ik maak het hele selectie stuk wel opnieuw, was een crappy stuk code. Zou wel werken als ik de muiscursor kon bepalen, maar ja.

Toch bedankt. :).
Pagina: 1