Szerző Téma: Háromszög DxDraw  (Megtekintve 2753 alkalommal)

Háromszög DxDraw
« Válasz #15 Dátum: 2017. december 26. - 20:51:27 »
0 Show voters
Ha esetleg vmit nem értesz, akkor szívesen elmagyarázom.

Háromszög DxDraw
« Válasz #16 Dátum: 2017. december 26. - 20:53:32 »
+1 Show voters
Idézetet írta: MakroBox date=1514317816


   

local sx, sy = guiGetScreenSize()
local gyok3 = math.sqrt(3)
function drawHatszog(kx, ky, w)
local x, y = kx-w/2, ky-(w/2*gyok3)
local csucsok = {{x, y}, {x+w, y}, {x+w+w/2, y+(w/2*gyok3)}, {x+w, y+(w/2*gyok3)*2}, {x, y+(w/2*gyok3)*2}, {x-w/2, y+(w/2*gyok3)}, {x, y}}
for i=1,6 do
   dxDrawLine(csucsok[1], csucsok[2], csucsok[i+1][1], csucsok[i+1][2], tocolor(255,255,255,255))
end
end
addEventHandler(\'onClientRender\', root, function()
drawHatszog(sx/2, sy/2, 100)
end)

   
      Én meg hetedikes vagyok.
       
   
   
       
   


Az ilyet már vettem 1 éve is (szóval 5.-ben) csak nehezebb átvinni azért kódba :)
 
(Kivéve gyök, de geomteria azt igen)
« Utoljára szerkesztve: 2017. december 26. - 20:53:58 írta thegergo02 »

Háromszög DxDraw
« Válasz #17 Dátum: 2017. december 26. - 20:55:01 »
+1 Show voters
Idézetet írta: thegergo02 date=1514318012


   
      Az ilyet már vettem 1 éve is (szóval 5.-ben) csak nehezebb átvinni azért kódba :)
   


Én is kb. akkor, kellett valamelyik versenyen.

Háromszög DxDraw
« Válasz #18 Dátum: 2017. december 26. - 20:58:37 »
0 Show voters
@xerox0224 Ebből a kódból szerintem már menni fog az \"elfogyás\". :D

Háromszög DxDraw
« Válasz #19 Dátum: 2017. december 26. - 21:01:05 »
+1 Show voters
Igen. Nekem ezek a számolások így nem mennek, tudom mi az a gyök, ki tudom számolni a számnak a gyökét. ( pl.: 9 négyzetgyöke 3, mert 3×3 az 9. ), viszont amikor egy kódról van szó, ott valamiért leblokkol az agyam. És 1000 hálám, nagyon köszönöm!
 
 

Háromszög DxDraw
« Válasz #20 Dátum: 2017. december 26. - 23:18:43 »
0 Show voters
Írd le a problémát mateknyelven egy papírra és próbáld meg a logikáját átírni programkódba.

Háromszög DxDraw
« Válasz #21 Dátum: 2017. december 27. - 00:03:35 »
+1 Show voters
Idézetet írta: thegergo02 date=1514326723


   
      Írd le a problémát mateknyelven egy papírra és próbáld meg a logikáját átírni programkódba.
   


Pont így csináltam. 
 
Leírtam, mit tudunk. Tudjuk az oldalhosszt (w), a középpontot (O) és hogy egy szabályos 6szögünk van. Azt is tudjuk, hogy O és bármely csúcs távolsága w lesz. O-t és a csúcsokat összekötjük, így 6 db szab. 3szöget kapunk. Aztán ott tudjuk, hogy a magasság az w/2*gyök(3), és ha ezt mindenhova beírjuk, kiegészítjük az ábrát, megvan a feladat..
 
Ezek után már csak egy adott ponthoz viszonyítva kell kiszámolni a többit, és ezt leírni a kódban. (Én a középpontot, O-nak a pozícióját kértem be, abból kiszámoltam a “bal felső” pontot, az lett x és y, majd ahhoz viszonyítva a többi pontot, és ezeket összekötöttem. Így gyakorlatilag egy olyan function-t csináltam, aminek megadod a 6szög középpontját és oldalhosszát, ő cserébe kirajzolja neked azt.)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal