void SetNeuronDisplayColor::do1clickcolor(V3DPluginCallback2 &callback, QWidget *parent) { //select the window to operate QList <V3dR_MainWindow *> allWindowList = callback.getListAll3DViewers(); QList <V3dR_MainWindow *> selectWindowList; V3dR_MainWindow * v3dwin; QList<NeuronTree> * ntTreeList; int winid; qDebug("search for 3D windows"); for (V3DLONG i=0;i<allWindowList.size();i++) { ntTreeList = callback.getHandleNeuronTrees_Any3DViewer(allWindowList[i]); if(ntTreeList->size()>0) selectWindowList.append(allWindowList[i]); } qDebug("match and select 3D windows"); if(selectWindowList.size()<1){ v3d_msg("Cannot find 3D view with SWC file. Please load the SWC files you want to color in the 3D view"); return; }else if(selectWindowList.size()>1){ //pop up a window to select QStringList items; for(int i=0; i<selectWindowList.size(); i++){ items.append(callback.getImageName(selectWindowList[i])); } bool ok; QString selectitem = QInputDialog::getItem(parent, QString::fromUtf8("1-click neuron color"), QString::fromUtf8("Select A Window to Operate"), items, 0, false, &ok); if(!ok) return; for(int i=0; i<selectWindowList.size(); i++){ if(selectitem==callback.getImageName(selectWindowList[i])) { winid=i; break; } } }else{ winid=0; } v3dwin = selectWindowList[winid]; //load neuron tree ntTreeList=callback.getHandleNeuronTrees_Any3DViewer(v3dwin); for(int i=0; i<ntTreeList->size(); i++){ NeuronTree* p = (NeuronTree*)&(ntTreeList->at(i)); int k=i%8; p->color.r=R_table[k]; p->color.g=G_table[k]; p->color.b=B_table[k]; p->color.a=255; } qDebug("Done Setting Color"); callback.update_3DViewer(v3dwin); }
void border_tips::dosearch(V3DPluginCallback2 &callback, QWidget *parent) { //select the window to operate QList <V3dR_MainWindow *> allWindowList = callback.getListAll3DViewers(); QList <V3dR_MainWindow *> selectWindowList; V3dR_MainWindow * v3dwin; QList<NeuronTree> * ntTreeList; int winid; qDebug("search for 3D windows"); for (V3DLONG i=0;i<allWindowList.size();i++) { ntTreeList = callback.getHandleNeuronTrees_Any3DViewer(allWindowList[i]); if(ntTreeList->size()>0) selectWindowList.append(allWindowList[i]); } qDebug("match and select 3D windows"); if(selectWindowList.size()<1){ v3d_msg("Cannot find 3D view with SWC file. Please load the SWC file you want to identify border tips on."); return; }else if(selectWindowList.size()>1){ //pop up a window to select QStringList items; for(int i=0; i<selectWindowList.size(); i++){ items.append(callback.getImageName(selectWindowList[i])); } bool ok; QString selectitem = QInputDialog::getItem(parent, QString::fromUtf8("Neuron Stitcher"), QString::fromUtf8("Select A Window to Operate"), items, 0, false, &ok); if(!ok) return; for(int i=0; i<selectWindowList.size(); i++){ if(selectitem==callback.getImageName(selectWindowList[i])) { winid=i; break; } } }else{ winid=0; } v3dwin = selectWindowList[winid]; neuron_tipspicker_dialog * myDialog = NULL; myDialog = new neuron_tipspicker_dialog(&callback, v3dwin); myDialog->show(); }
void neuron_render_ESWC_features::docolor(V3DPluginCallback2 &callback, QWidget *parent) { //select the window to operate QList <V3dR_MainWindow *> allWindowList = callback.getListAll3DViewers(); QList <V3dR_MainWindow *> selectWindowList; V3dR_MainWindow * v3dwin; QList<NeuronTree> * ntTreeList; int winid; qDebug("search for 3D windows"); for (V3DLONG i=0;i<allWindowList.size();i++) { ntTreeList = callback.getHandleNeuronTrees_Any3DViewer(allWindowList[i]); if(ntTreeList->size()>0){ qDebug()<<"cojoc:"; for(V3DLONG j=0; j<ntTreeList->size(); j++){ if(ntTreeList->at(j).listNeuron.at(0).fea_val.size()>0){ selectWindowList.append(allWindowList[i]); break; } } qDebug()<<"cojoc:"; qDebug()<<ntTreeList->at(0).listNeuron.at(0).fea_val.size(); } } qDebug("match and select 3D windows"); if(selectWindowList.size()<1){ v3d_msg("Cannot find 3D view with eligible ESWC file. Please load the ESWC files with features you want to display 3D view"); return; }else if(selectWindowList.size()>1){ //pop up a window to select QStringList items; for(int i=0; i<selectWindowList.size(); i++){ items.append(callback.getImageName(selectWindowList[i])); } bool ok; QString selectitem = QInputDialog::getItem(parent, QString::fromUtf8("Color Render ESWC"), QString::fromUtf8("Select A Window to Operate"), items, 0, false, &ok); if(!ok) return; for(int i=0; i<selectWindowList.size(); i++){ if(selectitem==callback.getImageName(selectWindowList[i])) { winid=i; break; } } }else{ winid=0; } v3dwin = selectWindowList[winid]; V3DLONG nid=0; ntTreeList = callback.getHandleNeuronTrees_Any3DViewer(v3dwin); QList<V3DLONG> selectNeuronList; for(V3DLONG j=0; j<ntTreeList->size(); j++){ if(ntTreeList->at(j).listNeuron.at(0).fea_val.size()>0){ selectNeuronList.append(j); } } if(selectNeuronList.size()>1){ //pop up a window to select QStringList items; for(int i=0; i<selectNeuronList.size(); i++){ items.append(QString::number(i+1)+": "+ntTreeList->at(selectNeuronList.at(i)).file); } bool ok; QString selectitem = QInputDialog::getItem(parent, QString::fromUtf8("Color Render ESWC"), QString::fromUtf8("Select A Neuron to Color"), items, 0, false, &ok); if(!ok) return; for(int i=0; i<selectNeuronList.size(); i++){ if(selectitem==items.at(i)) { nid==selectNeuronList.at(i); break; } } }else{ nid=selectNeuronList.at(0); } color_render_ESWC_dialog * myDialog = NULL; myDialog = new color_render_ESWC_dialog(&callback, v3dwin, nid); myDialog->show(); }