27. marts 2002 - 15:01Der er
4 kommentarer og 1 løsning
konvertering af asp til asp.net
Jeg har konverteret en website fra asp til .net...jeg har dog et problem med et Image der benytter USEMAP. Koordinaterne til de forskellige areas i <MAP> hentes fra en database. Hvordan får jeg imagemap til at køre på serveren så den kalder en funktion på serveren når der klikkes på et area ? Som det er nu er jeg nødt til at reloade siden med querystring. <MAP NAME="map1"> <AREA COORDS='301,93,324,99,356,114,326,157,290,114' SHAPE=POLY HREF='kort.aspx?kort=cnt1'> <AREA COORDS='350,29,411,17,528,50,449,123,458,197,413,198,363,164,343,133,356,114,325,109' SHAPE=POLY HREF='kort.aspx?kort=cnt2'> <AREA COORDS='458,197,457,184,524,204,503,269,462,262,419,243,417,218' SHAPE=POLY HREF='kort.aspx?kort=cnt3'> </MAP>
By using the OnClick event handler, you can programmatically determine the coordinates where the image is clicked. You can then code a response based on the values of the coordinates. Note the origin (0, 0) is located at the upper-left corner of the image
dvs. at du "dropper" dit normale imagemap og laver "udregningen" i din event handler (ved at kende x & y kordinaterne, for click og for billedet)
Det har jeg kigget på....men jeg får et problem med at finde ud af hvilket area koordinaterne hører til. Det bliver lidt af en kompliceret udregning, jeg har 9 billedere og ca. 180 areas der er lagt i en database...jeg håber der dukker en anden løsning op.
Simpel geometri. Lav en funktion der tjekker for om et punkt er indenfor et punkt-array. DEtte gøres f.eks. ved at beregne vinklen ud fra klikpunktet til to punkter i polygonen. Gør dette hele vejen rundt i cirklen. Er summen af alle vinkler = 2*Pi, så er punktet indenfor. Dette skulle være den simpleste og den hurtigste metode, når antallet af punkter i polygonen er højest 10-15 stykker. Når du først har lavet denne funktion én gang, er den jo nem at genbruge massere af gange.
Det kan jeg ikke helt se for mig.. Kan du lave et eksempel på hvordan du finder ud af om 400,209 er et punkt i et area med følgende koordinater 450,29,411,17,528,50,449,123,458,197,413,198,363,164,343,133,356,114,325,109
Jeg må oprette spørgsmålet igen på et senere tidspunkt.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.