Hirdetés
- Andras-G: #Kószagondolat - eMag tapasztalatok 2026-ban
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- bambano: Bambanő háza tája
- eBay-es kütyük kis pénzért
- Doky586: SecureBoot kulcsok frissítése (2026 nyara)
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- talmida: My Art II.
- sziku69: Fűzzük össze a szavakat :)
- Geri Bátyó: Agglegénykonyha 13 – Néhány egyszerű, de finom étel
Új hozzászólás Aktív témák
-
Lakers
tag
Sziasztok van egy kis problémám, grafika C. A program nem mást csinál, mint egy hermitív ívet/görbét képezz le. Azt mondta a gyakvezér, hogy csak egyet kell megírni, aztán csak mátrix cserét kell végrehajtani, hogy megkapjuk a beizer vagy b-spline görbét.
nos én ivrajzolo(pontok, M, -1, 2); ezt ivrajzolo(pontok, M, 0, 1);-re modósítottam
de nem igazán látszik a szépsége...MATRIX M = {{
{-1.0 / 6.0, 0.5, -1.0 / 3.0, 0.0},
{0.5, -1.0, -0.5, 1.0},
{-0.5, 0.5, 1.0, 0.0},
{1.0 / 6.0, 0.0, -1.0 / 6.0, 0.0}}} vagy pedig ezt a részt is másra kéne módosítanom?# include "graphics.h"
# include <conio.h>
# include <math.h>
# include <stdio.h>
typedef struct pont
{
double x,y;
} PONT;
typedef struct{
float t[4][4];
}MATRIX;
void ivrajzolo (PONT G[4], MATRIX M, float a, float b){
float lepeskoz = (b - a) / 100;
PONT C[4] ={0,0, 0,0, 0,0, 0,0};
for(int i = 0; i < 4; i++)
for(int j = 0; j < 4; j++){
C[i].x += G[j].x * M.t[j][i];
C[i].y += G[j].y * M.t[j][i];
}
PONT Q;
float t= a;
Q.x = C[0].x * t*t*t + C[1].x * t*t + C[2].x * t + C[3].x * 1;
Q.y = C[0].y * t*t*t + C[1].y * t*t + C[2].y * t + C[3].y * 1;
moveto(int(Q.x),int(Q.y));
for ( t=a ; t < b ; t+= lepeskoz ){
Q.x = C[0].x * t*t*t + C[1].x * t*t + C[2].x * t + C[3].x * 1;
Q.y = C[0].y * t*t*t + C[1].y * t*t + C[2].y * t + C[3].y * 1;
lineto(int(Q.x),int(Q.y));
}
}
int main()
{
int gd,gm;
initgraph(&gd,&gm,"");
gd=VGA;
gm=VGAMED;
int page=0;
int ap;
int i=0;
PONT pontok[4] = {290,300,330,200,430,130,500,200};
MATRIX M = {{
{-1.0 / 6.0, 0.5, -1.0 / 3.0, 0.0},
{0.5, -1.0, -0.5, 1.0},
{-0.5, 0.5, 1.0, 0.0},
{1.0 / 6.0, 0.0, -1.0 / 6.0, 0.0}}};
for (;;)
{
setactivepage(page);
cleardevice();
for ( i=0 ; i<4 ; ++i)
circle(integer(pontok[i].x),integer(pontok[i].y),3);
ivrajzolo(pontok, M, -1, 2);
/* Egerkezeles */
if (!balgomb) ap = getactivepoint((pont2d*)pontok,4,5);
if (ap >= 0 && balgomb)
{
pontok[ap].x = egerx;
pontok[ap].y = egery;
}
/* Egerkezeles vege */
setvisualpage(page);
page = 1-page;
if (kbhit())
break;
}
closegraph();
return(0);
}
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Anglia - élmények, tapasztalatok
- Jövedelem
- Először beszélt bővebben az új Xbox konzolról a Microsoft
- Tőzsde és gazdaság
- Metal topik
- PlayStation 5
- LEGO klub
- Befutott a régóta várt, sok P-maggal kitömött, LGA1700-as Core sorozat
- exHWSW - Értünk mindenhez IS
- Kész rémálom lesz Linuxot használni jövőre az USA egyes államaiban
- További aktív témák...
- Chieftec Smart Seriels GPS-500A8 80 Plus minősítésű 500W tápegység
- Apple iPhone 13 - 85% Akku - 128GB - Független - Hibátlan
- HONOR Magic8 Lite 5G 512GB + CHOICE Cubuds - Gyári Bontatlan, 2028-ig garanciális
- HONOR Magic8 Pro 5G 12/512GB (Black) - Új, Kártyafüggetlen, 2029-ig garanciális
- HP ProBook 6560b, 15,6" HD+, i5-2520M CPU, 8GB DDR3, 500GB HDD, W10, Számla, garancia ( olvasd végi
- darkFlash Shadow Pro
- HP ProBook 445 G9 14" Ryzen 3 5425U, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- HIBÁTLAN iPhone 14 Plus 128GB Midnight-1 ÉV GARANCIA - Kártyafüggetlen, MS4472
- BESZÁMÍTÁS! Asus EX-B365M i5 9600K 16GB DDR4 500GB SSD RX 5500 XT 8GB Zalman T3 Plus 600W
- 35" ASUS ROG Swift PG35VQ curved GAMER monitor
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
