14 #ifndef RootCellProcessing_H
15 #define RootCellProcessing_H
29 std::map<int, Point3d> bez,
diffBez, bMapRadRef;
61 std::vector<std::pair<int,Point2i> > clusters1,
clusters2;
108 double coordLong, coordLongUM, coordLongMinUM, coordLongMaxUM, coordCirc, coordRad,
coordRadAbs;
178 for(
uint i = 0; i<sz; i++){
187 for(
uint i = 0; i<sz; i++){
196 for(
uint i = 0; i<sz; i++){
201 data.
bez[key] = value;
205 for(
uint i = 0; i<sz; i++){
220 writeChar((
char *)&data.
twoParts,
sizeof(
bool), ba);
222 writeChar((
char *)&data.
analyzed,
sizeof(
bool), ba);
230 writeChar((
char *)&data.
primCounter,
sizeof(
int), ba);
241 writeChar((
char *)&sz,
sizeof(
uint), ba);
250 writeChar((
char *)&sz,
sizeof(
uint), ba);
251 for(std::map<IntInt,double>::const_iterator it = data.
wallArea.begin(); it!=data.
wallArea.end(); it++){
258 sz = data.
bez.size();
259 writeChar((
char *)&sz,
sizeof(
uint), ba);
260 for(std::map<int,Point3d>::const_iterator it = data.
bez.begin(); it!=data.
bez.end(); it++){
266 writeChar((
char *)&sz,
sizeof(
uint), ba);
309 std::map<int, Point3d> bez,
diffBez, bMapRadRef;
355 std::map<int, Point3d>
dirRad, dirLong, dirCirc;
366 std::map<int, double> x,
y;
429 data = cellAtlasAttr;
430 config = cellAtlasConfigAttr;
432 numCells = (*data).
size();
433 std::map<int,int> newLabelMap;
434 for(
int i = 0; i<numCells; i++){
435 int currentLabel = (*data)[i].cellLabel;
436 newLabelMap[i] = currentLabel;
438 labelMap = newLabelMap;
443 std::map<int, double> getMapFromAttributes(QString mapName);
445 void initHeatMapDataStructure(
heatMapDataStructure& body,
double sig,
int& chosenX,
int& chosenY);
460 std::map<int,double> labelCells(std::map<int,double>& labelToMax, std::map<int,double>& maxToRef,
464 void correctDirections();
467 void assignRootRegions();
472 std::map<int,double>& x, std::map<int,double>& y, std::map<int,Point2d> maxima);
475 double minDisToMax(std::map<int,Point2d>& maxima, std::map<int,double>& usedMax,
int currentIdx);
480 void setAutoCluster(
int nrCluster,
bool ismainBody);
489 void setParameter(
bool outputType,
int label1,
int label2);
498 void geometryBasedLabelling();
513 void assignColumella(
int labelRootCap,
int labelCol,
double rat_val,
double sca_val);
518 void assignCortCellsGetMinMax(
int labelCort,
double& minS,
double& maxS);
521 void assignCortCells(
int labelCort, std::vector<double>& sSmooth, std::map<int, Point3d>& bMapS,
int length);