Bonjour à tous!!!
C'est mon premier Post dans ce forum, et je tient d'abord à remercier tous ce qui l'animent car il m'a sortie bien des fois de lla m****!!...

Mais la je bute...

Voila, j'ai une application à faire sous VC6.0 avec l'appWizard en SDI. Il s'agit de réaliser diverse opérations de traitement sonore sur un fichier wav (lecture, filtrage, concatenation,...) bref, tous ça marche à la perfection...

Mon problème est le suivant:

Je doit afficher la FFT(transformée de Fourier) d'un fichier wav. J'ai une classe Cson qui la calcule (grace à une méthode fft() ), et retourne un tableau (de type double *) dans le Doc.cpp .Le problème, c'est que dans ma fonction ::Ondraw(CDC* pDC) , lorsque j'appelle le tableau par la commade
Code : Sélectionner tout - Visualiser dans une fenêtre à part
pDC->LineTo(i+40,400-pDoc->tabFFT[i]);
et bien le prog plante...(mais sans erreur avec le compilo)
Mais pourquoi diantre cela???

Voici ma fonction ::OnDraw :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
void CIstasoundView::OnDraw(CDC* pDC)
{
	CIstasoundDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
 
 
	pDC->MoveTo(40,100);
	pDC->LineTo(20,120);
	pDC->MoveTo(40,100);
	pDC->LineTo(60,120);
	pDC->MoveTo(40,100);
	pDC->LineTo(40,400);
	pDC->LineTo(592,400);
	pDC->LineTo(572,380);
	pDC->MoveTo(592,400);
	pDC->LineTo(572,420);
	pDC->TextOut(593,400,"fréquence en Hz");
	pDC->TextOut(10,80,"Amplitude");
 
	CBrush Brush;
	CBrush pinceau(RGB(0,255,0));
 
	pDC->MoveTo(40,400);
	for(int i=0;i<=552;i++)
	{
		pDC->LineTo(i+40,400-pDoc->tabFFT[i]);//ici le pb!!!
	}
}

ET maintenant le code correspondant dans le Doc.cpp:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
	tabFFT=son.fft();//son étant la classe et fft, la methode
alors j'ai déclaré tabFFT en public, protected, mais sans succés!...
Comment faire alors???...
aidez moi ,SVP!!!...
@+, et merci d'avance!...