2014-03-24 2 views
0

erase.js에서 줄을 이동하려고합니다.이 문제로 일부 스레드를 읽었지만 아무 것도 작동하지 않습니다. 문제는 레이블 위치 같은 일부 속성을 조작 할 수 있지만 줄 위치는 조작 할 수 없다는 것입니다. 그냥 지금 내 라인의 생성은 다음과 같습니다Create.js를 사용하여 개체 이동

myShapes[2].label.y = 200; 
myShapes[2].label.x = 300; 
stage.addChild(myShapes[2].__dragger); 
stage.update(); 

이 위치는 업데이트됩니다,하지만 난으로 시도하는 경우 :

var result = {}; 
       //Generation of the line 
       result.line = new createjs.Shape(); 
       result.line.graphics.setStrokeStyle(3); 
       result.line.graphics.beginStroke("#000"); 
       result.line.graphics.moveTo(o[0].__dragger.x + 24 , o[0].__dragger.y); 
       result.line.graphics.lineTo(o[1].__dragger.x - 24, o[1].__dragger.y); 
       result.line.graphics.endStroke(); 
       //result.line.shadow = new createjs.Shadow("#000000", 5, 5, 10); 



       //Add the neighbours 
       result.neighbours = o; 

       //Add the label 
       result.label = new createjs.Text("line", "", "#000"); 
       result.label.textAlign = "center"; 
       result.label.y = 80; 
       result.label.x = 200; 

       //Add the dragger and extra properties 
       result.type = "connector"; 
       result.__dragger = new createjs.Container(); 
       if(id == "") 
        result.__dragger.id = "L" + guid(); 

       result.__dragger.addChild(result.line, result.label); 
       stage.addChild(result.__dragger, result.line); 

       result.__dragger.on("click",function(evt) { 
        Shape.create("square", [], "Assignament"); 
       }); 

       stage.addChild(result.__dragger); 
       stage.update(); 
myShapes.push(result); 

내가 실행하면

myShapes[2].line.graphics.moveTo(300,4000) 
stage.addChild(myShapes[2].__dragger); 
stage.update(); 

목적은 아니다 업데이트되었습니다. 어떤 생각 ?? 나는 확실하지 않다

+0

무엇을 하려는지 명확히 할 수 있습니까? 예제를 단순화하여 jsfiddle.net에서 실행할 수 있습니까? – Lanny

답변

1

나는 당신이 무엇을하고 있는지 이해하지만, 여기에 생각입니다 :

당신은 graphics.moveTo를 사용하여 선을 이동할 수 없습니다 - 그 이후의 경로 지침 드로잉 API를 배치하는 명령입니다. line.graphics.lineTo(300,4000) 인 경우 마지막 그래픽 명령에서 그 좌표 (Shape의 좌표계 내)까지 선을 그립니다.

당신이 더 많은 정보를 게시 할 경우에, 나는 시도하고 더 도와 드릴 수 있습니다 (이 경우 myShapes[2].line에) 모양 인스턴스의 x와 y 위치를 설정해야 Shape를 이동합니다.

+0

감사합니다. 나를 위해 일한다. – MrMins