1 van 1

In een matrix van double waarden, maak een cel leeg

Geplaatst: di 20 mei 2008, 15:56
door DePurpereWolf
Origin is een grafiek software, het heeft een macro onderdeel dat werkt op C.

Ik heb een matrix vol waarden, (double(8)) Ik wil dat alles onder een bepaalde waarde een lege cel word.

Ik kan er makkelijk een waarde van 0 in zetten, maar ik wil het leeg.

Kan ik een lege waarde aan een cel in een matrix toekennen?

Dit is een klein stukje uit de makro, zoals je kunt zien heb ik 'false' geprobeert, maar dat levert gewoon '0' op. En het moet leeg zijn, geen waarde, niks nie. Moet ik de matrix veranderen van double naar float ofzo?

Code: Selecteer alles

	for(ii = 0; ii < rowend; ii++) 

// remove unwanted values

{

for(jj = 0; jj < colend; jj++)

{

if (mmNew[ii][jj] < offset)

mmNew[ii][jj] = false;

}

}

Re: In een matrix van double waarden, maak een cel leeg

Geplaatst: di 20 mei 2008, 16:07
door Raga
Wat bedoel je met lege waarde?

Floats en doubles hebben geen concept van 'lege' waardes.

Wat verwacht je te krijgen als je zo een lege waarde weer uit zou lezen?

Re: In een matrix van double waarden, maak een cel leeg

Geplaatst: di 20 mei 2008, 17:28
door DePurpereWolf
niks :D

De waarde in de cel mag alles behalve een getal zijn.

Ik heb het echter al gevonden. Het woord is NANUM (kom daar maar eens op)

Goed zoeken werpt zijn vruchten af.

Code: Selecteer alles

	for(ii = 0; ii < rowend; ii++)

 // remove unwanted values

{

for(jj = 0; jj < colend; jj++)

{

if (mmNew[ii][jj] < offset)

mmNew[ii][jj] = NANUM;

}

}
Iets dat ook waarschijnlijk werkt is het volgende:

Code: Selecteer alles

// Assumes Matrix1 exists in Origin and contains some missing values (NANUM)

Matrix mat1("Matrix1");

// Change all missing values (NANUM) in Matrix1 to 0 and all other values to missing values

mat1.Replace( NANUM, 0, MATREPL_TEST_EQUAL | MATREPL_SET_TO_MISSING_VALUE_WHEN_TEST_RESULT_IS_FALSE );

Re: In een matrix van double waarden, maak een cel leeg

Geplaatst: di 20 mei 2008, 19:10
door Raga
Hm, is bij mijn weten geen standaard C of C++.

Zal wel een extensie van Origin zijn :D

Re: In een matrix van double waarden, maak een cel leeg

Geplaatst: wo 21 mei 2008, 10:40
door DePurpereWolf
Dat is het ook,

vervelend van die extensies dat ze altijd weer een beetje anders zijn. (zie mijn andere vraag over Visual Basic in dit forum, wat een extensie is van Polytec PSV) :D