|  | @@ -36,6 +36,7 @@ export class VtkModel {
 | 
	
		
			
				|  |  |      this.isSelectPipe = false;
 | 
	
		
			
				|  |  |      //管道节点选择对象
 | 
	
		
			
				|  |  |      this.selectObj = null;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      //结果选择的点数据
 | 
	
		
			
				|  |  |      this.selectJgPointId=0;
 | 
	
		
			
				|  |  |      this.validNodes = [];//节点数据
 | 
	
	
		
			
				|  | @@ -71,7 +72,9 @@ export class VtkModel {
 | 
	
		
			
				|  |  |      this.apiSpecificRenderWindow = this.interactor.getView();
 | 
	
		
			
				|  |  |      this.hardwareSelector = this.apiSpecificRenderWindow.getSelector();
 | 
	
		
			
				|  |  |      this.hardwareSelector.setCaptureZValues(true);
 | 
	
		
			
				|  |  | -    this.hardwareSelector.setFieldAssociation(FieldAssociations.FIELD_ASSOCIATION_POINTS);
 | 
	
		
			
				|  |  | +    // this.hardwareSelector.setFieldAssociation(FieldAssociations.FIELD_ASSOCIATION_POINTS);
 | 
	
		
			
				|  |  | +    this.hardwareSelector.setFieldAssociation(FieldAssociations.FIELD_ASSOCIATION_CELLS);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      document.addEventListener("mousemove", throttleMouseHandler);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      //结果数据
 | 
	
	
		
			
				|  | @@ -264,6 +267,43 @@ export class VtkModel {
 | 
	
		
			
				|  |  |      this.modelShow();
 | 
	
		
			
				|  |  |      this.isJg = false; //不显示结果
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | +  //选中指定点
 | 
	
		
			
				|  |  | +  selectByNodeId(nid){
 | 
	
		
			
				|  |  | +    console.log("selectByNodeId",nid);
 | 
	
		
			
				|  |  | +    if(this.isSelectNode){
 | 
	
		
			
				|  |  | +      if (this.lastActor != null) {
 | 
	
		
			
				|  |  | +        this.lastActor.getProperty().setColor(WHITE);
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      this.nodeActors.forEach(nodeActor=>{
 | 
	
		
			
				|  |  | +        if(nid==nodeActor.node.id){
 | 
	
		
			
				|  |  | +          nodeActor.actor.getProperty().setColor(GREEN);
 | 
	
		
			
				|  |  | +         
 | 
	
		
			
				|  |  | +          this.renderWindow.render();
 | 
	
		
			
				|  |  | +          this.lastActor=nodeActor.actor;
 | 
	
		
			
				|  |  | +          this.selectObj=nodeActor.node;
 | 
	
		
			
				|  |  | +          return;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  //选中指定管道
 | 
	
		
			
				|  |  | +  selectByPipeId(pid){
 | 
	
		
			
				|  |  | +    console.log("selectByPipeId",pid);
 | 
	
		
			
				|  |  | +    if(this.isSelectPipe){
 | 
	
		
			
				|  |  | +      if (this.lastActor != null) {
 | 
	
		
			
				|  |  | +        this.lastActor.getProperty().setColor(WHITE);
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      this.pipeActors.forEach(pipeActor=>{
 | 
	
		
			
				|  |  | +        if(pid==pipeActor.pipe.id){
 | 
	
		
			
				|  |  | +          pipeActor.actor.getProperty().setColor(GREEN);
 | 
	
		
			
				|  |  | +          this.renderWindow.render();
 | 
	
		
			
				|  |  | +          this.lastActor=pipeActor.actor;
 | 
	
		
			
				|  |  | +          this.selectObj=pipeActor.node;
 | 
	
		
			
				|  |  | +          return;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      });
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  function pickOnMouseEvent(event) {
 | 
	
	
		
			
				|  | @@ -335,10 +375,15 @@ function processSelections(selections) {
 | 
	
		
			
				|  |  |    });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    if (vtkmodel.isJg) {//结果数据选择cell
 | 
	
		
			
				|  |  | -    //选择Cell
 | 
	
		
			
				|  |  | +    if( vtkmodel.hardwareSelector.getFieldAssociation() ===
 | 
	
		
			
				|  |  | +       FieldAssociations.FIELD_ASSOCIATION_POINTS){//选择点
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    }else{
 | 
	
		
			
				|  |  | +       //选择Cell
 | 
	
		
			
				|  |  |      const input = prop.getMapper().getInputData();
 | 
	
		
			
				|  |  |      if (!input.getCells()) {
 | 
	
		
			
				|  |  |        input.buildCells();
 | 
	
		
			
				|  |  | +      // return;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |      const cellPoints = input.getCellPoints(attributeID);
 | 
	
		
			
				|  |  |      if (cellPoints) {
 | 
	
	
		
			
				|  | @@ -347,15 +392,20 @@ function processSelections(selections) {
 | 
	
		
			
				|  |  |        const points = Array.from(pointIds).map((pointId) =>
 | 
	
		
			
				|  |  |          input.getPoints().getPoint(pointId)
 | 
	
		
			
				|  |  |        );
 | 
	
		
			
				|  |  | -      // const scalarDataArray=input.getPointData().getScalars().getData();
 | 
	
		
			
				|  |  | +      const scalarDataArray=input.getPointData().getScalars().getData();
 | 
	
		
			
				|  |  | +      console.log(scalarDataArray[pointIds[0]]);//节点标量数据
 | 
	
		
			
				|  |  |        // pointIds.forEach(pointId=>{
 | 
	
		
			
				|  |  |        //   console.log(input.getPointData().getScalars().getName());
 | 
	
		
			
				|  |  |        //   console.log(scalarDataArray[pointId]);//节点标量数据
 | 
	
		
			
				|  |  |        // });
 | 
	
		
			
				|  |  |        vtkmodel.selectJgPointId =pointIds[0];
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +   
 | 
	
		
			
				|  |  | +  }else{
 | 
	
		
			
				|  |  | +    vtkmodel.renderWindow.render();
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | -  vtkmodel.renderWindow.render();
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |   
 | 
	
		
			
				|  |  |  }
 |