정말 같은 질문이 없습니다 더 나은 상황에 넣어 수 있습니다 (그것은 내가 생각해야하는 일), 그렇게하지 정말 해결책. 그러나 나는 일어나고있는 일과 혼란이 어디에 있는지 강조 할 것입니다. 이것은 rotate = "auto"이고 rect의 x, y는 경로를 따라 움직이는 것처럼 결합 된 변환으로 간주되기 때문입니다. x, y를 0,0으로 변경하면 강조 표시됩니다.
좀 더 명확하게하려고 x, y 값이 다른 몇 개의 rect를 결합했습니다. 회전과 결합 된 변환이있을 때와 같은 효과입니다.
녹색이 어떻게 반전되는지를 보게 될 것입니다. 회전이 일어날 때 더 멀리 떨어지게됩니다.
http://jsfiddle.net/fcz69/4/은 일어나는 일을 강조하는 빠른 예입니다.
animationMotion 요소 설명은 여기에서 찾을 수 있습니다. http://www.w3.org/TR/SVG/animate.html#RotateAttribute '회전'비트를 읽을 가치가 있지만 행렬에 익숙하지 않은 경우 머리를들이는 데 시간이 걸릴 수 있습니다.
<svg width="600" height="600">
<path d="M200,200
a-50,-50 0 0,0 0,-30
a-50,-50 0 0,1 0,-30" fill="none" stroke="black"/>
<rect x="0" y="0" width="200" height="200"
style="stroke: none; fill: #FFCC33;">
<animateMotion
path="M200,200
a-50,-50 0 0,0 0,-30
a-50,-50 0 0,1 0,-30"
begin="0s" dur="3s" repeatCount="indefinite"
rotate="auto"
/>
</rect>
<rect x="-100" y="100" width="200" height="200"
style="stroke: none; fill: #FF0000;">
<animateMotion
path="M200,200
a-50,-50 0 0,0 0,-30
a-50,-50 0 0,1 0,-30"
begin="0s" dur="3s" repeatCount="indefinite"
rotate="auto"
/>
</rect>
<rect x="-200" y="200" width="200" height="200"
style="stroke: none; fill: #00FF00;">
<animateMotion
path="M200,200
a-50,-50 0 0,0 0,-30
a-50,-50 0 0,1 0,-30"
begin="0s" dur="3s" repeatCount="indefinite"
rotate="auto"
/>
</rect>
</svg>
그것은 지금 분명, 감사 :이 스케치를 참조하십시오! :) 모양을 오프셋하는 방법이있어 경로를 따라 실행되는 중간 부분입니까? –
여기에있는 회색 직사각형은 어떨까요 ... http://jsfiddle.net/fcz69/3/ – Ian
thats it! 정말 고맙습니다! :) –